WebGPU supports Chrome 113+, Edge 113+, Opera 99+, Samsung Internet 24+, Firefox 141+, and Safari 26 on macOS Tahoe and iOS 26. See WebGPU browser support.

Prince Dewani
May 1, 2026
WebGPU is a W3C JavaScript API that exposes the system GPU through Vulkan, Metal, or Direct3D 12 for rendering and compute work. It works in Chrome 113+, Edge 113+, Opera 99+, Samsung Internet 24+, Firefox 141+ on Windows, Firefox 145+ on macOS, and Safari 26, while Internet Explorer never added support.
This guide covers what WebGPU is, the browsers that support it, the key features, the WebGPU vs WebGL differences, how to check support, and the known issues.
WebGPU is a JavaScript API from the W3C GPU for the Web Working Group that gives web pages low-level access to the system graphics card through Vulkan, Metal, or Direct3D 12. The entry point is navigator.gpu. It handles rendering, compute shaders, and machine-learning workloads on the same page.
WebGPU now ships by default in every major browser engine. The exact version, operating system, and GPU still vary, especially on Linux and on older Apple devices.
Chrome supports WebGPU from Chrome 113 on Windows with Direct3D 12, macOS with Metal, and ChromeOS with Vulkan. Chrome 121 added Android 12+ support for Qualcomm and ARM GPUs. Linux still needs the chrome://flags/#enable-unsafe-webgpu flag turned on. Chrome 94 to 112 had WebGPU disabled by default behind that flag, and Chrome 4 to 93 did not support it.
Microsoft Edge supports WebGPU from Edge 113 on Windows, macOS, and ChromeOS through the same Chromium pipeline as Chrome. Edge for Android added WebGPU at Edge 121 on Android 12 and later. Edge 94 to 112 carried WebGPU behind the edge://flags/#enable-unsafe-webgpu flag, and Edge 12 to 93 did not support it.
Firefox supports WebGPU from Firefox 141 on Windows. Firefox 145 added WebGPU on macOS for Apple silicon (ARM64) Macs. Linux, Android, and Intel-based Macs do not yet ship WebGPU by default, and Mozilla expects Linux next. Firefox 113 to 140 had WebGPU behind the dom.webgpu.enabled flag in Nightly, and Firefox 2 to 112 did not support it at all.
Safari supports WebGPU from Safari 26 on macOS Tahoe 26, iOS 26, iPadOS 26, and visionOS 26. Earlier Safari builds carried WebGPU behind a feature flag inside Safari Technology Preview 185 and later. Safari 11 to 25 did not enable WebGPU on by default in any stable build, and Safari 2 to 10 did not support it at all.
Opera supports WebGPU from Opera 99 on Windows, macOS, and Linux through the Chromium 113 base. Opera Mobile 80 added WebGPU on Android. Opera 60 to 98 had WebGPU behind the opera://flags/#enable-unsafe-webgpu flag, and Opera 4 to 59 did not support it.
Samsung Internet supports WebGPU from Samsung Internet 24 on Galaxy phones and tablets running Android 12 and later, on devices with Qualcomm or ARM GPUs. Samsung Internet 4.0 to 23 did not support WebGPU.
The legacy stock Android Browser, frozen at version 4.4 before Chrome for Android took over, does not support WebGPU. On modern Android phones, use Chrome for Android, Samsung Internet, or another Chromium-based browser instead.
Internet Explorer never added WebGPU support. IE 5.5 through IE 11 cannot run any WebGPU code. Microsoft has retired Internet Explorer, so use Edge, Chrome, or Firefox for WebGPU work.
Note: WebGPU breaks across older Macs, Linux desktops, and lower-tier Android phones. Test it on real browsers and devices with TestMu AI. Try TestMu AI free!
WebGPU is built for modern GPU programming with first-class support for compute, low CPU overhead, and a single shading language across platforms.
WebGPU is the successor to WebGL, but the two APIs differ on shading language, compute support, command structure, and browser reach. The table below shows the trade-offs that drive the WebGPU-versus-WebGL choice.
| Dimension | WebGPU | WebGL 2 |
|---|---|---|
| Standards body | W3C GPU for the Web Working Group | Khronos Group |
| Underlying GPU API | Vulkan, Metal, Direct3D 12 | OpenGL ES 3.0 |
| Shading language | WGSL (one language, cross-platform) | GLSL ES 3.00 |
| Compute shaders | Yes, first class | No, render only |
| CPU overhead | Low, command encoders and bind groups batch work | Higher, GL state machine and per-draw-call overhead |
| Browser reach | Chrome 113+, Edge 113+, Firefox 141+ Windows, Safari 26+ | Every modern browser; near-universal coverage |
| Best fit | Modern 3D, AI inference, GPGPU compute | Maximum compatibility, simple 3D, legacy fallback |
Feature detection takes two minutes inside any browser, with no SDK or build step. Open the DevTools console on the page you are testing and run the snippet below.
async function checkWebGPU() {
if (!navigator.gpu) {
console.log("WebGPU is not exposed in this browser.");
return false;
}
const adapter = await navigator.gpu.requestAdapter();
if (!adapter) {
console.log("WebGPU is exposed, but no GPU adapter was returned.");
return false;
}
const device = await adapter.requestDevice();
console.log("WebGPU is ready. Adapter info:", adapter.info ?? "info unavailable");
return device;
}
checkWebGPU();If the console reports no adapter, check chrome://gpu, the GPU vendor, and the operating system; on Linux Chrome and pre-26 Safari, the API is gated by a flag.
WebGPU now ships in every major browser, but cross-platform delivery still has rough edges around Linux, older Apple silicon, and mobile GPUs.
In my experience, the trickiest production failure is shipping a WebGPU page to a mixed Apple fleet. macOS Tahoe 26 turns WebGPU on across Apple silicon, but Intel Macs and any device on macOS Sonoma or earlier silently miss it. Always feature-detect navigator.gpu and ship a WebGL 2 fallback inside the same render path.
All WebGPU version numbers and platform notes in this guide come from these primary sources:
Did you find this page helpful?
More Related Hubs
TestMu AI forEnterprise
Get access to solutions built on Enterprise
grade security, privacy, & compliance