Average rendered frames per second
Graphics Benchmark
Render an animated WebGL scene and measure frame rate and frame-time consistency. Results depend on your browser, display, and GPU.
Run the graphics test to measure rendering performance.
WebGL workload
Test results
Average milliseconds per frame
Approximate slower-frame performance
Frames rendered during the timed test
Waiting to start
This measures a browser WebGL workload, not native gaming FPS. The browser compositor, refresh rate, power settings, and GPU acceleration mode affect results. The test runs for 15 seconds.
How to read the results
This is a browser-based WebGL rendering workload, not a universal GPU rating or a guarantee of performance in a particular game.
Rendering workload
Each frame draws a full-screen quad made from two triangles. Its
fragment shader calculates 12 animated glow centers plus a moving
grid for every pixel. The animation updates through
requestAnimationFrame for a nominal 15-second run.
The WebGL context disables antialiasing, alpha, and depth testing,
and requests high-performance. The canvas uses its CSS
size multiplied by a device-pixel ratio capped at 1.5 and the
selected render scale.
Quality and metrics
- Render scale
- Low:
0.65×; Medium:1×; High:1.5×. These change the internal canvas resolution, not the shader or geometry. - Average FPS and frame time
- Average FPS is rendered frames divided by elapsed test seconds. Frame time is the arithmetic mean of valid frame-to-frame intervals, in milliseconds.
- Approximate 1% low
- The largest frame intervals are sorted, the slowest approximately 1% are averaged, and that average is converted with
1000 / ms. It is an approximation, not a standardized 1% low metric.
Interpret and compare
Higher FPS generally means more frames per second, while lower
frame time means less time per frame; FPS is related to roughly
1000 / frame time, but the displayed average FPS uses
total frames and total elapsed time. Frame count is the number of
render calls completed during the run.
Use the same quality setting, viewport, browser, device, display,
and power mode for comparisons. There is no separate warm-up phase,
so allow similar startup and thermal conditions, close GPU-heavy
apps, and repeat runs when practical. Browser and driver behavior,
background activity, refresh-rate caps, thermal limits, and masked
renderer information can affect results. Renderer text comes from
WEBGL_debug_renderer_info when available, otherwise
the browser's WebGL renderer string, and is truncated to 70
characters.