Public API
All statistics on this site come from these endpoints. They are open - bots, scripts, and
LLM agents welcome. Responses are cached (ETag + Cache-Control) and
rate-limited per client with 429 + Retry-After when you exceed a
burst. Machine-readable spec: /api/openapi.json · crawler
guide: /llms.txt.
| Endpoint | Purpose | Cache |
|---|---|---|
POST /api/v1/reports | Submit a probe report (the landing page does this automatically) | — |
GET /api/v1/stats/summary | Totals, WebGPU availability, top OS/browser/vendor shares | 5 min |
GET /api/v1/stats/features | Availability time series for one feature (format=csv supported) | 5 min |
GET /api/v1/stats/breakdown | Share-by-dimension time series (os | browser | vendor) | 5 min |
GET /api/v1/stats/limits | Limit percentiles (p50/p90/p99) | 15 min |
GET /api/v1/features | Feature dictionary | 1 h |
Common parameters
from/to (YYYY-MM-DD, default last 30 days) ·
bucket = day|week|month ·
filters os, browser, vendor (normalized enums; see
the spec for values).
Examples
curl 'https://webgpu.report/api/v1/stats/summary' curl 'https://webgpu.report/api/v1/stats/features?feature=subgroups&bucket=month&from=2026-01-01' curl 'https://webgpu.report/api/v1/stats/breakdown?dimension=vendor&bucket=week&os=windows' curl 'https://webgpu.report/api/v1/stats/limits?name=maxBufferSize&vendor=nvidia'
Fair use
Anonymous clients get a generous token bucket per IP (IPv6 grouped at /64). If you are
building something that needs sustained heavy access, ask for a free API key (sent as
X-API-Key) - see about for contact. Please cache on your
side and honor Retry-After.
Submitting reports
POST /api/v1/reports accepts the versioned report schema (export your own
from the landing page to see a valid instance). Submissions from other origins are stored
but flagged and excluded from headline statistics, so embedding the probe elsewhere will
not skew the numbers.