Fix it now
Microsoft publishes 0xC004F069 as SL_E_MISMATCHED_PRODUCT_SKU, “The product SKU is not found.” The key you have names an edition this installation has no description for, so there is nothing for it to attach to. Find out what the installation can become before you try another key.
slmgr /dli
DISM /Online /Get-TargetEditions
slmgr /rilc
- Read the
slmgr /dlidescription and compare it withwinver. That tells you what edition is installed and what channel it is licensed on. - Read the target editions list. If the edition you want is not in it, the image does not carry it and no key will make it appear.
slmgr /rilcreinstalls the licence files from the known-good copies at%SystemRoot%\system32\oemand%SystemRoot%\System32\spp\tokens. Restart the licensing service withnet stop sppsvcthennet start sppsvcafterwards, and re-run the target editions check.- On Windows client, apply the step-up as a product key: Settings, System, Activation, Change product key, or
slmgr /ipk <key>followed byslmgr /ato. - On Windows Server, the documented online route is
DISM /Online /Set-Edition:<edition> /AcceptEula /ProductKey:<key>.
Install the intended key over the top with slmgr /ipk rather than removing the old one first. Microsoft’s own licensing repair guidance says not to use /upk, and /ipk replaces an existing key anyway.
If that fixed it you can stop here. If not, the next section explains what decides which editions an installation can become, and which of the six codes here are actually published.
Why it happens
Windows does not work out what edition it is from the key. Every edition the installation is capable of being is described by a licence file in the licensing store, and the key selects among the descriptions that are present. A step-up matches the key to the target edition’s description and applies it over the base. 0xC004F069 is that match failing because the description is not there, which is exactly what Microsoft’s published text says: the product SKU is not found.
That is the only code in this record Microsoft publishes. The other five – 0xC004F055, 0xC004E01A, 0xC004E026, 0xC004E02A and 0xC004E02D – have no meaning on learn.microsoft.com or support.microsoft.com, and the descriptions attached to them in earlier versions of this article were guesses that happened to fit the story. They are kept here because you may see them, but treat them as identifiers to quote in a support case rather than as diagnoses. Your machine will print Microsoft’s own text for any of them if you run slui.exe 0x2a followed by the code.
There are three ordinary ways to arrive at a missing SKU description. An in-place upgrade or an interrupted feature update can leave the store half rewritten. A trimmed or repackaged image may have had edition licence files stripped during customisation. And media that simply does not carry the target edition – a single-edition OEM image, or an LTSC build – will never list it as a target however healthy the store is.
One correction worth having before you start typing commands. DISM /Online /Set-Edition is documented as the way to change an online Windows Server operating system to a higher edition, using /AcceptEula and /ProductKey. It is not the documented route for a Windows client step-up. On a Windows client the supported move is a product key or a subscription entitlement, and reaching for DISM there is how people end up with a machine in a state nobody planned for.
The licence store is missing or stale edition descriptions
You have this one if DISM /Online /Get-TargetEditions returns a short list, or fails, on a machine that should be able to make the change.
- Run
slmgr /rilcto reinstall the system licence files from the known-good copies. - Restart the licensing service:
net stop sppsvcthennet start sppsvc. - Repair the component store with
DISM /Online /Cleanup-Image /RestoreHealth, then runsfc /scannow. - Reboot, re-run
DISM /Online /Get-TargetEditions, and try the step-up again.
The installed image does not contain the target edition
You have this one if The target editions list is exactly what you would expect for the media you used, and simply does not include the edition you want.
- Establish what the media actually was. Single-edition OEM images and specialised builds cannot become arbitrary editions.
- Where the edition is not present, the supported route is a clean installation from media that carries it.
- For a managed estate, build the reference image from media covering the editions you intend to deploy.
- Back up user data and application settings first, because this route is not in-place.
You are running a Windows Server command on a Windows client
You have this one if A Pro machine, and a DISM /Online /Set-Edition command copied from a Windows Server procedure.
- Use
DISM /Online /Get-TargetEditionsas a read-only check. It is safe on either. - For a client step-up, apply the key: Settings, System, Activation, Change product key, or
slmgr /ipk <key>thenslmgr /ato. - Where the step-up is meant to come from a subscription rather than a key, do not type a key at all. Assign the seat and let the device pick it up.
Microsoft documents the online form of /Set-Edition as the route for changing a Windows Server operating system to a higher edition. Nothing on that page offers it as a Windows client procedure.
The base edition has no path to the target
You have this one if You are attempting to reach Enterprise from Home, or from an edition outside the documented upgrade routes.
- Check the current edition with
winverand the licence description withslmgr /dli. - Move to an eligible base edition first. For subscription activation the documented paths are Windows Pro to Windows Enterprise and Windows Pro Education to Windows Education.
- Confirm the base reads as Licensed in
slmgr /dlvbefore layering anything on top. - Then apply the entitlement, whether by key or by subscription.
The store is inconsistent after repeated key changes
You have this one if A machine that has been through several keys or edition changes and now reports SKU errors for editions it obviously has.
- Install the intended key over the top with
slmgr /ipk <key>rather than uninstalling the current one. - Reinstall the licence files with
slmgr /rilcand reboot. - If the store is still inconsistent, use Microsoft’s documented tokens.dat rebuild before considering a reinstall.
- Activate with
slmgr /atoand confirm withslmgr /dlv.
slmgr /cpky is a separate thing from /upk. It removes the key from the registry so it cannot be read back out, which is a deployment hygiene step for retail keys, not a repair.
Full reference
Which of these codes are actually published
| Code | Status | What to do with it |
|---|---|---|
0xC004F069 |
Published by Microsoft as SL_E_MISMATCHED_PRODUCT_SKU, “The product SKU is not found” | Treat as the diagnosis: the edition description is missing |
0xC004F055 |
No published meaning found | Quote it in a support case; read the machine’s own text with slui.exe 0x2a 0xC004F055 |
0xC004E01A |
No published meaning found | As above |
0xC004E026 |
No published meaning found | As above |
0xC004E02A |
No published meaning found | As above |
0xC004E02D |
No published meaning found | As above |
The commands that matter, and what they really do
| Command | Documented behaviour |
|---|---|
slmgr /dli |
Displays licence information for the installed active edition. Does not need elevation |
slmgr /dlv |
Displays detailed licence information, including the channel and status |
slmgr /rilc |
Reinstalls all licences stored in %SystemRoot%\system32\oem and %SystemRoot%\System32\spp\tokens, replacing matching licences in the trusted store |
slmgr /ipk <key> |
Validates the key against the installed OS and, if valid, replaces any existing key |
slmgr /cpky |
Removes the product key from the registry so it cannot be read back. Not needed for MAK or KMS host keys |
DISM /Online /Get-TargetEditions |
Lists the Windows editions the image can be changed to |
DISM /Online /Set-Edition:<id> /AcceptEula /ProductKey:<key> |
Documented as the route for changing an online Windows Server operating system to a higher edition |
Edition change is one-way. Microsoft’s documentation states that you cannot set a Windows image to a lower edition, and that the lowest edition does not appear in the /Get-TargetEditions output. It also advises against using /Set-Edition on an image that has already been changed to a higher edition. Decide before you run it, take a full backup on anything you cannot afford to rebuild, and be certain you hold the entitlement for the target.
Reading the target editions list properly
- Run
DISM /Online /Get-TargetEditionsfrom an elevated prompt. - An empty or unexpectedly short list on a general-purpose image points at the licence store, so run
slmgr /rilcand repair the component store before concluding anything. - A list that matches the media you used, and simply lacks your target, points at the media. No key changes that.
- A list containing your target, with the step-up still failing, points at the key or the entitlement rather than the image.
When the store itself needs rebuilding
Microsoft publishes a tokens.dat rebuild for licensing store damage: stop the Software Protection service, rename tokens.dat under %windir%\system32\spp\store\2.0, start the service, run slmgr /rilc, restart twice, then install the product key with slmgr /ipk. The same page is explicit that you should never use the /upk switch to uninstall a product key, and should install over the existing one instead. That is worth carrying into every licensing repair, not just this one – it is the difference between a machine that keeps working while you fix it and a machine that is unlicensed until you find the key.
If the step-up is meant to come from a subscription
A device that is supposed to reach Enterprise through subscription activation should never have an Enterprise key typed into it. Typing one creates a second licensing state that competes with the entitlement and makes the eventual diagnosis harder. Confirm the user holds an assigned seat, confirm the device is Microsoft Entra joined or hybrid joined, confirm the base edition is Pro, and let the mechanism do its work.
When a licence is the actual fix
If the target edition is missing because you do not hold an entitlement for it, no repair sequence will produce one, and this is the point where a licence is the honest answer rather than an upsell. Windows 11 Enterprise E3 is the usual route: a per-user subscription that steps eligible Pro devices up without a key being typed on the machine at all, which removes this class of error from the deployment process entirely. We supply Enterprise E3 seats, and we will confirm the two things that decide whether you need them – whether your devices are on an eligible base edition, and whether a step-up key or a subscription is the right mechanism for how you actually deploy.
Every code this article covers
| Code | What it points at | Source |
|---|---|---|
0xC004F069 |
SL_E_MISMATCHED_PRODUCT_SKU: the product SKU is not found | Microsoft Learn |
0xC004F055 |
Seen during edition step-up and licence installation. No published meaning; read the machine’s own text with slui.exe 0x2a | not published by the vendor |
0xC004E01A |
Seen alongside the SKU errors above during licence operations. No published meaning | not published by the vendor |
0xC004E026 |
Seen alongside the SKU errors above during licence operations. No published meaning | not published by the vendor |
0xC004E02A |
Seen alongside the SKU errors above during licence operations. No published meaning | not published by the vendor |
0xC004E02D |
Seen alongside the SKU errors above during licence operations. No published meaning | not published by the vendor |
Confirm the fix worked
winvershows the edition you intended.slmgr /dlvreports a licence status of Licensed for that edition, on the channel you expect.DISM /Online /Get-TargetEditionsreflects the new base rather than the old one.- Reboot and confirm both the edition and the activation state survive the restart.
- On a subscription device, Settings, System, Activation reports activation through the subscription rather than through a key.
Questions people ask about this
Will a different key fix this?
Only if the current key names an edition the installation does not carry and the new one names an edition it does. If DISM /Online /Get-TargetEditions does not list your target at all, the problem is the image and a different key fails the same way.
Can I step back down from Enterprise afterwards?
Not with a command. Microsoft’s documentation states that you cannot set a Windows image to a lower edition, and the lowest edition does not even appear in the target editions list. The supported way back is a clean installation.
Should I run DISM /Set-Edition on a Windows 11 Pro machine?
The documented online use of /Set-Edition is changing a Windows Server operating system to a higher edition. For a Windows client, apply the key through Settings, System, Activation, Change product key, or with slmgr /ipk, or let subscription activation do it.
Why does this article not tell me what 0xC004F055 means?
Because Microsoft does not publish a meaning for it, and inventing one would be worse than saying so. Run slui.exe 0x2a 0xC004F055 on the machine to get the text your build actually carries.
Does the base edition need to be activated first?
It is worth having it activated before you step up, because an unactivated base makes every SKU error harder to read. For subscription activation an eligible activated base edition is what the step-up sits on, so it is not optional there.
