- Find your Windows product key
- Locate your product key for Windows 10
- Locate your product key for Windows 7 or Windows 8.1
- Related links
- Windows Version Numbers
- Operating System Version
- Package version numbering
- Version numbering for WindowsВ 10 packages
- Example: Moving to a single package over multiple submissions
Find your Windows product key
A Windows product key is a 25-character code used to activate Windows. It looks like this:
PRODUCT KEY: XXXXX-XXXXX-XXXXX-XXXXX-XXXXX
Locate your product key for Windows 10
Depending on how you got your copy of Windows 10, you’ll need either a 25-character product key or a digital license to activate it. A digital license (called a digital entitlement in Windows 10, Version 1511) is a method of activation in Windows 10 that doesn’t require you to enter a product key. Without one of these, you won’t be able to activate your device.
Where to find your product key depends on how you got your copy of Windows.
Select any of the following to see more information:
The product key is preinstalled on your PC, included with the packaging the PC came in, or included on the Certificate of Authenticity (COA) attached to the PC. For more info, contact your hardware manufacturer, and for pictures of authentic product keys and COA labels, see How to tell your hardware is genuine.
The product key is on a label or card inside the box that Windows came in. For more info, contact the retailer that sold you Windows 10. How to tell your software is genuine.
Find your product key in the confirmation email you received after buying Windows 10 or in a digital locker accessible through the retailer’s website.
The product key is in the confirmation email you received after buying your digital copy of Windows. Microsoft only keeps a record of product keys if you purchased from the Microsoft online store. You can find out if you purchased from Microsoft in your Microsoft account Order history.
If you upgraded to Windows 10 for free from Windows 7 or Windows 8.1, you should have a digital license instead of a product key.
If you bought Windows 10 Home, Professional, or Upgrade to Pro in the Windows 10 Store app, you’ll receive a digital license instead of a product key. You can use the digital license for activation.
If your product key is scratched, blurred, or otherwise unusable, contact the retailer who sold you the product. If you aren’t able to get help from your retailer or have already tried and couldn’t get a working key, call Microsoft Support.
For more information about digital licenses and product keys in Windows 10, see the “Methods of Activation” section in Activate Windows 10.
Locate your product key for Windows 7 or Windows 8.1
A product key is usually required when uninstalling or reinstalling Windows 7 or Windows 8.1. Generally, if you bought a physical copy of Windows, the product key should be on a label or card inside the box that Windows came in. If Windows came preinstalled on your PC, the product key should appear on a sticker on your device. If you’ve lost or can’t find the product key, contact the manufacturer. To ensure your product key is genuine, see How to tell your software is genuine and How to tell your hardware is genuine.
Related links
For info about how to tell if your copy of Windows is genuine Microsoft software, see the How to tell page.
For more Windows 10 download info, see Download Windows 10.
If you need installation media to install or reinstall Windows, see Create installation media for Windows to learn how to create your own installation media using either a USB flash drive or a DVD.
If you need more help with activation, see Activate Windows 10.
If you’re getting an activation error, see Get help with Windows activation errors.
If you’re reinstalling Windows 10, you might not need a Windows product key. See Activation in Windows 10 for more info.
If you’re reinstalling Windows 10 due to a motherboard problem or some other hardware issue, see Reactivating Windows 10 after a hardware change.
If you’re looking for product keys for Office, apps, games, and more, see Find your Microsoft downloads and product keys
Windows Version Numbers
Did you like my page, one of my freeware applications or online tools?
Donate via PayPal and support the publishing of this free content with any amount you want quickly and easily.
Allow for the domain Gaijin.at the display of advertising in your ad-blocker and help in this way to preserve this page!
Name / Description | Version | Build Number | Public Release | RTM Release |
---|---|---|---|---|
Windows NT 3.1 | 3.10 | 511 | 1993-07-27 | |
Windows NT 3.5 | 3.50 | 807 | 1994-09-21 | |
Windows NT 3.1, Service Pack 3 | 3.10 | 528 | 1994-11 | |
Windows NT 3.51 | 3.51 | 1057 | 1995-05-30 | |
Windows 95 | 4.00 | 950 | 1995-08-24 | |
Windows 95 OEM Service Release 1 | 4.00 | 950 A | 1996-02-14 | |
Windows 95 OEM Service Release 2 | 4.00 | 950 B | 1996-08-24 | |
Windows NT 4.0 | 4.0 | 1381 | 1996-08-24 | 1996-07-31 |
Windows 95 OEM Service Release 2.1 | 4.00 | 950 B | 1997-08-27 | |
Windows 95 OEM Service Release 2.5 | 4.00 | 950 C | 1997-11-26 | |
Windows 98 | 4.10 | 1998 | 1998-05-15 | |
Windows 98 Second Edition (SE) | 4.10 | 2222 | 1999-05-05 | |
Windows 2000 | 5.0 | 2195 | 2000-02-17 | 1999-12-15 |
Windows Me | 4.90 | 3000 | 2000-09-14 | 2000-06-19 |
Windows XP | 5.1 | 2600 | 2001-10-25 | 2001-08-24 |
Windows XP, Service Pack 1 | 5.1 | 2600.1105-1106 | 2002-09-09 | |
Windows Server 2003 | 5.2 | 3790 | 2003-04-24 | |
Windows XP, Service Pack 2 | 5.1 | 2600.2180 | 2004-08-25 | |
Windows Server 2003, Service Pack 1 | 5.2 | 3790.1180 | 2005-03-30 | |
Windows Server 2003 R2 | 5.2 | 3790 | 2005-12-06 | 2005-12-06 |
Windows Vista | 6.0 | 6000 | 2007-01-30 | 2006-11-08 |
Windows Server 2003, Service Pack 2 | 5.2 | 3790 | 2007-03-13 | |
Windows Home Server | 5.2 | 4500 | 2007-11-04 | 2007-07-16 |
Windows Vista, Service Pack 1 | 6.0 | 6001 | 2008-02-04 | |
Windows Server 2008 | 6.0 | 6001 | 2008-02-27 | 2008-02-04 |
Windows XP, Service Pack 3 | 5.1 | 2600 | 2008-04-21 | |
Windows Vista, Service Pack 2 | 6.0 | 6002 | 2009-05-26 | 2009-04-28 |
Windows Server 2008, Service Pack 2 | 6.0 | 6002 | 2009-05-26 | |
Windows 7 | 6.1 | 7600 | 2009-10-22 | 2009-07-22 |
Windows Server 2008 R2 | 6.1 | 7600 | 2009-10-22 | 2009-07-22 |
Windows 7, Service Pack 1 | 6.1 | 7601 | 2011-02-22 | |
Windows Server 2008 R2, Service Pack 1 | 6.1 | 7601 | 2011-02-22 | 2011-02-09 |
Windows Home Server 2011 | 6.1 | 8400 | 2011-04-06 | 2011-04-06 |
Windows Server 2012 | 6.2 | 9200 | 2012-09-04 | 2012-08-01 |
Windows 8 | 6.2 | 9200 | 2012-10-26 | 2012-08-01 |
Windows 8.1 | 6.3 | 9600 | 2013-08-27 | 2013-10-17 |
Windows Server 2012 R2 | 6.3 | 9600 | 2013-10-18 | 2013-08-27 |
Windows 10, Version 1507 | 10.0 | 10240 | 2015-07-29 | 2015-07-15 |
Windows 10, Version 1511 | 10.0 | 10586 | 2015-11-10 | |
Windows 10, Version 1607 | 10.0 | 14393 | 2016-08-02 | |
Windows Server 2016, Version 1607 | 10.0 | 14393 | 2016-08-02 | |
Windows 10, Version 1703 | 10.0 | 15063 | 2017-04-05 | |
Windows 10, Version 1709 | 10.0 | 16299 | 2017-10-17 | |
Windows Server 2016, Version 1709 | 10.0 | 16299 | 2017-10-17 | |
Windows 10, Version 1803 | 10.0 | 17134 | 2018-04-30 | |
Windows Server 2019, Version 1809 | 10.0 | 17763 | 2018-10-02 | |
Windows 10, Version 1809 | 10.0 | 17763 | 2018-11-13 | |
Windows Server 2008, Service Pack 2, Rollup KB4489887 | 6.0 | 6003 | 2019-03-19 | |
Windows 10, Version 1903 | 10.0 | 18362 | 2019-05-21 | |
Windows 10, Version 1909 | 10.0 | 18363 | 2019-11-12 | |
Windows 10, Version 2004 | 10.0 | 19041 | 2020-05-27 | |
Windows 10, Version 20H2 | 10.0 | 19042 | 2020-10-20 |
Did you like my page, one of my freeware applications or online tools?
Donate via PayPal and support the publishing of this free content with any amount you want quickly and easily.
Operating System Version
The Version API Helper functions are used to determine the version of the operating system that is currently running. For more information, see Getting the System Version.
The following table summarizes the most recent operating system version numbers.
Operating system | Version number |
---|---|
Windows 10 | 10.0* |
Windows Server 2019 | 10.0* |
Windows Server 2016 | 10.0* |
Windows 8.1 | 6.3* |
Windows Server 2012 R2 | 6.3* |
Windows 8 | 6.2 |
Windows Server 2012 | 6.2 |
Windows 7 | 6.1 |
Windows Server 2008 R2 | 6.1 |
Windows Server 2008 | 6.0 |
Windows Vista | 6.0 |
Windows Server 2003 R2 | 5.2 |
Windows Server 2003 | 5.2 |
Windows XP 64-Bit Edition | 5.2 |
Windows XP | 5.1 |
Windows 2000 | 5.0 |
* For applications that have been manifested for Windows 8.1 or Windows 10. Applications not manifested for Windows 8.1 or Windows 10 will return the Windows 8 OS version value (6.2). To manifest your applications for Windows 8.1 or Windows 10, refer to Targeting your application for Windows.
Identifying the current operating system is usually not the best way to determine whether a particular operating system feature is present. This is because the operating system may have had new features added in a redistributable DLL. Rather than using the Version API Helper functions to determine the operating system platform or version number, test for the presence of the feature itself.
To determine the best way to test for a feature, refer to the documentation for the feature of interest. The following list discusses some common techniques for feature detection:
- You can test for the presence of the functions associated with a feature. To test for the presence of a function in a system DLL, call the LoadLibrary function to load the DLL. Then call the GetProcAddress function to determine whether the function of interest is present in the DLL. Use the pointer returned by GetProcAddress to call the function. Note that even if the function is present, it may be a stub that just returns an error code such as ERROR_CALL_NOT_IMPLEMENTED.
- You can determine the presence of some features by using the GetSystemMetrics function. For example, you can detect multiple display monitors by calling GetSystemMetrics(SM_CMONITORS).
- There are several versions of the redistributable DLLs that implement shell and common control features. For information about determining which versions are present on the system your application is running on, see the topic Shell and Common Controls Versions.
If you must require a particular operating system, be sure to use it as a minimum supported version, rather than design the test for the one operating system. This way, your detection code will continue to work on future versions of Windows.
Note that a 32-bit application can detect whether it is running under WOW64 by calling the IsWow64Process function. It can obtain additional processor information by calling the GetNativeSystemInfo function.
Package version numbering
Each package you provide must have a version number (provided as a value in the Version attribute of the Package/Identity element in the app manifest). The Microsoft Store enforces certain rules related to version numbers, which work somewhat differently in different OS versions.
This topic refers to «packages», but unless noted, the same rules apply to version numbers for both .msix/.appx and .msixbundle/.appxbundle files.
Version numbering for WindowsВ 10 packages
For Windows 10 (UWP) packages, the last (fourth) section of the version number is reserved for Store use and must be left as 0 when you build your package (although the Store may change the value in this section). The other sections must be set to an integer between 0 and 65535 (except for the first section, which cannot be 0).
When choosing a UWP package from your published submission, the Microsoft Store will always use the highest-versioned package that is applicable to the customer’s Windows 10 device. This gives you greater flexibility and puts you in control over which packages will be provided to customers on specific device types. Importantly, you can submit these packages in any order; you are not limited to providing higher-versioned packages with each subsequent submission.
You can provide multiple UWP packages with the same version number. However, packages that share a version number cannot also have the same architecture, because the full identity that the Store uses for each of your packages must be unique. For more info, see Identity.
When you provide multiple UWP packages that use the same version number, the architecture (in the order x64, x86, ARM, neutral) will be used to decide which one is of higher rank (when the Store determines which package to provide to a customer’s device). When ranking app bundles that use the same version number, the highest architecture rank within the bundle is considered: an app bundle that contains an x64 package will have a higher rank than one that only contains an x86 package.
This gives you a lot of flexibility to evolve your app over time. You can upload and submit new packages that use lower version numbers to add support for Windows 10 devices that you did not previously support, you can add higher-versioned packages that have stricter dependencies to take advantage of hardware or OS features, or you can add higher-versioned packages that serve as updates to some or all of your existing customer base.
The following example illustrates how version numbering can be managed to deliver the intended packages to your customers over multiple submissions.
Example: Moving to a single package over multiple submissions
WindowsВ 10 enables you to write a single codebase that runs everywhere. This makes starting a new cross-platform project much easier. However, for a number of reasons, you might not want to merge existing codebases to create a single project right away.
You can use the package versioning rules to gradually move your customers to a single package for the Universal device family, while shipping a number of interim updates for specific device families (including ones that take advantage of WindowsВ 10 APIs). The example below illustrates how the same rules are consistently applied over a series of submissions for the same app.