How to fix Windows 10 Update error code 0xc1900204?

Prefer to fix it yourself? The manual steps follow.

  • 7methods
  • 15 minutes to 1 hour
  • Intermediate
Start fixing

Applies to Windows 10 22H2 and Windows 11 (24H2, 25H2, 26H2) feature updates and in-place upgrades through Windows Update, the Installation Assistant, setup.exe or a company upgrade task

7 methods in this guide
  1. What the error means
  2. Why it appears
  3. The fixes
  4. 1. Find the mismatch
  5. 2. Use matching media
  6. 3. Fix problems via Update
  7. 4. Insider builds and work PCs
  8. 5. Reset Windows Update
  9. 6. Repair system files
  10. 7. Keep files only
  11. If it is still there
  12. Keep it from coming back
  13. FAQ
Question

Hello. I have tried to update Windows 10, and I came across a problem. After the download of an update had finished, I received an error. Can you help me fix error code 0xc1900204?

Error 0xc1900204 is not a damaged download. Microsoft documents it as a block: Setup cannot keep your files and apps, because the Windows it is installing does not match the Windows you have, for example Enterprise to Home. Compare your edition, language and architecture with the upgrade first.

Short answer

0xc1900204 means Setup cannot do the upgrade you asked for while keeping files and apps, because the target Windows does not match the installed one. Compare edition, language and architecture (Fix 1), then run Setup from media that matches (Fix 2). On Windows 11, Fix problems using Windows Update often gets past it (Fix 3). Update repairs such as SFC rarely help.

At a glance
Error0xC1900204, Microsoft's MOSETUP_E_COMPAT_MIGCHOICE_BLOCK: "The system does not pass the requirements for desired migration choice."
Where it appearsIn Settings > Windows Update as Install error - 0xc1900204 next to a feature update or the Windows 11 upgrade, or in a company tool as Windows Setup failed with hexadecimal exit code 0xC1900204.
Main causeThe upgrade does not match the installed Windows (edition, language, architecture or build), so Setup cannot keep apps and files.
Fastest fixRead your edition, language and system type (Fix 1), then run setup.exe from a Windows ISO that matches them (Fix 2).
Also written as0xc1900204, (0xc1900204), 0x1900204, error 0xC1900204, or 3247440388 when a tool shows the code as a decimal number.
Not the same as0xC1900200 (the PC fails a minimum requirement) and 0xC1900208 (an app or driver blocks the upgrade). 0xC1900205 is the cancelled form of this error.
AffectsWindows 10 22H2 and Windows 11 feature updates, Insider builds and company in-place upgrades. Windows 10 left support on 14 October 2025.
Microsoft's statusDocumented Setup behaviour, not a bug. Microsoft's example of an unavailable choice is Enterprise to Home.
Time to fix15 minutes to find the mismatch, then the length of the upgrade itself.

Facts checked on 15 October 2026. Steps written for Feature updates on Windows 10 22H2 and upgrades to Windows 11 25H2 and 26H2 through Windows Update and setup.exe.

What error 0xc1900204 means on Windows 10 and Windows 11

Before an upgrade, Windows Setup asks what you want to keep: personal files and apps, personal files only, or nothing. Microsoft calls this the migration choice. Its table of Setup codes lists 0xC1900204 as MOSETUP_E_COMPAT_MIGCHOICE_BLOCK: "The migration choice selected isn't available (ex: Enterprise to Home)".

In plain words, the update itself is fine. Setup compared the Windows on your PC with the Windows it was asked to install, found they do not fit together, and refused to carry your apps across. Nothing was changed on your PC.

Infographic decoding error 0xC1900204 as MOSETUP_E_COMPAT_MIGCHOICE_BLOCK, with the neighbour Setup codes 0xC1900205, 0xC1900200, 0xC1900208 and 0xC1900210 explained
0xC1900204 is one of Windows Setup's compatibility codes; each neighbour names a different kind of block.
CodeMicrosoft's nameWhat it means for you
0xC1900204MOSETUP_E_COMPAT_MIGCHOICE_BLOCKThe keep files and apps choice is not possible for this upgrade. This guide.
0xC1900205MOSETUP_E_COMPAT_MIGCHOICE_CANCELThe same check failed and Setup was cancelled. Same fixes.
0xC1900200MOSETUP_E_COMPAT_SYSREQ_BLOCKA minimum requirement such as TPM 2.0 fails. A different guide.
0xC1900208MOSETUP_E_COMPAT_INSTALLREQ_BLOCKAn incompatible app or driver blocks the upgrade.
0xC1900210MOSETUP_E_COMPAT_SCANONLYA scan-only run found no compatibility issue.
Why the usual update repairs fail here

The troubleshooter, SFC and a cache reset repair broken files. 0xc1900204 is a decision Setup makes after comparing two versions of Windows. Until the two match, or you choose to keep less, every attempt gets the same answer.

Why Windows update error 0xc1900204 appears

The ranking below is ours. Microsoft names only the edition example; the other rows are the other things Setup compares. A company task sequence that used the wrong product key is a documented case from an enterprise upgrade write-up.

CauseHow oftenHow to tellFix
The media or update is a different edition than the installed Windows, such as Pro media on Home or a Home key in the firmware on a Pro install.Most oftenSettings > System > About shows one edition; the ISO or task targets another.Fix 1, Fix 2
The ISO is in another language than the installed base language.Often with ISOsdism /online /get-intl shows a different installed language than the ISO name.Fix 1, Fix 2
Windows Update holds a broken copy of the feature update on a Windows 11 PC.SometimesThe error appears only in Windows Update; setup.exe was never tried.Fix 3, Fix 5
The PC runs an Insider or preview build newer than the media.Sometimeswinver shows an Insider build or a build number above the ISO's.Fix 4
A company upgrade task targets the wrong edition, for example through the product key.On managed PCsThe message says Windows Setup failed with hexadecimal exit code 0xC1900204.Fix 4
Damaged system files make Setup read the installed edition wrongly.RarelyDISM or SFC reports errors it fixed.Fix 6
Table infographic comparing the installed Windows with the upgrade media by edition, language, architecture, build and product key, with where to read each value on the PC
Read each value on the PC, then make sure the upgrade you run has the same one.

If you are asking what the reason for this error is in another language, the answer is the same: the Windows being installed does not match the Windows on the PC.

How to fix Windows 10 Update error code 0xc1900204

Fix 1 tells you what does not match, so you only change what you need. Fix 2 and Fix 3 run the upgrade in a way that matches. Fix 4 covers Insider builds and company tools. Fix 5 and Fix 6 are short repairs for the rare cases they help. Fix 7 is the last resort when apps cannot be kept.

What you see or haveStart with
You do not know what differs between your Windows and the upgrade.Fix 1
You ran setup.exe from an ISO and got 0xc1900204.Fix 1, then Fix 2
Windows 11 shows Install error - 0xc1900204 in Windows Update.Fix 3
The PC is in the Windows Insider Program or runs a preview build.Fix 4
A work tool says Windows Setup failed with hexadecimal exit code 0xC1900204.Fix 4
Everything matches and the error stays.Fix 5, then Fix 6
You cannot get matching media at all.Fix 7

Fix 1. Compare your Windows edition, language and architecture with the upgrade

5 minutesNo riskEveryone. It takes five minutes and tells you which media you need.

0xc1900204 only says the migration choice is not available. The cause is a difference between two copies of Windows, so you need the exact values of the installed one before you download or change anything.

  1. Press Win + R, type winver and press Enter. Note the version and the OS Build number.
  2. Open Settings > System > About. Note Edition and System type (64-bit or ARM-based).
  3. Right-click Start, open Terminal (Admin) or Command Prompt (Admin) and run dism /online /get-intl.
  4. Note Default system UI language and the line Installed language(s): the first installed language is the base language.
  5. Compare these values with the ISO file name, the edition you picked in the Media Creation Tool, or the company task.
  6. If you cannot see the problem, open C:\$Windows.~BT\Sources\Panther\setupact.log in Notepad and search for 0xC1900204 and the lines around it that name the edition.

In the log, Setup writes the edition it found and the edition it was asked to install. One enterprise case showed Product EditionID = Professional next to an Enterprise installation, followed by Result = 0xC1900204.

It worked if: You know which value differs: edition, language, architecture or build.

If not: If every value matches the media, go to Fix 3 on Windows 11 or Fix 5 on Windows 10.

Fix 2. Run Setup from a Windows ISO that matches your installation

20 minutes, plus the upgradeLow riskFix 1 showed a different edition or language, or you upgrade with an ISO.

Setup can keep apps only when the media fits the installed Windows. Microsoft's multi-edition ISOs pick the edition from your PC, so a fresh download in the right language usually removes the mismatch.

  1. Open Microsoft's Download Windows 11 page (for Windows 10 22H2, the Download Windows 10 page).
  2. Under the disk image section, pick the multi-edition ISO and select Download Now.
  3. In the language list, choose the exact base language from Fix 1, including the variant such as English (United States) or English International.
  4. Pick the 64-bit download for an x64 PC. An ARM-based PC needs Arm64 media.
  5. Right-click the ISO, select Mount and double-click setup.exe on the new drive.
  6. On Choose what to keep, check that Keep personal files and apps can be selected, then let Setup run.
When Keep personal files and apps is grey

Setup shows the same block on this screen before it shows the code. If the option is grey, the media still does not match: go back to Fix 1 and compare the language and edition again.

It worked if: Setup offers Keep personal files and apps and starts copying files.

If not: If the option is still grey with matching media, try Fix 4 for preview builds, or Fix 7.

Fix 3. Use Fix problems using Windows Update on Windows 11

30 to 60 minutesLow riskWindows 11 shows Install error - 0xc1900204 in Windows Update and you never ran an ISO.

This option downloads a repair copy of your own Windows version and keeps apps, files and settings. Because Windows Update picks the copy for your edition and language, it takes out the mismatch a broken or wrong download can cause.

Settings, System, Recovery: Fix problems using Windows Update, Reinstall now: screenshot taken on Windows 11 26H2
Settings > System > Recovery on Windows 11 with Fix problems using Windows Update, which reinstalls your current version and keeps apps and files.
  1. Open Settings > System > Recovery.
  2. Next to Fix problems using Windows Update, select Reinstall now.
  3. Choose whether the PC may restart on its own, then select OK.
  4. Keep the PC plugged in and online until it restarts.
  5. Open Settings > Windows Update and select Check for updates to try the feature update again.

Windows 10 22H2 does not have this option. On Windows 10, use Fix 2 with the Windows 10 ISO instead. More on this and the other ways to reinstall: Reinstall Windows without losing files.

It worked if: Windows reinstalls the current version, and the feature update then installs without the error.

If not: If Windows Update shows 0xc1900204 again, reset its cache with Fix 5.

Fix 4. Leave preview builds or correct the company upgrade task

15 minutes to set upLow riskThe PC runs an Insider build, or a work tool reports Windows Setup failed with hexadecimal exit code 0xC1900204.

An Insider build can be newer than any public ISO, and Setup does not keep apps when the target is older than the installed build. In company upgrades, a documented case failed because Setup read an OEM Professional key from the firmware instead of the Enterprise key, and aimed at the wrong edition.

  1. Insider PC: open Settings > Windows Update > Windows Insider Program and note the channel.
  2. Wait for the next build in the same channel, which installs over the current one, instead of using a public ISO.
  3. To leave preview builds for good, choose to stop getting builds when the next public release reaches your build, then update normally.
  4. Work PC: give the IT department the code, the installed edition from Fix 1 and the setupact.log file.
  5. For administrators: check that the task sequence passes a product key for the installed edition and the matching image index, so Setup does not fall back to the key in the firmware.

It worked if: The next Insider build installs, or the company task upgrades the PC to the same edition.

If not: If you must go to an older public build now, only a keep files option or a clean install is possible: Fix 7.

Fix 5. Reset Windows Update components so it downloads the update again

10 minutesLow riskFix 1 found no mismatch and the error shows only in Windows Update.

This does not change your edition. It clears the download cache, so Windows Update fetches a fresh copy of the feature update for your edition and language instead of a stored one that does not fit.

  1. Open Command Prompt as administrator. Type cmd in the search box, right-click Command Prompt and select Run as administrator. Select Yes when Windows asks for permission.
  2. Stop the update services. Type the commands below and press Enter after each one. If Windows says that other services depend on Cryptographic Services, it stops them too. A message that a service is not started is fine.
    net stop wuauserv
    net stop bits
    net stop cryptsvc
    Command Prompt after stopping Windows Update, BITS and Cryptographic Services: screenshot taken on Windows 11 26H2
    The update services are stopped. Screenshot: Windows 11 26H2.
  3. Delete the download queue files. This clears the list of downloads that the Background Intelligent Transfer Service keeps. If Windows says it cannot find the files, continue.
    del "%ALLUSERSPROFILE%\Application Data\Microsoft\Network\Downloader\qmgr*.dat"
  4. Rename the update cache folders. Renaming keeps a copy in case you need it; Windows creates new, empty folders when the services start again. If you get Access is denied, a service is still running: repeat the previous step.
    ren %systemroot%\SoftwareDistribution SoftwareDistribution.old
    ren %systemroot%\System32\catroot2 catroot2.old
    SoftwareDistribution.old and catroot2.old listed in Command Prompt: screenshot taken on Windows 11 26H2
    Both folders now end in .old. Screenshot: Windows 11 26H2.
  5. Start the services again. Type the commands below and press Enter after each one. The requested service has already been started is fine: Windows started it on its own.
    net start cryptsvc
    net start bits
    net start wuauserv
    Command Prompt after starting BITS and Windows Update: screenshot taken on Windows 11 26H2
    BITS and Windows Update are running again. Screenshot: Windows 11 26H2.
  6. Restart and check for updates. Restart the PC. Then select Start > Settings > Windows Update > Check for updates. The first check can take longer than usual because everything is downloaded again.

These steps were written for Windows 11 and Windows 10 (the steps are the same). The full page with the other versions and what each result means: Reset Windows Update components

It worked if: After a restart, Check for updates downloads the feature update again and it installs.

If not: If the error returns, go to Fix 6, then Fix 2.

Fix 6. Repair Windows system files with DISM and SFC

20 minutesLow riskEverything matches, the cache reset did not help, and Fix 1 values look odd, such as an edition that does not fit your licence.

Setup reads the installed edition from Windows itself. Damaged component files are a rare reason for a wrong reading, and DISM with SFC is the safe way to rule that out.

  1. Open an elevated command window. Right-click Start and select Terminal (Admin), or type cmd in the search box, right-click Command Prompt and select Run as administrator. Select Yes when Windows asks for permission.
    Search for cmd and choose Run as administrator: screenshot taken on Windows 11 26H2
    Search for cmd and choose Run as administrator. Screenshot: Windows 11 26H2.
  2. Run DISM first. Type the command below and press Enter. DISM downloads clean copies of damaged components from Windows Update, so it can take several minutes. Wait until it says The operation completed successfully.
    DISM.exe /Online /Cleanup-Image /RestoreHealth
    DISM /RestoreHealth running: screenshot taken on Windows 11 26H2
    DISM /RestoreHealth running. Screenshot: Windows 11 26H2.
  3. Run System File Checker. In the same window, type the command below and press Enter. Do not close the window until the verification reaches 100%.
    sfc /scannow
    sfc /scannow at 100%: screenshot taken on Windows 11 26H2
    sfc /scannow at 100%. Screenshot: Windows 11 26H2.
  4. Read the result and restart. Compare the last message with the table below this guide, then restart the PC so that repaired files are loaded.
    The result line tells you what SFC did: screenshot taken on Windows 11 26H2
    The result line tells you what SFC did. Screenshot: Windows 11 26H2.

These steps were written for Windows 11 24H2 and 25H2. The full page with the other versions and what each result means: Run DISM and SFC to repair Windows system files

It worked if: SFC reports that it found no integrity violations, or that it repaired them, and the upgrade runs.

If not: If nothing changes, the mismatch is real: get matching media (Fix 2) or use Fix 7.

Fix 7. Keep personal files only, or reset the PC, when apps cannot be kept

1 to 2 hoursRead the warningYou cannot get media that matches, for example you want to move from Enterprise to Home.

0xc1900204 blocks only the keep apps choice. Choosing to keep personal files only, or using Reset this PC with Keep my files, is a different migration choice and is often still allowed.

Your apps and settings will be removed

Both options keep your personal files but remove installed apps and most settings. Back up your files first: Back up your files (Windows Backup, File History, Time Machine). Note your programs and their licence keys, and have your BitLocker recovery key ready.

  1. With the ISO mounted, run setup.exe and on Choose what to keep select Keep personal files only.
  2. Or open Settings > System > Recovery, select Reset PC next to Reset this PC, then Keep my files.
  3. Choose Cloud download for a fresh copy of Windows.
  4. After Windows starts, install your apps again and run Windows Update.

Step by step with screenshots: Reinstall Windows without losing files.

It worked if: Windows installs the new version with your personal files in place.

If not: If this choice is blocked too, read the next section.

If error 0xc1900204 is still there

When the code returns after Fix 2, Setup still sees a mismatch. Its logs say which one, and they are what support needs.

What you findWhat to do
setupact.log names a different edition than you see in SettingsYour licence or firmware key may be for another edition. Activation settings in Settings > System > Activation show which one.
The log shows a language or architecture differenceDownload the ISO again with the exact language variant and the right architecture.
You see 0xC1900200 or 0xC1900208 nowA different block. Read our guide to error 0xC1900200 for requirements.
A work or school PCThe IT department controls the edition and the upgrade task.
  • What to send to support: the full code, how you started the upgrade and the version you upgrade from and to.
  • Attach setupact.log and setuperr.log from C:\$Windows.~BT\Sources\Panther.
  • Add the edition, system type and the output of dism /online /get-intl from Fix 1.
This is not a hardware fault

0xc1900204 is a decision about editions and choices. Your disk, memory and processor are not the cause. If the PC fails a hardware requirement, Setup shows 0xC1900200 instead.

How to keep 0xc1900204 from coming back

Do
  • Download upgrade media in the same language and edition as the installed Windows.
  • Let Windows Update deliver feature updates where you can: it picks the right edition for you.
  • Keep the old setupact.log before you try again on a work PC.
Do not
  • Do not mix an Insider build with public ISOs.
  • Do not change edition and upgrade version in the same step.
  • Do not use tools that change the edition in the registry to trick Setup.

If you need another edition, change it first through Settings > System > Activation with a valid key, then upgrade.

Frequently asked questions

What does error 0xc1900204 mean?

It means Windows Setup cannot do the upgrade with the keep choice you selected. Microsoft names it MOSETUP_E_COMPAT_MIGCHOICE_BLOCK: the system does not pass the requirements for the desired migration choice. Its own example is an upgrade from Enterprise to Home, where apps cannot be carried across. Nothing was installed and your files were not touched. Compare your edition and language with the upgrade as in Fix 1.

What does Install error - 0xc1900204 in Windows Update mean?

It is the same code shown under a feature update in Settings > Windows Update. Windows Update downloaded the update, Setup compared it with your Windows and refused to keep your apps. On Windows 11, Fix problems using Windows Update (Fix 3) reinstalls a matching copy. On Windows 10, run Setup from a matching ISO (Fix 2), or reset the update cache first (Fix 5).

What does "Windows Setup failed with hexadecimal exit code 0xC1900204" mean?

This wording comes from tools that run Windows Setup for you, such as a company upgrade task, and report its exit code. The decimal form of the same code is 3247440388. It means the edition or image the task targets does not match the installed Windows. A documented case was a task that let Setup use an OEM Professional key from the firmware for an Enterprise PC. Fix 4 has the checks.

Does 0xc1900204 happen on Windows 11?

Yes. The code comes from Windows Setup, which runs the same way for Windows 11 feature updates such as 25H2 and 26H2 and for upgrades from Windows 10. The causes and the fixes are the same. Windows 11 also has Fix problems using Windows Update, which is often the quickest way past it (Fix 3).

What is the difference between 0xc1900204 and 0xc1900200?

0xC1900200 means the PC fails a minimum system requirement, such as TPM 2.0, Secure Boot, the processor or storage. 0xC1900204 means the PC may be fine, but the upgrade does not match the installed Windows, so apps cannot be kept. They need different fixes. For the first one, read our guide to Windows update error 0xC1900200.

Will the troubleshooter, SFC or the old registry change fix 0xc1900204?

Usually not. The troubleshooter and SFC repair broken files, and this error is a comparison between two versions of Windows. The old version of this guide also suggested moving ProgramFilesDir in the registry; that does not change the edition and can break installed programs, so we removed it. Use SFC only as in Fix 6, after the edition checks.

Can I keep my apps if I change from Pro to Home or from Enterprise to Pro?

Not in one upgrade step. Microsoft's own example of a choice that is not available is Enterprise to Home. You can upgrade within the same edition and keep apps, then change the edition separately. If you must move to a lower edition, choose Keep personal files only or Reset this PC with Keep my files, as in Fix 7, and install your apps again.

Is it safe to stay on my current version if 0xc1900204 will not go away?

On Windows 11, your current version keeps getting monthly security updates until its own support ends, so you have time to fix this calmly. On Windows 10, support ended on 14 October 2025 and the PC no longer receives free security fixes, so staying is a growing risk. Keep Microsoft Defender on and back up your files while you plan the upgrade.

Sources

  1. Microsoft Learn: Windows 10 upgrade error codes (0xC1900204 MOSETUP_E_COMPAT_MIGCHOICE_BLOCK, example Enterprise to Home, neighbour codes) (learn.microsoft.com)
  2. Microsoft Learn: Windows 10 upgrade resolution procedures (0xC1900204 and 0xC1900205 descriptions) (learn.microsoft.com)
  3. A Square Dozen: in-place upgrade fails with error 0xC1900204 (invalid SKU), setupact.log lines and the product key cause (asquaredozen.com)

Did this fix work?

One click, no account. It tells the next reader which guides are worth their time.

We show the result once 20 readers have answered.
Still broken? Describe your case with the exact error text.

Questions and experiences: fix Windows 10 Update error code 0xc1900204

Still broken, or found a fix we did not cover? Ask here: members and our editors answer. Reading is open; writing needs a free account.

0 comments

…

4,322 members already hereThey read, write, comment and vote. 0 verified · 31 joined this year