There is a special kind of frustration in watching your laptop get slower over days. Fresh after a reboot it flies; by Thursday it crawls, with Task Manager showing 90%+ memory usage even though you are running the same programs as Monday. Restarting fixes it — until it does not, because the cycle repeats. That progressive degradation is the signature of a memory leak: some process is consuming RAM and never giving it back.

True memory leaks are software bugs, and they are more common than most people realize. A browser tab with a runaway script, a driver with a pool leak, a background utility that accumulates handles — any of these can bleed memory for days. The good news is that leaks are diagnosable with built-in Windows tools, and once you name the leaking process, the fix is usually an update, a settings change, or a replacement away.

This guide shows you how to confirm a leak, identify the culprit, and fix it.

Why this happens

  • Application bugs: Programs that allocate memory for tasks and never free it — common in long-running apps and browser tabs.
  • Driver pool leaks: Faulty drivers (network, audio, storage) leak kernel pool memory, visible as growing non-paged pool.
  • Handle leaks: Programs opening handles (files, registry keys, GDI objects) without closing them accumulate until exhaustion.
  • Runaway browser tabs: JavaScript-heavy pages with timers and event listeners grow indefinitely if left open for days.
  • Background utilities accumulating state: Monitoring tools, overlays, and sync clients that cache without bounds.
  • Windows Update components stuck: Update workers that never complete can hold growing working sets.
  • Memory compression masking: The kernel compresses pages to hide pressure, making the real consumer harder to spot.
  • Superfetch/SysMain misjudgment: Rarely, the preload service itself accumulates excessively on certain configurations.

How to fix it

Work through these in order — diagnose first, then act.

Fix 1: Confirm the leak pattern

  1. Open Task Manager, Details tab, right-click the column headers, and enable Handles, Threads, and Memory (private working set).
  2. Sort by memory and note the top consumers; record their values.
  3. Leave the laptop running normally for 4–6 hours (or overnight), then compare — a leaker shows steady growth.
  4. Also check Performance, Memory for the non-paged pool size; growth there points to a driver leak (Fix 5).

This observation period is the diagnosis. Normal programs fluctuate; leakers climb monotonically. Do not skip it — “high memory” without a growth pattern is a capacity problem, not a leak, and gets different fixes. Our step-by-step high memory guide covers the capacity side.

Fix 2: Use Resource Monitor and PoolMon for precision

  1. Open Resource Monitor (resmon.exe), Memory tab, and sort by Commit — the biggest committers are your suspects.
  2. For suspected driver leaks, install the Windows Driver Kit tools and run poolmon.exe as administrator.
  3. In PoolMon, sort by Bytes and watch for a tag growing unboundedly over 30+ minutes.
  4. Look up the pool tag’s driver using findstr against C:\Windows\System32\drivers\*.sys or an online pool-tag database.

Task Manager shows user-mode leaks well; PoolMon is the tool for kernel pool leaks that Task Manager attributes vaguely to System. A growing pool tag names the exact driver file. This is the professional-grade step, and it takes the mystery out of “System is using all my RAM” cases completely.

Fix 3: Update or replace the leaking application

  1. Once you have named the process, check for updates — memory leaks are common bug-fix items in changelogs.
  2. Check the vendor’s forums for known leak reports and workarounds for your version.
  3. If no update exists, look for settings that limit the leak: cache sizes, history lengths, background refresh intervals.
  4. As a last resort, replace the program with an alternative — no app is worth a daily reboot.

Most user-mode leaks are fixed by updates within a version or two, because leaks are embarrassing bugs vendors prioritize. While waiting, mitigations help: restarting the app daily via a scheduled task, or limiting the feature that leaks (e.g., capping browser tab counts). Document which version fixed it so you recognize regressions.

Fix 4: Tame browser memory growth

  1. In your browser’s task manager (Shift+Esc in Chrome/Edge), find tabs and extensions with the largest footprints.
  2. Remove or disable extensions you do not actively use — extensions are disproportionate leakers.
  3. Enable tab discarding/sleeping features so background tabs release memory.
  4. For a tab that grows without bound, report it and avoid leaving it open; use bookmarks instead of permanent tabs.

Browsers are the number one source of user-mode memory leaks on modern laptops, simply because people leave them running for weeks with dozens of tabs. Extension leaks are especially sneaky since the browser gets blamed. A monthly extension audit — disabling everything, then re-enabling only what you use — cures a remarkable number of “mystery” memory problems.

Fix 5: Fix driver pool leaks

  1. Identify the leaking driver via PoolMon (Fix 2) — common offenders are network, audio, and third-party storage filter drivers.
  2. Update that driver from the manufacturer’s site — Dell, HP, and Lenovo all host model-specific drivers — or use the Intel driver detection tool for Intel components.
  3. If the newest driver still leaks, try the previous version — regressions happen.
  4. As a temporary measure, disable the device in Device Manager if you can live without it while awaiting a fixed driver.

Driver leaks are the serious ones: kernel pool memory cannot be reclaimed without a reboot, and non-paged pool growth eventually crashes the system. Treat a confirmed driver leak as urgent — update immediately, roll back if the update introduced it, and contact the vendor with your PoolMon evidence. This is also worth checking when ntoskrnl CPU is high , since the causes overlap.

Fix 6: Disable or replace leaky background utilities

  1. In Task Manager’s Startup apps tab, disable utilities you do not need: RGB controllers, overlays, “helpers,” updaters.
  2. For utilities you keep, check for updates and look for memory-related settings (logging verbosity, history size).
  3. Replace chronic leakers: many OEM utilities have lighter third-party alternatives or are simply unnecessary.
  4. Monitor for a week after each change — utility leaks reveal themselves over days, not minutes.

Background utilities are leak-prone because they run for the entire uptime of the machine, giving even slow leaks time to accumulate. They are also the easiest to live without — most “helper” apps provide features you never use. Our startup apps guide for Windows 11 helps you audit the full autostart set.

Fix 7: Rule out hardware and reset as needed

  1. Run Windows Memory Diagnostic (mdsched.exe) to rule out faulty RAM mimicking leak symptoms.
  2. Install all pending Windows updates — Microsoft does fix kernel and system-component leaks via cumulative updates.
  3. If a specific update introduced the leak, uninstall it via Update history and pause updates briefly.
  4. For a leak you cannot source after all this, consider a clean Windows install from the Windows 11 download page — it eliminates software causes definitively.

Faulty RAM causes symptoms that look like leaks (growing working sets, increasing errors), so the memory test earns its place. And when every software lead is exhausted, a clean install is the definitive experiment: if the leak persists on a fresh system, the cause is hardware or firmware. Document your findings either way — Microsoft’s Windows support and vendor forums both take leak reports more seriously with PoolMon data attached.

Closing

Memory leaks announce themselves through progressive slowdown that reboots temporarily cure. Confirm the growth pattern, name the process with Task Manager or PoolMon, and fix it at the source — update, reconfigure, or replace. More RAM only postpones a leak; the real fix is stopping the bleed. Work the list patiently, because the observation steps are what separate a true leak from ordinary high usage, and the right fix follows directly from the right diagnosis.

Frequently asked questions

What is a memory leak in Windows 11?
A memory leak happens when a program allocates RAM but never releases it back, so its memory footprint grows indefinitely the longer it runs. Unlike normal high memory usage — which drops when you close programs — a leak persists and grows until the system slows dramatically or the process crashes. The fix is identifying the leaking program and updating, reconfiguring, or replacing it.
How can I tell if I have a memory leak or just high RAM usage?
Watch a suspect process in Task Manager’s Details tab over several hours. Normal usage fluctuates up and down; a leak climbs steadily in one direction without dropping. Also check whether free memory shrinks over days of uptime without new programs opening. A reboot temporarily fixing everything, followed by gradual slowdown, is the classic leak signature.
Can Windows 11 itself have a memory leak?
Rarely, but system components and drivers can leak — particularly third-party drivers (network, audio, storage) with pool leaks, which show up as growing non-paged pool memory. Genuine Windows bugs causing leaks are usually fixed quickly via updates. Most reported ‘Windows memory leaks’ turn out to be third-party software or drivers.
Will adding more RAM fix a memory leak?
No — more RAM only delays the symptoms. A true leak grows without bound, so it will eventually consume any amount of memory. Adding RAM is the right fix for legitimately high memory usage from heavy workloads, but a leak must be fixed at its source: the leaking program or driver.