You are playing a game at 120 frames per second. The FPS counter looks healthy. But the game feels choppy. Camera movements feel jerky. Something is clearly wrong, but the numbers seem fine.
This disconnect is one of the most common frustrations in PC gaming, and the FPS counter is responsible for it. FPS tells you how many frames were rendered in a second. It tells you nothing about whether those frames arrived evenly. Frame time graphs tell you the thing FPS cannot.
Why FPS Alone Is Not Enough
FPS is an average. A game running at 120 FPS produced 120 frames during the last second. What it does not tell you is whether those 120 frames were spaced evenly or arrived in irregular bursts.
Consider two scenarios. In the first, every frame takes 8.3 milliseconds to render. In the second, frames alternate between 2ms and 14ms. Both average 120 FPS. The first feels perfectly smooth. The second feels noticeably uneven because your monitor receives frames at irregular intervals and motion becomes inconsistent.
Frame time is the measurement of how long each individual frame takes to render, expressed in milliseconds. A frame time graph plots these measurements over time, showing whether frames are arriving evenly or lurching around in ways that cause stutter. This is the metric that actually describes whether a game feels smooth.
What Frame Time Numbers Mean
The target frame time at any given frame rate is simple to calculate. Divide 1000 by your target FPS.
At 60 FPS, each frame should take 16.7ms. At 120 FPS, the target is 8.3ms. At 144 FPS, it is 6.9ms. At 165 FPS, it is 6.1ms.
These are the numbers your frame time graph should hover around. Small deviations are normal and invisible. A frame taking 9ms instead of 8.3ms at 120 FPS is imperceptible. A frame taking 33ms in the middle of 8ms frames is a stutter you will feel immediately.
How to Get a Frame Time Graph
The most widely used tool is MSI Afterburner combined with RivaTuner Statistics Server, commonly called RTSS. Both are free. Afterburner handles hardware monitoring and RTSS creates the on-screen overlay. After installation, open Afterburner, go to Settings, then the Monitoring tab, scroll to Frametime, and enable it for on-screen display. A graph appears in the corner of your screen while gaming, updating in real time.
CapFrameX is a dedicated frame time analysis tool that records sessions and displays detailed graphs after the fact. It is more useful for careful analysis than real-time monitoring.
NVIDIA FrameView and the NVIDIA app's performance overlay both show frame times for NVIDIA GPU users with minimal setup. For AMD users, Radeon Software's performance overlay includes frame time display.
Intel's XeSS Overlay and PresentMon are more technical tools used by developers and enthusiast benchmarkers. For most users, MSI Afterburner with RTSS covers everything needed.
How to Read the Graph
The frame time graph plots time along the horizontal axis and frame time in milliseconds along the vertical axis. Each point on the graph represents how long a single frame took to render. The line moves left to right as new frames arrive.
What Good Looks Like
A healthy frame time graph is a flat, stable line sitting close to your target frame time value. Minor variation, a line that wobbles slightly rather than sitting perfectly still, is completely normal. The human eye cannot perceive frame time differences of one or two milliseconds. A graph that looks like a gentle ripple around your target value indicates a smooth gaming experience regardless of whether it is mathematically perfect.
What Bad Looks Like
Spikes are the main thing to look for. A spike is a sharp upward jump in the line, representing a frame that took significantly longer than expected. A single spike to 33ms in an otherwise 8ms graph is the equivalent of one frame taking four times as long as it should. You feel that as a brief freeze or hitch.
Repeated spikes occurring at regular intervals create a rhythmic stutter that is particularly uncomfortable to play through. Irregular spikes scattered through the graph create inconsistent hitching. Both are problems, but regular spikes are often easier to diagnose because their periodicity points toward a specific cause.
A graph that is consistently elevated above the target value without spikes means the hardware is simply not powerful enough for the settings chosen. Every frame is taking too long. This is a performance problem rather than a stutter problem, and the solution is reducing graphics settings rather than troubleshooting stutter.
Reading 1% Low and 0.1% Low FPS
Frame time analysis tools display 1% low and 0.1% low FPS alongside average FPS. These metrics are directly related to frame times and describe the worst frames you experienced during a session.
1% low FPS represents the average FPS during the worst one percent of frames. 0.1% low represents the worst tenth of a percent. These numbers capture the spikes and hitches that drag performance below the average.
A healthy system has 1% lows that stay close to average FPS. If average FPS is 120 and 1% lows are 110, the game is smooth with minor variation. If average FPS is 120 and 1% lows are 45, you are experiencing severe stutters even though the headline number looks impressive.
The gap between average FPS and 1% lows is a quick summary of stutter severity. A small gap means consistent frame delivery. A large gap means frequent hitches that are clearly perceptible during play.
Common Frame Time Patterns and What They Mean
Different stutter problems produce recognisable patterns in the frame time graph. Learning to match the pattern to the cause makes diagnosis considerably faster.
Regular Spikes at Fixed Intervals
A spike occurring every few seconds like clockwork points toward a background process waking up on a timer. Common culprits include antivirus software performing periodic scans, Windows telemetry reporting, and poorly optimised game engines that flush their memory buffers on a fixed schedule.
Regular spikes at exactly one-second intervals in particular often indicate CPU interrupt issues or a background service with a one-second polling interval. Opening Task Manager during the affected session and sorting by CPU usage often identifies the process responsible.
Spikes During Camera Movement or Level Traversal
A graph that is mostly smooth but spikes sharply whenever you turn the camera quickly or move through an open world indicates traversal stutter. This is caused by the game streaming new assets from storage into memory in real time.
Traversal stutter is increasingly common in modern open-world games built on Unreal Engine 5 and similar streaming-heavy engines. It is often a game-side problem rather than a hardware problem, though switching from a SATA SSD to an NVMe drive reduces it in some titles. DirectStorage support in recent games addresses this by allowing assets to stream directly from the SSD to the GPU without passing through the CPU.
Spikes at the Start of a Session That Gradually Disappear
Frame time spikes during the first five to fifteen minutes of a gaming session that settle into a smooth graph afterward are almost always shader compilation. Modern games compile shader programs on the fly the first time they encounter a new visual effect. This compilation pauses rendering briefly and appears as a frame time spike.
After the shader is compiled it is cached, so the same effect in a subsequent session runs without the spike. The stutters during the first session are the price of just-in-time compilation. This behaviour is common in DirectX 12 and Vulkan titles and is a design choice rather than a bug, though it is a frustrating one.
Consistently Elevated Frame Times Without Spikes
When the entire graph sits above your target frame time without dramatic spikes, the GPU is simply not keeping up with the current settings. Every frame takes longer than it should. The solution is reducing graphics settings, lowering resolution, or enabling DLSS, FSR, or XeSS to reduce the GPU's workload.
Random Spikes With No Clear Pattern
Random irregular spikes that do not correlate with any specific in-game action and occur unpredictably are the hardest to diagnose. Common causes include thermal throttling, where the CPU or GPU reduces its clock speed to prevent overheating, RAM running at a higher speed than its XMP profile supports stably, a background application consuming CPU time at random moments, and driver issues causing the GPU to stall.
Checking CPU and GPU temperatures alongside the frame time graph during a stutter event narrows the cause significantly. If temperatures spike just before a frame time spike, thermal throttling is the likely cause. If temperatures are stable, the cause is elsewhere.
Fixes for the Most Common Patterns
Cap Your Frame Rate
The single most effective fix for many stutter patterns is capping FPS slightly below your monitor's refresh rate using RTSS. Set the limiter to 141 for a 144Hz monitor, 117 for a 120Hz monitor, and so on.
An uncapped frame rate causes the GPU to run at maximum output continuously, which can push it to the point where the render queue backs up and frame delivery becomes inconsistent. Capping FPS keeps the GPU slightly below full saturation, giving it headroom to deliver frames evenly rather than in bursts. Frame times often flatten noticeably with a cap applied.
Clear and Resize the Shader Cache
For shader compilation stutter, clearing the existing shader cache and setting it to a larger size prevents repeat compilation issues. In NVIDIA Control Panel, go to Manage 3D Settings, find Shader Cache Size, and set it to Unlimited or at least 10GB. The default is often too small for modern titles.
After changing the cache size, clear the existing cache through Windows Disk Cleanup by selecting DirectX Shader Cache. The first session after clearing will re-experience compilation stutter as the cache rebuilds. Subsequent sessions benefit from the larger cache.
Enable XMP or EXPO for RAM
RAM running at its default JEDEC speed rather than its rated speed is a common and overlooked source of stutter. A 6000MHz DDR5 kit running at 4800MHz because XMP was never enabled in the BIOS performs significantly worse in games that are CPU-bound or memory-bandwidth constrained.
Enter the BIOS, find the XMP or EXPO setting, and enable it. This configures the RAM to run at its rated speed. The performance improvement in CPU-limited scenarios is often large enough to reduce frame time variance noticeably.
Check Thermals
Download HWiNFO64 and monitor CPU and GPU temperatures alongside RTSS during a gaming session. A CPU consistently hitting its thermal limit, typically 100 degrees Celsius on Intel processors and around 95 degrees on AMD, will throttle its clock speed to protect itself. This throttling appears in the frame time graph as periodic spikes whenever temperatures peak.
Repasting the CPU cooler, improving case airflow, or using a more capable cooler addresses thermal throttling. On laptops, undervolting the CPU reduces heat output without meaningfully affecting performance.
Frequently Asked Questions
Is a perfectly flat frame time line achievable in real games?
In practice, no. Some variation is normal in all games, particularly during action-heavy scenes, particle effects, and area transitions. The goal is not a mathematically perfect flat line but a stable line with minimal deviation and no dramatic spikes. With a variable refresh rate monitor like G-Sync or FreeSync, moderate frame time variation is compensated by the display automatically, making smooth motion achievable even without perfectly consistent frame times.
What frame time is acceptable for gaming?
At your target FPS, frame times should stay within roughly 20 to 30 percent of the target value most of the time. At 60 FPS the target is 16.7ms, so frames between 14ms and 20ms feel smooth. Spikes above double the target value, anything above 33ms at 60 FPS, are perceptible as hitches. Spikes above triple the target are clearly visible freezes.
Does enabling V-Sync help or hurt frame times?
V-Sync eliminates screen tearing by syncing frame delivery to the monitor's refresh rate. However, when FPS drops below the monitor's refresh rate, V-Sync doubles the frame time to maintain synchronisation, causing frame time to jump from 16.7ms to 33.3ms at 60Hz. This appears in the frame time graph as large regular spikes whenever performance fluctuates. G-Sync and FreeSync handle this more gracefully by varying the monitor's refresh rate to match the GPU's output, producing smoother frame times without the doubling penalty.



Discussion (0)
Be the first to comment.