PC Keeps Blue Screening (BSOD): How to Stop Windows from Crashing
Fix blue screening on Windows PCs and laptops. Diagnose BSOD causes—drivers, RAM, overheating—and apply targeted fixes to stop random and game-related crashes.
- Faulty, outdated, or incompatible device drivers are the #1 cause of blue screens, especially after Windows updates or new hardware installs.
- Defective or improperly seated RAM, overheating components, corrupted system files, and failing storage drives are the other leading root causes.
- Quick fix path: note the STOP code, run Windows Memory Diagnostic + SFC /scannow, update or roll back drivers, check temperatures, then run CHKDSK—resolving most BSODs without a reinstall.
| Method | When to Use | Time | Risk |
|---|---|---|---|
| Driver rollback / update | BSOD started after a Windows Update or new device install; errors like DRIVER_IRQL_NOT_LESS_OR_EQUAL | 5–15 min | Low |
| Windows Memory Diagnostic / MemTest86 | Random BSODs with different STOP codes; new PC or recently added RAM | 30 min – 8 hrs | None |
| SFC /scannow + DISM repair | Corrupted system files; BSOD on startup or after power loss | 15–30 min | None |
| CHKDSK /r | Failing HDD/SSD; BSOD codes like CRITICAL_PROCESS_DIED or INACCESSIBLE_BOOT_DEVICE | 1–4 hrs | Low |
| Thermal throttling / hardware reseating | BSODs during gaming or heavy load; high temps reported in HWiNFO | 20–60 min | Medium (requires opening case) |
| Clean boot / malware scan | BSOD linked to third-party software or Valorant anti-cheat conflicts | 30–60 min | Low |
| Windows Reset / Reinstall | All other fixes failed; persistent BSOD loop on startup | 1–3 hrs | High (data loss risk without backup) |
Understanding the Blue Screen of Death (BSOD)
A blue screen—technically a Stop Error—occurs when Windows encounters a critical fault it cannot recover from. The system halts to prevent data corruption and displays a STOP code (also called a bug check code). Modern Windows 10/11 systems show a QR code and a human-readable description such as:
DRIVER_IRQL_NOT_LESS_OR_EQUAL— a driver accessed memory at an illegal interrupt levelMEMORY_MANAGEMENT— RAM hardware or addressing failureCRITICAL_PROCESS_DIED— a core Windows process terminated unexpectedlySYSTEM_SERVICE_EXCEPTION— a system service triggered an unhandled exceptionWHEA_UNCORRECTABLE_ERROR— hardware error (CPU/RAM/PCIe)INACCESSIBLE_BOOT_DEVICE— Windows cannot read the drive it boots fromPAGE_FAULT_IN_NONPAGED_AREA— software tried to access non-existent memoryDPC_WATCHDOG_VIOLATION— a driver did not respond in timeCLOCK_WATCHDOG_TIMEOUT— a CPU core stopped responding (common with overclocks)
Recognising your specific code is step one—it narrows the search from "everything" to one or two components.
Step 1: Record the Stop Code and Check Event Viewer
If the BSOD flashes too quickly, Windows automatically saves a minidump to C:\Windows\Minidump\. Open Event Viewer → Windows Logs → System and filter for Critical/Error events timestamped at the crash time. Alternatively, use WinDbg or the free WhoCrashed utility to parse minidumps and identify the offending driver.
winget install Resplendence.WhoCrashed
Note the filename of the crashing module (e.g., nvlddmkm.sys = NVIDIA display driver, ntfs.sys = file system, tcpip.sys = network driver). This tells you exactly where to focus.
Step 2: Update or Roll Back Drivers
Driver faults cause the majority of BSODs. If your PC started blue screening after a Windows Update, right-click the device in Device Manager → Properties → Driver → Roll Back Driver. If no rollback is available, visit the manufacturer's site for the latest stable release:
- GPU: nvidia.com or amd.com (use DDU in safe mode to fully remove old driver before reinstalling)
- Chipset/BIOS: your motherboard manufacturer's support page
- Storage controller: Intel RST or AMD SATA drivers from the board vendor
For gaming-related BSODs (Valorant, or any game), the NVIDIA display driver (nvlddmkm.sys) and Vanguard anti-cheat (vgk.sys) are frequent culprits. Uninstall Vanguard, reboot, then reinstall the latest version from Riot's site.
Step 3: Test Your RAM
Random BSODs with varying STOP codes almost always point to bad RAM. Run the built-in Windows Memory Diagnostic:
- Press Win + R, type
mdsched.exe, press Enter. - Choose Restart now and check for problems (recommended).
- Select Extended test in options (F1 key) for thoroughness.
For more rigorous testing, boot from a MemTest86 USB drive and run at least two full passes (4+ passes recommended for new builds). A single error means the RAM stick or slot is defective. If you have two sticks, test each alone to isolate the bad one.
Also physically reseat your RAM: power off, remove sticks, clean the gold contacts with an eraser, and firmly reinsert. Loose RAM causes intermittent BSODs that appear completely random.
Step 4: Repair System Files
Corrupted Windows files cause startup BSODs and CRITICAL_PROCESS_DIED errors. Run these commands in an elevated Command Prompt or PowerShell:
sfc /scannow
DISM /Online /Cleanup-Image /RestoreHealth
If your PC blue screens before reaching the desktop, boot into Windows Recovery Environment (WinRE) by holding Shift while clicking Restart, or by booting from a Windows USB and choosing Repair your computer → Troubleshoot → Advanced Options → Command Prompt, then run the same commands.
Step 5: Check Storage Health
A failing drive causes INACCESSIBLE_BOOT_DEVICE, CRITICAL_PROCESS_DIED, and random startup crashes. Run:
chkdsk C: /f /r /x
(Requires a reboot to run before Windows starts.) Also check drive health with CrystalDiskInfo (for HDDs/SSDs) or smartctl from smartmontools. Look for reallocated sectors, pending sectors, or an overall health status of Caution or Bad. For NVMe drives, use the manufacturer's tool (Samsung Magician, WD Dashboard, etc.).
Step 6: Monitor Temperatures and Check for Overheating
BSODs that occur only during gaming or under load (CLOCK_WATCHDOG_TIMEOUT, WHEA_UNCORRECTABLE_ERROR) often indicate thermal throttling or hardware instability caused by heat. Download HWiNFO64 and monitor:
- CPU Package Temp: should stay below 95°C (Ryzen) or 100°C (Intel Alder/Raptor Lake)
- GPU Core Temp: safe below 85–90°C depending on the card
- VRM Temps: should stay below 110°C
Fixes include: cleaning dust from heatsinks and fans, replacing dried-out thermal paste on the CPU, ensuring adequate case airflow, and undervolting the GPU via MSI Afterburner.
Step 7: Check for Overclocking Issues
New PC or newly overclocked system that keeps blue screening? Unstable overclocks are a very common culprit. Enter your BIOS/UEFI and load Optimized Defaults to reset all settings to stock. If the BSODs stop, your OC was unstable. Re-apply the overclock incrementally and stress-test with Prime95 or OCCT between each change.
XMP/EXPO memory profiles can also cause instability. Try running RAM at its base JEDEC speed (typically 2133 or 2400 MHz) to see if BSODs stop.
Step 8: Perform a Clean Boot to Isolate Software
If hardware checks pass, a third-party application or service is likely responsible. Press Win + R, type msconfig, go to the Services tab, check Hide all Microsoft services, then click Disable all. On the Startup tab, open Task Manager and disable all startup items. Reboot. If BSODs stop, re-enable services in batches to find the culprit.
Common third-party BSOD sources include: antivirus kernel drivers, VPN tap adapters, hardware monitoring software, and gaming overlays (Rivatuner, Discord overlay, Xbox Game Bar with certain GPU drivers).
Step 9: When to Reinstall Windows
If all the above steps fail and BSODs persist, a clean Windows installation resolves the issue in the vast majority of remaining cases. Before reinstalling:
- Back up all important data to an external drive.
- Download the latest Windows 11 ISO from microsoft.com and create a bootable USB with the Media Creation Tool or Rufus.
- Boot from the USB, choose Custom install, delete the existing Windows partition, and install fresh.
A fresh install will confirm whether the problem is software (BSODs stop) or hardware (BSODs continue, meaning a component needs physical replacement).
Frequently Asked Questions
# ============================================================
# BSOD Diagnostic & Fix Script for Windows 10/11
# Run in an elevated (Administrator) PowerShell window
# ============================================================
# 1. List recent STOP errors from the System event log
Write-Host "`n=== Recent Critical/Error Events ==="
Get-WinEvent -LogName System -MaxEvents 500 |`n Where-Object { $_.LevelDisplayName -eq 'Critical' -or $_.LevelDisplayName -eq 'Error' } |`n Select-Object TimeCreated, Id, Message |`n Format-List
# 2. List all minidump files with timestamps
Write-Host "`n=== Minidump Files ==="
Get-ChildItem 'C:\Windows\Minidump' -ErrorAction SilentlyContinue |`n Sort-Object LastWriteTime -Descending |`n Select-Object Name, LastWriteTime, Length
# 3. Check Windows system files for corruption
Write-Host "`n=== Running SFC (System File Checker) ==="
sfc /scannow
# 4. Repair the Windows component store (run after SFC if errors found)
Write-Host "`n=== Running DISM Restore Health ==="
DISM /Online /Cleanup-Image /RestoreHealth
# 5. Schedule CHKDSK on next boot for drive C:
Write-Host "`n=== Scheduling CHKDSK on C: ==="
cmd /c "echo Y | chkdsk C: /f /r /x"
Write-Host "CHKDSK will run on next restart."
# 6. Check SMART disk health via Get-PhysicalDisk
Write-Host "`n=== Physical Disk Health ==="
Get-PhysicalDisk | Select-Object FriendlyName, MediaType, HealthStatus, OperationalStatus
# 7. List all third-party kernel drivers (potential BSOD culprits)
Write-Host "`n=== Third-Party Kernel Drivers ==="
Get-WmiObject Win32_SystemDriver |`n Where-Object { $_.PathName -notlike '*\Microsoft\*' -and $_.PathName -notlike '*\Windows\*' } |`n Select-Object Name, PathName, State |`n Format-Table -AutoSize
# 8. Check RAM slots and capacity
Write-Host "`n=== Installed RAM Modules ==="
Get-WmiObject Win32_PhysicalMemory |`n Select-Object BankLabel, DeviceLocator, Capacity, Speed, Manufacturer |`n Format-Table -AutoSize
# 9. Retrieve CPU temperature via OpenHardwareMonitor COM (if installed)
# If not available, use HWiNFO64 manually for temp monitoring
Write-Host "`n=== Note: For temperature monitoring, use HWiNFO64 (hwinfo.com) ==="
# 10. Export a full system info report for offline analysis
msinfo32 /report "$env:USERPROFILE\Desktop\SystemInfo.txt"
Write-Host "`nSystem info saved to Desktop\SystemInfo.txt"
Write-Host "`n=== Diagnostic complete. Review output above. ==="Error Medic Editorial
The Error Medic Editorial team is composed of senior DevOps engineers, SREs, and Windows system administrators with a combined 40+ years of experience diagnosing and resolving OS-level failures, kernel panics, and hardware faults across enterprise and consumer environments. Our troubleshooting guides are built from real incident post-mortems, Microsoft documentation, and hands-on lab testing.
Sources
- https://learn.microsoft.com/en-us/windows-hardware/drivers/debugger/bug-check-code-reference2
- https://support.microsoft.com/en-us/windows/fix-a-blue-screen-error-in-windows-28803931-1680-4b57-97d0-71af29e0b0d2
- https://learn.microsoft.com/en-us/windows-hardware/drivers/devtest/driver-verifier
- https://stackoverflow.com/questions/tagged/bsod
- https://www.memtest86.com/technical.htm