How to Measure Your PC's Gaming Performance: A Practical Guide
Measuring well is what separates knowing from guessing. Which free tools to use, which numbers to watch (frame time, 1 % lows, per-thread usage, temperature), a repeatable test protocol for online games and how to read the graphs.

In short
- Measuring performance takes three things: a repeatable, demanding scene; a tool that records the time of each frame plus per-thread CPU usage and GPU usage; and changing one variable at a time.
- The key numbers are frame time, the average, the 1 % and 0.1 % lows, GPU usage, per-thread CPU usage, VRAM, and temperatures with clocks.
- PresentMon and CapFrameX are free and record the time of each frame; the graphics makers' overlays are for a quick live reading.
- An online game has no built-in benchmark: you have to repeat a route or a spot and tolerate some variation between runs. Do three runs and keep the median.
Measuring well is what separates knowing from guessing. Three things are enough: a repeatable, demanding scene, a tool that records the time of each frame plus per-thread CPU usage and GPU usage, and changing one variable at a time. This guide goes through the free tools, the numbers that matter, a test protocol and how to read the results, with the focus on online games, where measuring is harder.
What to measure
| Measurement | What it says | What it is for |
|---|---|---|
| Frames per second (average) | General performance | Quick comparison |
| Frame time (ms) | How long each frame takes | Seeing stutter and regularity |
| 1 % and 0.1 % lows | The worst frames | Measuring real smoothness |
| GPU usage (%) | How hard the card works | Telling CPU-bound from GPU-bound |
| Per-thread CPU usage (%) | Which threads are saturated | Detecting a single-thread limit |
| VRAM used (MB) | Card memory in use | Detecting stutter from lack of memory |
| RAM used (MB) | System memory in use | Same |
| Temperatures and clocks | Whether something heats and drops | Detecting thermal limits |
| Ping and packet loss | Network quality | Separating network problems from PC ones |
The definitions of average and lows, and the relation between fps and milliseconds, are in frames per second and milliseconds; to convert figures, use the fps and ms calculator.
The tools, all free
- Windows Task Manager. Nothing to install: CPU usage (switch the graph to logical processors to see each thread), GPU, memory and disk. It is the starting point.
- Graphics makers’ overlays. NVIDIA’s (in its app) and AMD’s (in its driver software) show frame rate, frame time, GPU and CPU usage, temperatures and VRAM on screen. Handy for live viewing.
- PresentMon. A free, open-source tool from Intel that measures frame durations for the CPU, GPU and display, and latencies, in DirectX, OpenGL and Vulkan games. It includes a capture app with an overlay and exports frame-by-frame data to CSV.
- CapFrameX. Builds on PresentMon to capture, analyze and compare: it computes the average and percentiles (the equivalent of the 1 % lows) and lets you overlay captures from different configurations.
- Sensor monitors (for example HWiNFO or other tools that read temperatures and clocks) to watch whether the CPU or GPU lowers its clock from heat.
- Network utilities:
ping,pathpingandtracertin a Windows terminal (ping, latency and servers).
A note of honesty: each tool computes metrics slightly differently, so always compare numbers made with the same tool and the same capture settings.
A test protocol that does not mislead
- Prepare the environment. Close background programs, update drivers and let the PC warm up a few minutes: the first minute of a game with an empty shader cache does not represent the rest.
- Choose the scene. The busiest zone you will play (a crowded city, a big base). An empty landscape teaches you nothing.
- Define a route or a spot. A short route of 60 to 120 seconds, always the same, or a fixed spot with the camera turning the same way.
- Measure the baseline. Three runs with the current configuration. Note average, 1 % low, GPU usage and the busiest CPU thread.
- Change one thing. One setting, or one part, or one BIOS setting. Never two at once.
- Measure again, another three runs, and compare medians.
- Save the results in a simple sheet so you do not rely on memory.
| Run | Change | Average | 1 % low | GPU | Max CPU thread | Notes |
|---|---|---|---|---|---|---|
| 1 to 3 | Baseline | |||||
| 4 to 6 | Shadows: High → Medium | |||||
| 7 to 9 | Upscaler: Quality |
Particulars of an online game
An MMO has no built-in benchmark, and the scene changes: players and fauna are not always in the same place. So:
- Do more runs and trust the median.
- Look for large differences (10-15 % or more); small ones get lost in noise.
- Measure at a similar time of day, with a similar server load.
- Note the ping of each run, in case a network spike hides a settings change.
How to read the results
| What you see | What it means | What to do |
|---|---|---|
| GPU at 95-100 % and low frame rate | The GPU limits | Lower internal resolution, shadows, lighting |
| GPU under 80 % and one thread at 100 % | The CPU limits | Lower population and draw distance |
| Frame rate pinned at one number | A limiter or V-Sync | Check the limits (guide) |
| Good average but very low 1 % lows | Stutter: memory, storage, VRAM | Check RAM, SSD and textures (guide) |
| Frame rate drops after a few minutes | Heat or power limit | Check temperatures and cooling |
| Everything fine on the PC, bad in the game | Network or server | Measure ping and packet loss |
On a frame-time graph, a flat line is the ideal; isolated spikes are loading hitches (disk or memory); a regular sawtooth points to sync problems or a badly set limiter; and a line that rises over time, to heat.
To decide the limit, the resolution test is in CPU-bound versus GPU-bound, and the review of causes in what a bottleneck is.
Mistakes that invalidate a measurement
- Measuring with other things open. A browser with video or a download changes the result.
- Comparing captures from different tools. Each defines the lows its own way.
- Measuring the first run. The shader and data caches fill on the first load; discard it.
- Changing zone between runs. A different cloud or a bigger crowd can move several milliseconds by themselves.
- Not noting the configuration. A week later you do not remember what was on. Write down the upscaler, the limiter, the memory profile and the driver version.
- Confusing correlation with cause. If the frame rate rises after a restart, it may have been the restart and not the setting. That is why you repeat.
How we measure
At COLONIZED, a space survival MMO in development with Unreal Engine 5 (closed alpha applications open, first waves planned for winter 2026-2027, not yet playable), we measure in pairs: one change, one measurement before and another after, and sometimes undoing the change to see the cost return. Absolute figures between two launches cannot be compared, because the sky alone moves about 3 ms. The full story, with the development build’s figures, is in our guide to optimizing Unreal Engine 5 games. We have not published system requirements.
Questions and answers
Which tool should I use to measure fps and frame time?
PresentMon, from Intel, is free and open source, and records the time of each frame. CapFrameX builds on it to compute averages and lows. NVIDIA's and AMD's overlays are for a quick reading during play.
How do I measure CPU usage per core?
In Windows Task Manager, Performance tab, CPU: right-click the graph and choose Change graph to, Logical processors. You will see one graph per thread. One thread near 100 % with the rest free indicates a single-thread limit.
How many times should I repeat a test?
At least three runs per configuration, 60 to 120 seconds each, in the same place and under the same conditions. Compare the medians. If there is a lot of difference between runs, repeat at a time with less variation.
How do I measure performance in an MMO that has no benchmark?
Choose a short, repeatable route, or a fixed spot, in the busiest zone you play, at a similar time of day. Other players' load changes between runs, so repeat several times and look for large differences, not small ones.
Sources
Third-party figures link to their source. The date is the publication date or, when there is none, the day we checked the page.
- PresentMon: capture of frame times and latencies · Intel (GameTechDev, GitHub) · 2026-10-22
- CapFrameX: capture, analyze and compare game performance · CapFrameX (GitHub) · 2026-10-22



