How to Use PerfMon Data Collector Sets to Catch Random PC Freezes

The most difficult PC bugs are the ones that only happen occasionally: your system runs smoothly for hours, but once or twice a day it freezes completely for 15 seconds. By the time you open Task Manager, the freeze is gone. The solution is running a background Data Collector Set in Windows Performance Monitor.

Step 1: Open Performance Monitor (perfmon)

Press Win + R, type perfmon.msc, and press Enter.

Step 2: Create a Custom Data Collector Set

  1. In the left-hand pane, expand Data Collector Sets.
  2. Right-click User Defined > select New > Data Collector Set.
  3. Name it PC_Freeze_Tracker.
  4. Choose "Create manually (Advanced)" and click Next.
  5. Check the box for Performance counter and click Next.

Step 3: Select Essential Diagnostic Counters

Click the Add... button to attach the telemetry counters that reveal the root cause of lockups:

Essential PerfMon Counters
1. Processor > % Processor Time > _Total (Detects overall CPU spikes)
2. Memory > Available MBytes (Catches slow memory leaks)
3. PhysicalDisk > Avg. Disk sec/Transfer (Detects disk controller hangs > 500ms)
4. System > Processor Queue Length (Shows thread starvation)

Set the Sample interval to 5 seconds. This creates minimal background overhead (less than 0.1% CPU) while capturing accurate time slices.

Step 4: Start the Data Collector

Click Finish. In the User Defined list, right-click PC_Freeze_Tracker and click Start (green arrow icon).

PerfMon is now silently recording telemetry to disk in the background. Use your PC normally throughout the day until you experience another freeze.

Step 5: View the Crash Telemetry Graph

After the freeze occurs, return to PerfMon, right-click your collector set, and click Stop.

  1. Expand Reports > User Defined > PC_Freeze_Tracker.
  2. Click the generated report timestamp.
  3. A timeline graph will display: look at the exact minute when your computer froze.
Diagnosing the Spike
• If Avg. Disk sec/Transfer spiked up to 2.0 or 5.0 seconds while CPU was idle, your SSD/HDD controller is freezing on bad blocks or sleep states.
• If Available MBytes collapsed to near zero, an app or driver leaked RAM until Windows had to aggressively swap pages to disk.