This WebGL test checks whether your browser can draw 3D graphics with WebGL 1 and WebGL 2, reads back a test color to prove that drawing really works, and shows which graphics card the browser is using. Under the spinning test scene you get a full WebGL report: version, renderer, vendor, the backend that draws it (Direct3D, Metal, OpenGL or Vulkan), limits such as the largest texture, shader precision and every extension, with WebGL 1 and WebGL 2 side by side. It works in Chrome, Edge, Firefox, Safari and Opera on Windows, Mac, Linux, ChromeOS, Android and iPhone.
How to use the WebGL test
- Open the page and wait a second. The four panels at the top fill in by themselves.
- Check that WebGL 1 and WebGL 2 both say Working and that Drawing check says Passed.
- Look at Graphics card in use. It should say Hardware. Software means the browser is not using your graphics card.
- Switch the scene between WebGL 2 and WebGL 1 to see both draw. The FPS counter should match your screen's refresh rate, which the refresh rate test measures.
- Open the report sections for the limits and extensions a site or game asks about.
- Press Copy report or Save as JSON to attach the details to a bug report or a support ticket.
What the results mean
| Readout | What it tells you | Normal result |
|---|---|---|
| WebGL 1 | The original WebGL, based on OpenGL ES 2.0 | Working |
| WebGL 2 | The current version, based on OpenGL ES 3.0 | Working in any browser from the last few years |
| Drawing check | A test color drawn and read back from the graphics card | Passed |
| Graphics card in use | Hardware, or software rendering without the card | Hardware |
| Drawn through | The system graphics layer behind WebGL | Direct3D 11 on Windows, Metal on Mac, OpenGL or Vulkan on Linux and Android |
| Largest texture | The biggest image the card accepts in one piece | 4,096 to 16,384 pixels |
| Extensions | Optional features the card and browser add | 20 to 40 or more |
On Windows, Chrome, Edge and Firefox turn WebGL into Direct3D calls through a layer called ANGLE, which is why the renderer often starts with ANGLE. That is normal and not a fault.
WebGL is not working
When both panels say Not available, the browser refused to create WebGL at all. The reason the browser gives, when it gives one, appears under the verdict. The most common causes, in order:
- Graphics acceleration is turned off in the browser settings.
- The graphics driver is missing or too old. Windows sometimes runs on the Microsoft Basic Display Adapter after an update, which cannot use the graphics card for 3D.
- The graphics card is on the browser's block list because its driver had crashes or security bugs.
- Remote desktop or a virtual machine gives the browser no real graphics card.
- An extension or a privacy setting blocks WebGL to stop fingerprinting.
Chrome and Edge
- Open Settings, then System (in Edge, System and performance), and turn on Use graphics acceleration when available. Press Relaunch.
- Type
chrome://gpu(oredge://gpu) in the address bar. Under Graphics Feature Status, WebGL and WebGL2 should say Hardware accelerated. - If they say Software only or Disabled, update the graphics driver from NVIDIA, AMD or Intel, or through Windows Update, and restart.
- If the card is blocked even with a new driver,
chrome://flagshas an option called Override software rendering list. Turn it on and relaunch, and turn it off again if pages start crashing.
Firefox
- Open Settings, then General, scroll to Performance, untick Use recommended performance settings and tick Use hardware acceleration when available. Restart Firefox.
- Type
about:config, search forwebgl.disabledand check that it is false. - Type
about:supportand read the Graphics section, which lists WebGL 1 and WebGL 2 with the reason if either is blocked. Settingwebgl.force-enabledto true in about:config overrides the block list.
Safari on Mac, iPhone and iPad
Safari has WebGL switched on and has no everyday setting for it. If WebGL fails, update macOS, iOS or iPadOS, since Safari's graphics support comes with system updates, and turn off content blockers for the page you are testing.
WebGL works but uses software rendering
If Graphics card in use says Software, the renderer is SwiftShader, llvmpipe or the Microsoft Basic Render Driver. 3D pages still open, but slowly, and they load the processor instead of the graphics card. Turn graphics acceleration on, update the driver and restart the browser, then test again. On a laptop with two graphics chips, also check that the browser has not been set to power saving in Windows graphics settings.
WebGL 1 works but WebGL 2 does not
Every current browser supports WebGL 2: Chrome and Edge since 2017 and 2020, Firefox since 2017 and Safari since version 15 in 2021. If only WebGL 1 works, the browser is old, or the graphics card or its driver cannot provide the OpenGL ES 3.0 features WebGL 2 needs, which is common on graphics from before about 2012. Update the browser and the driver first. If the hardware is that old, sites built only for WebGL 2 will not run on it.
A 3D page crashes or says WebGL is not supported
If this page shows everything working but one site still fails, the site may need an extension your card lacks. Compare its requirements with the Key extensions table. If pages crash during play with the message "Rats! WebGL hit a snag", the graphics driver stopped responding under load. Update the driver and use the gpu test to check the card at full load.
What this test does not cover
A WebGL test shows what the browser offers, not how fast your graphics card is. To measure performance, run the gpu stress tester, which holds a heavy 3D load and watches the frame rate. The newer graphics standard for the web has its own check in the webgpu test, and the fps test shows how motion looks on your screen at different frame rates.
WebGL test questions
How do I know if WebGL is enabled in my browser?
Open this page. If the WebGL 1 and WebGL 2 panels say Working and the cube spins, WebGL is on. In Chrome or Edge you can also type chrome://gpu or edge://gpu in the address bar: WebGL should say Hardware accelerated.
What is the difference between WebGL and WebGL 2?
WebGL 2 is the newer version, based on OpenGL ES 3.0. It adds 3D textures, multiple render targets, multisampled drawing, instancing and better texture formats as standard. Most new 3D sites, browser games and engines such as Three.js and Unity web builds use WebGL 2 when it is available.
How do I enable WebGL in Chrome?
Open Settings, then System, turn on Use graphics acceleration when available and press Relaunch. If WebGL still fails, update your graphics driver and check chrome://gpu for the reason.
What does Rats! WebGL hit a snag mean?
Chrome shows that message when its graphics process crashed or stopped responding while a page was drawing. Reload the page. If it keeps happening, update the graphics driver, close other heavy tabs, and run the gpu stress test to see whether the graphics card is unstable under load.
Does WebGL work on iPhone and iPad?
Yes. Safari on iOS and iPadOS 15 and later supports WebGL 1 and WebGL 2, and every browser on iPhone uses the same Safari engine. If a 3D page fails on an iPhone, update iOS and turn off content blockers for that site.
Can websites use WebGL to identify my computer?
WebGL tells pages your graphics card name and limits, which can help tell devices apart. Firefox and Safari report a simplified name for that reason. The report on this page is read inside your browser and is not sent anywhere.