How to fix the Reference By Pointer BSOD (0x18) in Windows 10 and 11

Prefer to fix it yourself? The manual steps follow.

  • 8methods
  • 15 to 60 minutes
  • Intermediate
Start fixing

Applies to Windows 11 and Windows 10 PCs that show the stop code REFERENCE_BY_POINTER (0x00000018)

8 methods in this guide
  1. What the error means
  2. Causes, ranked
  3. Read the crash dump
  4. The fixes
  5. 1. Fix the named driver
  6. 2. Test with a clean boot
  7. 3. Undo new hardware or update
  8. 4. Run Driver Verifier
  9. 5. Repair a PC that won't start
  10. 6. Repair system files
  11. 7. Check the hardware
  12. 8. Reinstall Windows
  13. Still crashing
  14. Prevent it
  15. FAQ
Question

Hey, I get the REFERENCE_BY_POINTER error, a Blue Screen of Death. I don't know how to fix it and have no idea why it occurs. I have received this error a few times already, and it happens out of nowhere. Can you help me solve this issue?

REFERENCE_BY_POINTER, bug check 0x18, means a driver released a Windows kernel object more times than it took it, so Windows stopped the PC. Almost always a third-party driver is behind it, such as security, VPN, audio, graphics or game tools. Find that driver in the crash dump, then update or remove it.

Short answer

The stop code means a driver broke the count Windows keeps for a kernel object, usually by releasing it one time too many. Open the newest crash dump and look for a third-party driver, then update, roll back or remove it (Fix 1). If the dump names only Windows files, test with a clean boot (Fix 2) and undo recent hardware or updates (Fix 3).

At a glance
ErrorA blue or black stop screen with Stop code: REFERENCE_BY_POINTER, bug check value 0x00000018. Sometimes a What failed: line names a .sys driver file.
Where it appearsAt random while you work or play, when a program closes, on shutdown, or during startup in a loop where only Safe Mode works. The PC restarts by itself.
Main causeA kernel driver that lowers an object's reference count too many times. Microsoft names this as the typical cause. Third-party drivers are the usual suspects.
Fastest fixUpdate, roll back or remove the driver the crash dump points at (Fix 1).
Also written asREFERENCE_BY_POINTER (18), reference by pointer BSOD, stop code reference by pointer, 0x18, 0x00000018, bugcheck 0x18, 0x18_OVER_DEREFERENCE.
AffectsWindows 11, Windows 10 and Windows Server. Windows 10 left support on 14 October 2025, so its fixes now come only through Extended Security Updates.
Vendor statusMicrosoft documents 0x18 for driver developers and says the inconsistency is typically caused by a driver. There is no Windows known issue or patch for it.
Where the cause is loggedC:\Windows\Minidump (one .dmp per crash), C:\Windows\MEMORY.DMP and the System log in Event Viewer.
Time to fix15 to 30 minutes when the dump names a driver. 1 hour or more when you need a clean boot or Driver Verifier to find it.

Facts checked on 16 October 2026. Steps written for Windows 11 (25H2 and 26H2) and Windows 10 22H2.

What the Reference By Pointer blue screen (0x18) means

Microsoft's bug check reference says that the REFERENCE_BY_POINTER bug check has a value of 0x00000018 and that it indicates the reference count of an object is illegal for the current state of the object. In plain words: Windows keeps a counter for every kernel object, such as a file, a device or a process, and a driver broke that counter.

Each time a driver uses a pointer to an object, it calls a kernel routine that raises the count by one. When it is done, it calls another routine that lowers it by one. The calls must match. If a driver lowers the count once too often, the count reaches zero while handles to the object are still open, or drops below zero, and Windows stops the PC rather than keep going with a broken object.

Diagram of an object reference count going from 2 to 1 to 0 when a buggy driver releases the object one extra time, which triggers bug check 0x18
A driver that releases an object one time too many breaks its count, and Windows stops with 0x18.
The spellings people search for, and what each one is
What you seeWhat it is
Your device ran into a problem and needs to restart with Stop code: REFERENCE_BY_POINTERThe text on the Windows 11 and Windows 10 stop screen
0x18, 0x00000018, bugcheck 0x18, REFERENCE_BY_POINTER (18)The same code as a number, in Event Viewer, Reliability Monitor and WinDbg
0x18_OVER_DEREFERENCE_nt!ObfDereferenceObjectWithTagThe failure bucket WinDbg prints when a driver released an object too many times
What failed: followed by a .sys fileThe driver that was running when Windows stopped, if Windows could name one
Reference by pointer error, reference by pointer crash, refrence by pointerTyped names of the same stop code
Blue or black, Windows 10 or 11, the same error

Microsoft says the screen colour and message of a stop code error vary with the Windows 11 version. On Windows 11 24H2 and later the screen is black, on Windows 11 23H2 and older and on Windows 10 it is blue. The stop code and the fixes are the same.

Why the REFERENCE_BY_POINTER error happens: causes, most common first

Only code running in kernel mode can break a reference count, so a normal app cannot cause 0x18 by itself. The suspects are drivers: the ones that come with hardware, and the hidden ones that security, VPN, backup, virtualization, monitoring and anti-cheat software install.

Causes ranked by how often they explain the crash, each with its fix
How oftenCauseSignFix
Most oftenAn outdated or faulty third-party hardware driver: graphics, audio interface, network, storageThe dump or the stop screen names a .sys file that is not from MicrosoftFix 1
OftenSoftware that installs a kernel driver: antivirus, VPN, firewall, backup, RGB and fan tools, anti-cheatCrashes began after you installed or updated such a programFix 2
Less oftenNew hardware that does not suit this Windows version, or a fresh Windows or driver updateThe first crash came after a new device or an updateFix 3
Less oftenA driver that hides: the dump names only ntoskrnl.exe or ntkrnlmp.exeRepeat crashes and no third-party file in the dumpFix 4
RarelyDamaged Windows system filesSFC finds errors, or the crashes started after a failed updateFix 6
RarelyFaulty RAM or an unstable overclockStop codes change from crash to crashFix 7

Find the driver behind 0x18 in the crash dump

Microsoft's advice for 0x18 starts with the debugger: the !analyze command shows information about the bug check that helps find the root cause. You need no developer skills for the first look. It takes about ten minutes if the PC still starts.

  1. Open File Explorer and go to C:\Windows\Minidump. Each .dmp file is one crash, named by its date.
  2. Install Microsoft's debugger: open Terminal and run winget install Microsoft.WinDbg.
  3. Start WinDbg as administrator, select File > Open dump file and open the newest .dmp file.
  4. Type !analyze -v in the command box and press Enter.
  5. Write down the lines IMAGE_NAME, MODULE_NAME, PROCESS_NAME and FAILURE_BUCKET_ID.
How to read the result

If IMAGE_NAME is a third-party .sys file, that driver is your first suspect: go to Fix 1. If it says ntkrnlmp.exe or ntoskrnl.exe, Windows only caught the damage. A Microsoft support engineer explained in such a case that the crash occurs when Windows detects the corruption, not where it was introduced, so the faulty driver is not visible in the dump. Go to Fix 2, then Fix 4.

No debugger? Microsoft also suggests the System log in Event Viewer. Press Win + X, select Event Viewer, open Windows Logs > System and look at the errors just before the crash time. A driver or device that fails there again and again is a good lead.

How to fix the Reference By Pointer blue screen in Windows

Start with Fix 1 if the dump names a driver. Fix 2 and Fix 3 find the cause when it does not. Fix 4 unmasks a hidden driver. Fix 5 is for a PC that no longer starts. Fixes 6 to 8 are general repairs, in order of cost.

What you seeStart withThen
The dump or the stop screen names a third-party .sys fileFix 1Fix 2
Crashes began after new software, a VPN, antivirus or game toolFix 2Fix 1
Crashes began after new hardware or a Windows updateFix 3Fix 1
The dump names only ntoskrnl.exe or ntkrnlmp.exeFix 2Fix 4
The PC crashes on every start or only Safe Mode worksFix 5Fix 1
Stop codes change from crash to crashFix 7Fix 6

Fix 1. Update, roll back or remove the driver the crash points at

15 minutesLow riskThe dump, Event Viewer or the stop screen names a driver that is not part of Windows, or crashes began after a driver update.

Microsoft says 0x18 is typically caused by a driver that lowers an object's reference count too many times, and advises updating or disabling a driver named in the bug check. A newer version often has the matching calls fixed; an older one avoids a new bug.

Decision chart for the REFERENCE_BY_POINTER stop code: a named driver, new software, new hardware or update, a dump with only ntoskrnl and a PC that will not start, each with its fix
Pick your first fix by what you know about the crash. A named driver comes first.
  1. Search the web for the .sys file name to learn which device or program it belongs to.
  2. Right-click Start and select Device Manager. Look for devices with a yellow exclamation mark first, as Microsoft's stop code checklist advises.
  3. Expand the category of the device, such as Display adapters or Sound, video and game controllers, right-click it and select Properties.
  4. On the Driver tab, select Roll Back Driver if the crashes began after a driver update.
  5. Otherwise download the newest driver for your exact model from the device or PC maker's site and install it.
  6. If the file belongs to a program rather than a device, update that program or uninstall it for a test: Uninstall a program or app in Windows
  7. Restart and use the PC as usual. Step by step with screenshots: Update, roll back or reinstall a driver
Windows Device Manager with the list of device categories and Display adapters marked as the place to find the graphics driver
Device Manager on Windows 10; on Windows 11 the list and the Display adapters entry look the same.

It worked if: The Driver tab shows the new or older version, no new file appears in C:\Windows\Minidump, and the PC runs for several days without the stop code.

If not: If the dump names no third-party driver, or the crash returns, test with a clean boot in Fix 2.

Fix 2. Find the program behind it with a clean boot

30 minutes plus a few days of useLow riskCrashes began after you installed security, VPN, backup, tuning or game software, or the dump names only Windows files.

Many programs load their own kernel drivers through services. A clean boot starts Windows with only Microsoft services, so if 0x18 stops, one of the disabled services is the cause.

  1. Press Win + R, type msconfig and press Enter.
  2. On the Services tab, tick Hide all Microsoft services, then select Disable all.
  3. On the Startup tab, select Open Task Manager and disable every startup app.
  4. Select OK in System Configuration and restart.
  5. If the PC is stable, turn the services back on a few at a time until the crash returns. The last group holds the cause. Full method: How to perform a clean boot in Windows
System Configuration Services tab with the Hide all Microsoft services box and the Disable all button marked
Hide the Microsoft services first, then disable the rest; the dialog is the same on Windows 11.
System Configuration Startup tab with the Open Task Manager link that leads to the list of startup apps
Startup apps are turned off in Task Manager, which this link opens on Windows 10 and 11.
Security software

If the cause is your antivirus or firewall, do not leave the PC without protection. Update it, or replace it, and make sure Microsoft Defender or another antivirus is on before you go online again.

It worked if: With the clean boot the PC runs for days without 0x18, and turning on one group of services brings it back, which names the program.

If not: If crashes continue even in a clean boot, check new hardware and updates in Fix 3.

Fix 3. Remove new hardware and undo the latest update

15 minutesLow riskThe first crash came soon after you added a device or after a Windows or driver update.

Microsoft's 0x18 page says to confirm that new hardware is compatible with your Windows version. A new device brings a new driver, and an update can replace a driver that used to work.

  1. Shut down the PC, disconnect the device you added last, such as a dock, audio interface, capture card or USB adapter, and start again.
  2. Open Settings > Windows Update > Update history (on Windows 10: Settings > Update & Security > Windows Update > View update history).
  3. Compare the date of the newest quality or driver update with the date of the first crash.
  4. If they match, select Uninstall updates and remove it. Step by step: How to uninstall a Windows update
  5. Pause updates for a week so it does not return until a fixed version arrives.
Windows Update, Update history page with Uninstall updates under Related settings: screenshot taken on Windows 11 26H2
Windows 11 Update history: remove the update that arrived just before the first REFERENCE_BY_POINTER crash.

It worked if: The PC runs without the device or the update and no new crash appears. Then reconnect the device with the newest driver from its maker.

If not: If nothing changed and the dump still names only Windows files, use Driver Verifier in Fix 4.

Fix 4. Unmask a hidden driver with Driver Verifier

30 minutes plus waiting for a crashRead the warningCrashes keep coming, the dump names only ntkrnlmp.exe or ntoskrnl.exe, and Fixes 1 to 3 found nothing.

Driver Verifier watches drivers closely and stops the PC at the moment a driver does something wrong. Microsoft's support engineers recommend it for 0x18 so that the next dump names the faulty driver instead of the Windows kernel.

What can go wrong

Driver Verifier causes more blue screens on purpose and can stop Windows from starting. Create a restore point and save your work first: Undo recent changes with System Restore. If Windows no longer starts, open Safe Mode (Start Windows or a Mac in Safe Mode) and run verifier /reset in an administrator Command Prompt.

  1. Press Win + R, type sysdm.cpl and press Enter. Open Advanced > Startup and Recovery > Settings and set Write debugging information to Kernel memory dump.
  2. Open Terminal (Admin) and run verifier.
  3. Select Create standard settings, then Select driver names from a list.
  4. Tick all drivers whose provider is not Microsoft Corporation, select Finish and restart.
  5. Use the PC as usual until it crashes, then read the new dump as in the section above.
  6. Turn Driver Verifier off when you are done: run verifier /reset and restart.

In Terminal (Admin), to turn Driver Verifier off:

verifier /reset

It worked if: The next crash dump names a third-party driver as IMAGE_NAME instead of the Windows kernel.

If not: Update or remove the driver it names as in Fix 1. If no crash comes within a few days, turn Verifier off and continue with Fix 6.

Fix 5. Repair Windows from the recovery environment when it will not start

30 minutesRead the warningThe stop code appears during every startup, or only Safe Mode works.

When the faulty driver loads at startup, Windows crashes before you can remove it. Safe Mode loads only basic drivers, and the recovery environment can undo changes from outside Windows.

What can be lost

Safe Mode and Startup Repair change nothing in your files. System Restore removes apps and drivers installed after the restore point. Have your BitLocker recovery key ready, because the recovery environment can ask for it.

  1. Turn the PC on and, when the logo appears, hold the power button until it shuts down. Do this twice; the third start opens Automatic Repair.
  2. Select Advanced options > Troubleshoot > Advanced options > Startup Settings > Restart, then press 4 for Safe Mode: Start Windows or a Mac in Safe Mode
  3. In Safe Mode, roll back or uninstall the driver or program from Fix 1 and Fix 2, then restart normally.
  4. If Safe Mode does not open either, run Startup Repair from the same menu: Run Startup Repair
  5. If that fails, use Uninstall Updates or System Restore with a point from before the first crash: Undo recent changes with System Restore
Choose an option screen with Troubleshoot: screenshot taken on Windows 11 26H2
The recovery environment's Choose an option screen: Troubleshoot leads to Startup Settings, Startup Repair and System Restore.

It worked if: Windows reaches the desktop in normal mode and stays up without the stop code.

If not: If Windows starts now, continue with Fix 6. If it still loops, go to Fix 8.

Fix 6. Repair damaged Windows system files with DISM and SFC

20 minutesNo riskNo third-party driver was found, an update failed, or SFC has never run on this PC.

0x18 rarely comes from Windows itself, but a damaged kernel or driver file can act like a buggy driver. This repair rules it out at no cost.

DISM fetches clean copies of Windows components first, then SFC replaces damaged system files with them. Step by step with screenshots: Run DISM and SFC to repair Windows system files

In Terminal (Admin), one after the other:

DISM.exe /Online /Cleanup-Image /RestoreHealth
sfc /scannow

It worked if: SFC reports that it found no integrity violations or that it repaired them, and the next days pass without the stop code.

If not: If SFC cannot repair some files, or the crash returns, check the hardware in Fix 7.

Fix 7. Rule out faulty memory and overclocking

60 minutes or moreLow riskStop codes change from crash to crash, or nothing above helped.

Microsoft treats 0x18 as a driver bug, so hardware is a rare cause. Still, bad RAM can corrupt any kernel object, including its reference count, and then any driver looks guilty.

  1. Reset every CPU and GPU overclock to default, and turn off the memory profile (XMP or EXPO) in the BIOS for the test.
  2. Test the RAM with the tool built into Windows: How to test your RAM with Windows Memory Diagnostic
  3. Check the system disk for errors: Check a disk for errors (chkdsk)
  4. Keep 10 to 15 % of the system disk free, as Microsoft's stop code checklist advises.
  5. Update the BIOS and chipset driver from your PC or motherboard maker's support page.

It worked if: The memory test reports no errors and the PC runs for days at default clocks without a stop code.

If not: If the memory test reports errors, replace or reseat the RAM. If the hardware is clean, go to Fix 8.

Fix 8. Reinstall Windows and keep your files

60 minutes or moreRead the warningEvery fix above failed and the crashes continue.

A reinstall replaces the whole driver store and removes every third-party driver at once, including one that no dump could name. Your personal files stay.

Back up first

Reset PC with Keep my files keeps documents, pictures and the desktop, but removes the apps you installed. Back up your files to an external drive or cloud storage before you start: Back up your files (Windows Backup, File History, Time Machine)

  1. Back up your files and note the apps you will need again.
  2. Open Settings > System > Recovery (on Windows 10: Settings > Update & Security > Recovery).
  3. On Windows 11, select Reinstall now under Fix problems using Windows Update if your version shows it, for a repair that keeps files and apps.
  4. If that is missing or did not help, select Reset PC, then Keep my files and Cloud download.
  5. Afterwards, install drivers from the device makers first, then your apps one at a time. Full method: Reinstall Windows without losing files
Settings, System, Recovery: Fix problems using Windows Update, Reinstall now: screenshot taken on Windows 11 26H2
Windows 11 Recovery settings: Reinstall now and Reset PC both start here.

It worked if: Windows starts fresh, and the stop code does not return as you add drivers and apps one by one.

If not: If 0x18 returns on a clean Windows before any app or extra driver is installed, the cause is hardware. Contact your PC maker or a repair shop.

Still crashing: what to collect and whom to ask

Microsoft's page says the driver must match its reference and dereference calls, which only the driver's maker can fix. So the report goes to the maker of the driver the dump names. Collect the facts once.

  • The three newest .dmp files from C:\Windows\Minidump, and C:\Windows\MEMORY.DMP if Driver Verifier made one.
  • The IMAGE_NAME, MODULE_NAME and FAILURE_BUCKET_ID lines from !analyze -v.
  • Your Windows edition and build from Settings > System > About.
  • The versions of the drivers and security tools you suspect.
  • What you were doing at each crash: a game, a VPN connection, a backup, shutdown.
Where to reportWhen
The maker of the driver in IMAGE_NAMEThe dump or Driver Verifier names a third-party driver
Your antivirus, VPN or tool vendor's supportThe clean boot pointed at their service
Microsoft Q&AOnly Windows files appear, even with Driver Verifier on
Your PC maker or a repair shopMemory test errors, or crashes on a clean reinstall

How to keep the Reference By Pointer BSOD from coming back

Do
  • Install drivers from the device or PC maker, and keep the previous version's installer.
  • Keep one antivirus only; two real-time scanners both load kernel drivers.
  • Update VPN, backup and anti-cheat software before a big Windows update.
  • Create a restore point before you install drivers or system tools.
Do not
  • Use driver packs or driver updater tools from unknown sites.
  • Leave Driver Verifier on after the test.
  • Keep an overclock that never passed a stability test.
  • Ignore the first crash: save its dump while it is still there.

Windows 10 left support on 14 October 2025. A PC that stays on Windows 10 gets kernel fixes only through Extended Security Updates, and hardware makers are slowly stopping driver updates for it.

Frequently asked questions

What does reference by pointer mean?

It means a driver broke the counter Windows keeps for a kernel object. Every time a driver uses a pointer to an object, the count goes up by one, and when it is done, the count goes down by one. When a driver lowers it one time too many, the count reaches zero while the object is still open, or drops below zero. Windows then stops with bug check 0x18 to protect itself and your data.

What is stop code 0x18 or 0x00000018?

0x18 is the number of the REFERENCE_BY_POINTER bug check, and 0x00000018 is the same value written with eight digits. The stop screen shows the name, while Event Viewer, Reliability Monitor and WinDbg often show the number, sometimes as REFERENCE_BY_POINTER (18). They are the same problem with the same fixes. If WinDbg prints 0x18_OVER_DEREFERENCE, a driver released an object too many times.

Is the Reference By Pointer BSOD a hardware problem?

Usually not. Microsoft describes 0x18 as a driver bug: a driver makes extra calls that release an object. Hardware matters only indirectly, when a new device brings a faulty driver, or in rare cases when bad RAM corrupts memory. If the stop code changes from crash to crash, test the memory as in Fix 7. If it is always REFERENCE_BY_POINTER, look for a driver first.

Why does the dump blame ntoskrnl.exe?

Because the Windows kernel is where the broken count was noticed, not where it was broken. The kernel file ntoskrnl.exe, or ntkrnlmp.exe on most PCs, runs the routine that lowers the count, so it is on top of every 0x18 crash. A Microsoft support engineer explained that the faulty driver is then not visible in the dump. Driver Verifier in Fix 4 catches the driver at the moment it makes the mistake.

Can antivirus or VPN software cause REFERENCE_BY_POINTER?

Yes, they are common suspects, because they install kernel drivers that filter files and network traffic. A bug in such a driver can release an object too often. If the crashes began after you installed or updated security or VPN software, update it first, then test with a clean boot as in Fix 2. Do not leave the PC without protection: check that Microsoft Defender is on after you remove another antivirus.

Is the reference by pointer error different on Windows 10 and Windows 11?

The code, its meaning and its fixes are the same on Windows 10 and Windows 11. What differs is the screen: on Windows 11 24H2 and later the stop screen is black instead of blue. Some settings paths also differ, and this guide gives both. Windows 10 left support on 14 October 2025, so a Windows 10 PC gets fewer driver updates, which can make an old driver bug last longer.

My PC crashes with REFERENCE_BY_POINTER on startup. What now?

A crash before the desktop means a driver that loads at startup is at fault. Let Windows open Automatic Repair by interrupting the start twice, then go to Startup Settings and start in Safe Mode, which loads only basic drivers. From there, roll back or remove the suspect driver or program. If Safe Mode fails too, use Startup Repair, Uninstall Updates or System Restore, as Fix 5 explains.

Is REFERENCE_BY_POINTER a sign of a virus?

Not usually. The stop code comes from Windows when a driver breaks a reference count, and almost always the driver is a normal, signed one with a bug. Malware that loads its own kernel driver could in theory cause it, but nothing ties 0x18 to malware in particular. If you also see unknown programs, pop-ups or a disabled antivirus, run a full Microsoft Defender scan: How to scan for malware with Microsoft Defender

Can I just ignore a single reference by pointer crash?

One crash with no repeat can be left alone. Microsoft says that in most cases the restart solves the problem and no further action is needed. Still, copy the newest file from C:\Windows\Minidump while it is there, because it names the driver if the crash returns. When the same stop code comes back, follow the fixes on this page, starting with the driver the dump names.

I don't speak English. What should I do about this screen?

This page is about the stop code REFERENCE_BY_POINTER (0x18) in Windows, also asked as "как это исправить", "jak naprawić ten błąd" or "máy bị gì". In short: update or remove the driver the crash dump names, test with a clean boot, and undo new hardware or the latest update. If the PC does not start, use Safe Mode. A browser translation of this page shows every step in your language.

Sources

  1. Microsoft Learn: Bug Check 0x18 REFERENCE_BY_POINTER (learn.microsoft.com)
  2. Microsoft Support: Troubleshooting Windows unexpected restarts and stop code errors (support.microsoft.com)
  3. Microsoft Q&A: What does this bugcheck mean? (REFERENCE_BY_POINTER dump analysis) (learn.microsoft.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 the Reference By Pointer BSOD (0x18) in Windows 10 and 11

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