How to capture frame-time data
- Pick a capture tool that records every frame: PresentMon, CapFrameX and NVIDIA FrameView are free options. Menu names vary by tool and version.
- Start the game and go to the scene or route you want to measure. Use the same one each time so results are comparable.
- Start the capture with the tool's hotkey, play for at least 60 seconds, then stop it.
- Find the exported CSV and choose it above. The analyzer looks for a MsBetweenPresents or FrameTime column and ignores the rest.
How to read the graph
A low, flat line means frames are arriving evenly, which is what smooth gameplay looks like. Tall, thin spikes are single slow frames that you feel as hitches. A thick, jittery band means frame times vary from frame to frame even without big spikes. The dashed line shows the frame time of the refresh rate you chose: frames above it took longer than your display can show in one refresh.
How the numbers are calculated
- Average FPS is the number of frames divided by the capture time, which equals 1000 divided by the mean frame time.
- 1% low and 0.1% low are the average FPS of the slowest 1% and 0.1% of frames. Other tools sometimes use the 99th percentile frame time instead, so this page shows that figure as well. Only compare lows produced by the same method.
- Stutter event: a frame that takes more than 2 times the median of the 61 frames around it and at least 8 ms longer than that median. Consecutive slow frames count as one event.
- Frames over budget are those longer than 10% above the frame time of the refresh rate you pick.
- Findings apply simple rules to these numbers. They point to likely areas to check and cannot prove a cause.
What this tool cannot tell you
A frame-time capture shows that frames were slow, not why. It cannot separate a CPU limit from a GPU limit without utilization data, and results from different capture tools or settings are not directly comparable. Treat the output as evidence to guide the next test, not as a final diagnosis.
