Skip to content
BrowserCheck
Report

BrowserCheck · Browser environment diagnostics

WebGL Test

Test WebGL 1 and WebGL 2, inspect GPU renderer information, extensions and limits, and verify a real shader draw with pixel readback.

WebGL lets web applications draw with a graphics context. This checker creates separate WebGL 1 and WebGL 2 contexts, compiles a small shader, draws a triangle and checks the returned pixels. The observations stay in your browser; the safe summary includes capability states only.

Results in this browser

Running local checks…

Copied and printed output omits IP addresses, the full User Agent, exact versions, fingerprint hashes, and precise location.

What is tested and how to read it

Context and rendering

Available means this run created the context and passed a four-by-four pixel drawing check. A missing context can reflect browser settings, a disabled GPU, driver restrictions or context exhaustion. It does not identify the cause by itself.

Reported and unmasked renderer

Vendor and Renderer come from the normal WebGL parameters. The separate unmasked fields require WEBGL_debug_renderer_info. Masked means that extension did not expose those fields; it does not mean rendering failed.

Versions, limits and extensions

The page lists the GL and shading-language strings, maximum texture and renderbuffer sizes, and supported extensions. These are exposed capabilities, not measurements of frame rate or physical memory.

Two different hashes

The parameter hash summarizes the reported values. The render hash summarizes pixels from this fixed sample. The sample checks functionality and is deliberately simple; neither hash is a unique identity, a population uniqueness estimate or a standardized fingerprint.

Test limitations

  • A software renderer can pass this test. Renderer names are clues, not proof of hardware acceleration.
  • Browser privacy protections can mask or change values and pixels. A failed readback is an observation, not an unsafe verdict.
  • A small successful draw does not guarantee that a game, a large texture or a particular extension will work.

Next steps

  1. Compare WebGL 1 and WebGL 2 separately, then check the rendering result before interpreting renderer fields.
  2. If a context is unavailable, try a fresh tab and review browser graphics settings. Run the test again after changing one setting.

Frequently asked questions

Why is WebGL available but the renderer masked?

Rendering and renderer disclosure are separate capabilities. The debug extension can be hidden while ordinary WebGL continues to work.

Is the render hash the same as the homepage WebGL hash?

No. The homepage currently hashes selected parameters. This page labels that kind of hash separately from its actual pixel readback hash.

Can this detect my exact graphics card?

Only a browser-reported string is available. Virtualization, driver translation, software rendering and privacy settings can affect it.

API references