WebGPU Features Database
Complete reference of 22 WebGPU feature flags
About WebGPU Features
WebGPU features are optional capabilities that extend the core WebGPU API. Unlike WebGL extensions, WebGPU features are requested at device creation time and must be explicitly enabled before use. Features provide access to advanced GPU functionality, specialized texture formats, and modern rendering techniques.
In GPU fingerprinting, the set of available WebGPU features reveals detailed information about the graphics hardware, driver capabilities, and browser implementation. Different GPUs support different feature sets, making this a powerful fingerprinting vector.
Feature Detection: WebGPU features are queried via adapter.features
and enabled via device.features. The presence or absence of specific features can
identify GPU vendors (NVIDIA, AMD, Intel, Apple), GPU models, and driver versions.
Search WebGPU Features
Try searching for: "depth", "texture", "float32", "shader", "timestamp"
All WebGPU Features (22)
| Feature Name | Description |
|---|---|
bgra8unorm-storage
|
Allows STORAGE_BINDING usage of bgra8unorm-format textures |
clip-distances
|
Enables use of clip_distances in WGSL shader language |
core-features-and-limits
|
Signifies adapter/device can use all core WebGPU features |
depth-clip-control
|
Allows depth-clipping to be disabled via the unclippedDepth property |
depth32float-stencil8
|
Enables creation of textures with the depth32float-stencil8 format |
dual-source-blending
|
Allows use of both pixel shader outputs as inputs to blending operations |
float32-blendable
|
Permits blending of r32float, rg32float, and rgba32float-format textures |
float32-filterable
|
Allows filtering of r32float, rg32float, and rgba32float-format textures |
indirect-first-instance
|
Enables non-zero firstInstance values in indirect draw calls |
primitive-index
|
Allows use of the primitive_index built-in variable in WGSL |
rg11b10ufloat-renderable
|
Permits render attachment usage, blending, and multisampling of rg11b10ufloat textures |
shader-f16
|
Enables half-precision floating-point type f16 in WGSL |
subgroups
|
Allows SIMD-level parallelism and cross-thread data sharing in WGSL |
texture-component-swizzle
|
Permits rearranging channel values in texture views via the swizzle property |
texture-compression-bc
|
Enables BC compressed texture creation (8 BC formats supported) |
texture-compression-bc-sliced-3d
|
Allows 3D BC compressed textures (requires texture-compression-bc) |
texture-compression-astc
|
Enables ASTC compressed texture creation (24 ASTC formats supported) |
texture-compression-astc-sliced-3d
|
Allows 3D ASTC compressed textures (requires texture-compression-astc) |
texture-compression-etc2
|
Enables ETC2 compressed texture creation (10 ETC2 formats supported) |
texture-formats-tier1
|
Enables Tier 1 texture formats for porting existing content to WebGPU |
texture-formats-tier2
|
Enables Tier 2 texture formats with advanced storage texture capabilities |
timestamp-query
|
Allows timestamp queries to measure time taken for compute and render passes |
WebGPU Features: Modern GPU API based on Vulkan/Metal/DirectX 12. Features must be explicitly requested at device creation and are more granular than WebGL extensions.
WebGL Extensions: Legacy GPU API based on OpenGL ES. Extensions are queried and enabled at runtime. Many WebGL features are core functionality in WebGPU.
Fingerprinting Impact: WebGPU features provide more detailed GPU capability information, including support for modern rendering techniques like ray tracing, mesh shaders, and advanced texture compression formats.
Commonly Supported Features
- depth32float-stencil8 - Combined depth-stencil format for rendering
- texture-compression-bc - Block compression for desktop GPUs (NVIDIA/AMD)
- texture-compression-etc2 - ETC2 compression for mobile GPUs (ARM/PowerVR)
- texture-compression-astc - ASTC compression for modern mobile GPUs
- timestamp-query - GPU performance timing and profiling
- indirect-first-instance - Advanced indirect drawing for complex scenes
- shader-f16 - Half-precision floating-point for mobile power efficiency