wingettroubleshootingreferenceerrors

Every winget Error Code Explained (2026 Reference)

0x80073D02, 0x80070005, 0x8A150011 — what every winget error code means and how to fix it. The complete cheatsheet.

· 5 min read · updated May 29, 2026
Every winget Error Code Explained (2026 Reference)

You hit a winget error like 0x80073D02 and Stack Overflow's three-year-old answer is useless. Here's the complete 2026 reference: every error code, what it means, and how to fix it.

The most common 12 codes (memorise these)

Code Meaning Quick fix
0x80073D02 App is currently running Close the app, retry
0x80070005 Access denied Run as Administrator
0x80070002 File not found Re-run winget source update
0x80070003 Path not found Reinstall App Installer
0x80070057 Invalid parameter Check your command syntax
0x80073CFA Package cannot be installed Architecture/scope mismatch
0x8A150011 Manifest validation failed Wait for upstream fix
0x8A15000F Failed installer hash check See hash mismatch guide
0x8A150027 Source agreements not accepted Add --accept-source-agreements
0x8A150049 Network error Check internet / proxy
0x8A150050 No applicable installer Architecture/scope mismatch
0x8A150003 Source not found winget source update

winget-specific codes (0x8A15____)

These are winget's own errors. The facility code 0x8A15 is unique to App Installer.

0x8A150001 — internal error

Generic catch-all. Usually transient.

Fix: retry. If persistent, restart Terminal.

0x8A150002 — invalid command line

You passed a flag winget doesn't recognise.

Fix: check winget <command> --help.

0x8A150003 — package or source not found

The ID doesn't exist in any configured source.

Fix:

winget source update
winget search <name>    # verify ID

0x8A150004 — multiple matches found

Search returned more than one result.

Fix: add -e (exact) or specify --source winget.

0x8A150005 — no installer found

The package has no installer matching your system architecture / scope.

Fix:

winget install --id <ID> --architecture x64
# or try without scope flag

0x8A150006 — manifest broken

The package manifest is invalid (shouldn't happen for merged packages, but can during transient catalog sync).

Fix: winget source reset --force and retry.

0x8A15000F — installer hash mismatch

Downloaded installer doesn't match the manifest's expected SHA-256.

Fix: see Installer hash does not match guide. TL;DR: wait 24h or use --force if you trust the publisher.

0x8A150011 — manifest validation failed

Manifest in the catalog is malformed.

Fix: report at winget-pkgs issues; usually fixed within a day.

0x8A150027 — source agreements not accepted

First-time use; you haven't accepted the source agreements.

Fix:

winget source update --accept-source-agreements

0x8A150036 — pin prevents upgrade

You pinned this package and tried to upgrade it.

Fix:

winget pin remove --id <ID>
winget upgrade --id <ID>

See winget pin guide.

0x8A150049 — network failure

Network error during download.

Fix:

  • Check internet connection
  • Check proxy settings (see search not working)
  • Retry — usually transient

0x8A150050 — no applicable installer

Same root cause as 0x8A150005 — system architecture / OS version mismatch.

Fix: check winget show --id <ID> for installer requirements.

Windows / HRESULT codes (0x8007____)

These come from Windows itself, not winget. The lower bits are standard Win32 error codes.

0x80070002 — file not found

Something the installer expected isn't there. Could be a dependency or a temp file cleanup race condition.

Fix: retry. If repeated, restart and retry.

0x80070003 — path not found

Install path doesn't exist. Often happens with --scope machine when winget can't find C:\Program Files.

Fix: verify Program Files exists; retry as Admin.

0x80070005 — access denied

Most common after not recognized. Permission to install / write to Program Files / modify HKLM denied.

Fix: open Terminal as Administrator. See Access denied fix.

0x80070057 — invalid parameter

Bad command syntax.

Fix: winget <command> --help. Common: forgetting --id, missing = in --id=ABC.

0x80073CFA — package cannot be installed

The app's installer rejected the install. Could be architecture, scope, or system requirements.

Fix:

winget show --id <ID>
# Check requirements
# Try --architecture x64 or --scope user

0x80073D02 — package is currently in use

The app is already running. Windows refuses to upgrade a running app.

Fix: close the app first.

Get-Process -Name "<app>" -ErrorAction SilentlyContinue | Stop-Process -Force
winget upgrade --id <ID>

0x80073D03 — invalid manifest

Manifest XML/YAML malformed.

Fix: winget source reset --force then retry.

MSI / Installer exit codes (1602, 1603, 1618...)

When the underlying installer fails, winget propagates the installer's exit code. Common ones:

Code Meaning
1602 User cancelled
1603 Fatal error during installation (generic MSI failure)
1605 Action only valid for currently installed products
1612 Installation source unavailable
1618 Another installation is already in progress
1619 Installation package could not be opened
1620 Installation package could not be opened (corrupted)
1638 Another version is already installed
1641 Reboot required to complete
3010 Reboot required (success)

See winget MSI exit codes guide for fixes.

Diagnostic: turn on verbose logs

When stuck, enable verbose logging:

winget install --id <ID> --log "$env:TEMP\winget.log" --verbose

The log file shows every step, every HTTP request, and the actual error from the installer.

Or check the default log directory:

%LOCALAPPDATA%\Packages\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe\LocalState\DiagOutputDir

Quick decision tree

  1. "Access denied" → Run as Admin
  2. "Already running" → Close the app
  3. "Hash does not match" → Wait or --force
  4. "No installer found" → Try --architecture x64
  5. "Source not found"winget source update
  6. "Network error" → Check proxy / connection
  7. Anything else--verbose --log and read the log

90% of errors fall into one of these buckets.

Stuck on a specific error?
Send us the code at /contact and we'll add it to this guide if it's not here.
Contact us →

What's next?

Continue reading