Windows Error Code Lookup
Paste any Windows error code, blue-screen stop code or error name and see what it means, which part of Windows raised it, and what to try. Covers Win32, HRESULT, NTSTATUS, Windows Update, upgrade and activation codes.
How to Use
- Type or paste the code exactly as Windows showed it:
0x80070005,80070005, a negative number from PowerShell such as-2147024891, a name likeCRITICAL_PROCESS_DIED, or words such as “disk full”. - Press Look up (or Enter). Every table the number appears in is listed, with Microsoft’s own name and message, and the bar diagram shows how the 32 bits split into severity, facility and code.
- If the code came from a blue screen, choose Stop code; small numbers such as 0x7E mean different things as a stop code and as a Win32 error.
- For an upgrade failure, paste both parts, as in
0xC1900101 - 0x4000D: the part after the dash says in which phase of Setup it failed. - Read What to try for the steps, in order. Click any value to copy it, or Copy result for the whole decode.
Worked Example
0x80070643, a failed Windows Update. In binary the top hex digit 8 is 1000, so the severity bit S is 1 (failure) and the other four flag bits are 0. The facility is bits 16–26: 0x007 = 7, FACILITY_WIN32, which Microsoft reserves for Win32 errors wrapped as HRESULTs. The code is the low 16 bits, 0x0643 = 6 × 256 + 4 × 16 + 3 = 1603, ERROR_INSTALL_FAILURE, “Fatal error during installation”: a Windows Installer package failed.
−2147024891 from PowerShell. .NET prints HRESULTs as signed numbers, so add 232 = 4,294,967,296: the result is 2,147,942,405 = 0x80070005. Facility 7 again, code 5: ERROR_ACCESS_DENIED.
The common mistake: looking up a blue-screen code as an error code. A crash logged as “0x0000007E” looked up as a Win32 error gives 126, ERROR_MOD_NOT_FOUND, “The specified module could not be found”, which sends you hunting for a missing DLL. As a stop code, 0x7E is SYSTEM_THREAD_EXCEPTION_NOT_HANDLED: a driver crashed. Small numbers live in several tables, so this tool lists every reading and lets you pick Stop code.
Show Work
Bit Layouts and Formulas
Most Common Windows Error Codes
The codes below are the ones people search for most. Each opens in the lookup above with its fixes.
| Code | What it means | Where you see it |
|---|---|---|
| 0x80070005 | Access denied | Windows Update, Microsoft Store, app installers, activation, scripts and backup tools. |
| 0x80004005 | Unspecified error | Windows Update, shared folders and network drives, ZIP extraction, virtual machines, Outlook. |
| 0x80070002 | File not found | Windows Update (a downloaded package was removed or never finished), backups, app installs. |
| 0x80070070 | Disk full | Feature updates and upgrades (they need tens of GB free), large downloads. |
| 0x80070422 | Service disabled | Windows Update, Microsoft Store and Windows Firewall, often after a “debloat” or privacy tool turned services off. |
| 0x80070643 | Installation failed (MSI 1603) | Windows Update (Defender, .NET and Office updates), app installers. In January 2024 it was widely reported for the Windows Recovery Environment update KB5034441 on PCs whose recovery partition was too small. |
| 0x80073712 | Component store corrupted | Windows Update, enabling optional features, DISM. |
| 0x800F081F | Source files not found | DISM /RestoreHealth, enabling .NET Framework 3.5 or other optional features, Windows Update. |
| 0x800F0922 | Update installers failed | Windows Update (cumulative updates, feature updates), enabling .NET 3.5. |
| 0x80072EFD | Cannot connect to the server | Windows Update, Microsoft Store, Xbox app, activation. |
| 0x80072F8F | Secure connection failed (often the clock) | Windows Update, Microsoft Store, activation, especially on PCs whose clock is wrong or on old Windows versions. |
| 0xC1900101 | Upgrade rolled back (driver problem) | Feature updates and Windows 10 → 11 upgrades, often with “We couldn’t install Windows 11”. |
| 0xC1900200 | PC does not meet the requirements | Upgrading to Windows 11 (or old PCs to Windows 10). |
| 0xC004F074 | No KMS server could be contacted | Settings → Activation; work PCs off the company network; home PCs that were “activated” with a KMS tool or a key from an unofficial seller. |
| 0xC000007B | Application was unable to start (bad image) | “The application was unable to start correctly (0xc000007b)”, mostly games and older software. |
| 0x0000000A | Blue screen: IRQL_NOT_LESS_OR_EQUAL | Blue screen, often during gaming, networking or right after a driver update. |
| 0x000000D1 | Blue screen: DRIVER_IRQL_NOT_LESS_OR_EQUAL | Blue screen naming a .sys file, for example ndis.sys or a Wi-Fi driver. |
| 0x0000003B | Blue screen: SYSTEM_SERVICE_EXCEPTION | Blue screen, frequently naming a graphics driver or antivirus file. |
| 0x00000050 | Blue screen: PAGE_FAULT_IN_NONPAGED_AREA | Blue screen, sometimes at start-up after an update. |
| 0x0000007E | Blue screen: SYSTEM_THREAD_EXCEPTION_NOT_HANDLED | Blue screen, often naming a graphics driver (nvlddmkm.sys, atikmdag.sys) during start-up or updates. |
| 0x000000EF | Blue screen: CRITICAL_PROCESS_DIED | Blue screen, sometimes in a boot loop. |
| 0x00000133 | Blue screen: DPC_WATCHDOG_VIOLATION | Blue screen, often after connecting a new SSD or updating Windows. |
| 0x00000124 | Blue screen: WHEA_UNCORRECTABLE_ERROR | Blue screen under load (games, rendering), or after enabling an overclock or XMP/EXPO. |
Why Windows Has Four Kinds of Error Code
Windows grew its error codes in layers. The Win32 API returns small numbers from GetLastError(): 2 is file not found, 5 is access denied, 112 is disk full. COM, introduced with OLE 2 in 1993, needed codes that also said which subsystem failed, so it packed a severity bit, a facility number and a 16-bit code into one 32-bit HRESULT. Facility 7 was set aside for Win32 errors, which is why so many codes start 0x8007. The Windows NT kernel and drivers use a third layout, NTSTATUS, whose top two bits give the severity, so kernel errors start with 0xC. Microsoft publishes all three tables in the open specification [MS-ERREF].
The fourth kind is the bug check, or stop code, shown on the blue screen. It is not an error returned to a program: it is the reason Windows halted the whole system, and it comes with four parameters whose meaning depends on the code. Microsoft’s Bug Check Code Reference lists 379 of them. A few numbers appear in more than one table: 0xC000021A is both an NTSTATUS value and the stop code shown when Winlogon or csrss dies, and stop codes with 0x10000000 added, such as 0x1000007E, mean the same as the code without it.
Some components define their own ranges inside the HRESULT space: Windows Update uses facility 36 (0x8024xxxx), the servicing stack that installs updates uses 0x800Fxxxx (CBS_E_* codes), Windows Setup reports 0xC19xxxxx results plus an extend code, and activation uses 0xC004xxxx. Their names come from Microsoft’s Windows Update, upgrade and activation troubleshooting pages rather than [MS-ERREF].
About This Tool
This lookup checks a number against every published Windows table at once (2,703 Win32 codes, 2,928 HRESULTs, 1,799 NTSTATUS values, 379 bug checks, 256 Windows Update codes, 71 Setup result codes and the activation list) and against about 4,000 further messages read from the message tables built into Windows 11, which cover codes the public lists leave out. It also works out what a code wraps: the Win32 error inside a 0x8007 HRESULT, the NTSTATUS inside a 0xD HRESULT, the phase and operation in a Setup extend code, and the exception code in a blue screen’s first parameter.
For the 67 codes that people run into most, it adds what the code means in practice and the steps to try, in order, based on Microsoft’s own troubleshooting pages. The tables load once from this site and every lookup runs in your browser; nothing you type is sent anywhere. It is for anyone staring at a Windows Update failure, a blue screen or an app that will not start, and for developers decoding an HRESULT from a log.
Related tools: Explain This Error, Number Base Converter, and HTTP Status Codes.
Frequently Asked Questions
What does error 0x80070005 mean?
Access denied. 0x8007 marks an HRESULT that wraps an ordinary Win32 error, and the last four hex digits, 0005, are Win32 error 5, ERROR_ACCESS_DENIED: something tried to change a file, folder, registry key or service it had no permission for. Run the installer or Command Prompt as administrator, check antivirus and Controlled folder access, and for Windows Update look in CBS.log for the object that was refused.
What does the 0x8007 at the start of an error code mean?
It is the HRESULT form of a Win32 error. The 8 sets the failure bit and 007 is facility 7, FACILITY_WIN32, so the last four hex digits are the original Win32 error number. 0x80070643 is 0x643 = 1603, ERROR_INSTALL_FAILURE, and 0x80070070 is 112, ERROR_DISK_FULL.
Why does PowerShell show my error code as a negative number?
PowerShell and .NET store HRESULTs as signed 32-bit integers, so any code from 0x80000000 up prints as negative. Add 4,294,967,296 (232) to get the unsigned value: −2,147,024,891 + 4,294,967,296 = 2,147,942,405, which is 0x80070005. Paste the negative number here and it is converted for you.
How do I find my blue screen stop code after Windows restarts?
Open Event Viewer → Windows Logs → System and look for Event ID 1001 from the source BugCheck: it reads “The bugcheck was: 0x0000007e (…)”, with the four parameters. Reliability Monitor (perfmon /rel) shows the same crashes on a timeline, and the dump files are in C:\Windows\Minidump.
What is the difference between Win32, HRESULT and NTSTATUS codes?
Win32 error codes are small numbers (0 to 65,535) returned by Windows API functions, such as 5 for access denied. HRESULTs are 32-bit values used by COM, .NET and most Windows components, with a severity bit, an 11-bit facility and a 16-bit code. NTSTATUS values come from the kernel and drivers; errors start with 0xC, as in 0xC0000005. One problem can appear in all three forms: access denied is 5, 0x80070005 and 0xC0000022.
How do I use the Windows Error Code Lookup?
Simply type your numbers and read the result, which refreshes the instant you change something. There is nothing to submit and nothing to wait for.
Do I need to install or sign up for anything?
Not at all — it runs in the browser with nothing to install and no account. After it loads once, it even works without an internet connection.
Is my information private?
Yes. Everything happens in your browser. Nothing you type is sent to a server or saved anywhere.
Common Use Cases
A Windows Update keeps failing
0x800F0922 is CBS_E_INSTALLERS_FAILED: the update rolled back. Disconnecting a VPN, freeing the system partitions and running DISM /RestoreHealth fix most cases.
A Windows 11 upgrade rolls back
0xC1900101 - 0x4000D decodes to phase 4 (SP_EXECUTION_OOBE_BOOT) and operation 0x0D (MIGRATE_DATA): a driver failed on the second restart, so update or unplug the device and run SetupDiag.
Reading a blue screen from Event Viewer
“The bugcheck was: 0x0000007e (0xffffffffc0000005, …)” is SYSTEM_THREAD_EXCEPTION_NOT_HANDLED; parameter 1, 0xC0000005, is an access violation inside a driver.
Script and .NET errors
A PowerShell catch block prints HResult −2147024894. Add 232 to get 0x80070002, Win32 error 2: the file was not found.
An app will not start
0xC000007B is STATUS_INVALID_IMAGE_FORMAT: a 64-bit program loaded a 32-bit DLL or the reverse. Installing both x64 and x86 Visual C++ Redistributables fixes most cases.
Activation errors
0xC004F074 on a home PC means it holds a volume (KMS) key with no company server to reach; it needs a retail key, not a retry.
Last updated: