Skip to content

GPU Benchmark

Measure real graphics performance with a demanding WebGL shader at rising load — then detect thermal throttling by comparing early frames against late ones.

GPU Benchmark

Live

Renders a deliberately expensive shader at rising load for 12 seconds, then compares early frames against late ones to detect throttling.

Readings

Live FPS
0
Sustained FPS
0
Peak FPS
0
Throttling
0%
Shader load
0
Elapsed
0s
GPU
0

Test something else

How to use this test

  1. Keep this tab focused. Browsers throttle background tabs heavily. Switching away mid-run invalidates the result.
  2. Run the 12-second benchmark. Shader complexity ramps steadily, so the GPU is pushed until it can no longer hold the refresh rate.
  3. Watch the frame rate trace. A steady line is healthy. A line that declines while load is constant is throttling.
  4. Re-run when the machine is warm. Throttling often only appears after 20 minutes of real use — testing cold can miss it entirely.

Why a frame counter is not a benchmark

Most browser GPU tests draw something and count frames. On any modern machine that measures your monitor, because the browser synchronises to the display refresh rate and the GPU finishes each frame with time to spare. Everyone gets 60, or 144, and learns nothing.

This test ramps the per-pixel cost of the shader steadily over twelve seconds, from trivial to genuinely demanding. At some point your GPU can no longer finish a frame within the refresh interval, the frame rate falls below the cap, and from that moment onward you are measuring the graphics hardware rather than the display.

The shader is deliberately fragment-heavy — a loop of trigonometric work per pixel — because that is what scales cleanly with GPU capability and is hard for a driver to optimise away.

What this number is and is not. It measures performance as seen from JavaScript in this browser, on this machine, in its current power and thermal state. It is directly comparable between two runs on the same machine — which is what makes it useful for answering "did that change help?" — and only loosely comparable against a different machine or a native benchmark. We would rather say that than publish a score implying more precision than it has.

Throttle detection is the useful part

A single performance figure tells you how fast your GPU is when cold and idle. That is not the condition you care about. What matters is whether it stays fast.

Thermal throttling is the mechanism: as the GPU heats, it lowers clock speeds to remain within safe limits. Frame rate falls progressively rather than suddenly, which is why it feels like a game "getting worse the longer you play" and why people misattribute it to memory leaks or drivers.

Detecting it requires comparing like with like. Since this test deliberately increases load over time, simply comparing the start against the end would be meaningless — of course later frames are slower. Instead we isolate frames rendered at a comparable shader load in the first and second halves of the run and compare those. A significant gap between them, at the same workload, is throttling rather than increased difficulty.

Drop at equal loadInterpretation
under 5%Normal variance
5 – 12%Mild — worth watching, probably fine
over 12%Throttling. Investigate cooling.

Fixing throttling

  1. Dust. Blocked fans and clogged fins are the most common cause by a wide margin, and compressed air costs almost nothing.
  2. Airflow. On a laptop, lift the rear so air reaches the underside intake. A laptop on a bed or sofa is effectively suffocating.
  3. Ambient temperature. A warm room raises every temperature in the system. This is why throttling appears in summer and vanishes in winter.
  4. Thermal paste. It dries out over years. Repasting is a real fix on machines more than about four years old.
  5. Power limits. Some laptops cap GPU power on battery regardless of temperature. Test on mains to separate the two.
Test warm, not cold. A machine that has been idle will pass this easily and still throttle badly in a game. For a realistic result, run something demanding for twenty minutes first, then come back and run the benchmark.

Related tests

The CPU benchmark shows poor multi-core scaling when a machine is thermally limited, which is a useful cross-check. The monitor test measures your actual refresh rate, which sets the ceiling on everything measured here.

Frequently asked questions

Why is my frame rate capped at 60?

Almost certainly vsync. Browsers synchronise rendering to your display refresh rate, so a 60 Hz monitor caps the measurement at 60 regardless of how capable the GPU is. This is why the test ramps shader complexity: once the GPU can no longer hold the refresh rate, the frame rate drops below the cap and you start measuring the GPU rather than the monitor.

What is thermal throttling?

When a GPU gets too hot it reduces its clock speed to stay within safe temperature limits. Performance drops, and it drops progressively as heat builds. This is the fault that makes a game feel smooth for five minutes and then degrade, and it is invisible to any single-point measurement — which is why this test compares frames at comparable load early and late in the run.

How do I fix throttling?

Start with dust. Blocked fans and clogged heatsink fins are by far the most common cause and cost nothing to fix. On a laptop, raise the rear so air can reach the intake underneath — laptops on soft surfaces suffocate. Check ambient temperature, since a warm room shifts everything. On older machines thermal paste degrades and repasting is a genuine fix rather than a myth.

Why does my GPU show as "Masked by browser"?

The WebGL renderer string is being withheld for privacy reasons. Firefox restricts it by default, private browsing hides it, and Chromium is progressively reducing its detail. The benchmark still works — it measures performance rather than reading a model name.

Is this comparable to 3DMark or a game benchmark?

No, and it does not try to be. WebGL runs through a browser translation layer with real overhead, and the shader here is chosen to stress fragment throughput rather than to model a game engine. Treat the number as a same-machine comparison tool: before and after a driver update, on battery versus mains, cold versus warm. Those comparisons are genuinely valid.

WebGL2 is not available. What now?

Usually hardware acceleration is disabled in your browser settings — check there first, since troubleshooting advice often suggests turning it off and people forget to turn it back on. Failing that, browsers block known-problematic graphics drivers, so updating your driver often resolves it. Trying another browser separates a browser problem from a driver one.