Click here to download the Blitz Browser!

WPT

This page compares scores on the Web Platform Tests across web engines, using the latest master runs from wpt.fyi and Blitz's own test runner.


wpt / fetch / api / request

Spec: Fetch ↗

Runs: Chrome 158.0.8110.0 (wpt@51af97519, 2026-10-17) | Firefox 160.0a1 (wpt@51af97519, 2026-10-17) | Safari 254 preview (wpt@d6658f1eb, 2026-10-17) | Ladybird 1.0-44fe0 (wpt@831ff48a8, 2026-10-18) | Servo Servo 0.7 (wpt@df642c414, 2026-10-17) | Blitz fb8d6c15e (wpt@cd1d8aa5b, 2026-10-17)

Score history

Percentage of subtests passing over time, one master run per day. Every engine's percentage is relative to the same denominator: the total number of subtests known to any engine in the latest runs (so lines are not distorted by tests being added to WPT, and an engine that skips tests is not flattered for it).

1 month3 months6 months1 year2 years4 yearsAll time
0%20%40%60%80%100%Nov 2025Dec 2025Jan 2026Feb 2026Mar 2026Apr 2026May 2026Jun 2026Jul 2026Aug 2026Sep 2026Oct 2026ChromeFirefoxSafariLadybirdServo

Sort: alphabetical | by subtest count

AreaChromeFirefoxSafariLadybirdServoBlitz
Total98.8%1663/168298.8%1663/168297.8%1645/168263.0%1060/168276.9%1294/16820.0%0/1682
destination97.9%47/4897.9%47/4891.6%44/480.0%0/480.0%0/480.0%0/48
multi-globals100.0%2/2100.0%2/2100.0%2/250.0%1/250.0%1/20.0%0/2
TestChromeFirefoxSafariLadybirdServoBlitz
Total98.8%1614/163298.8%1614/163297.9%1599/163264.8%1059/163279.2%1293/1632NO DATA
forbidden-method.any.html6/66/66/66/66/6NOT RUN
forbidden-method.any.serviceworker.html6/66/66/60/60/6NOT RUN
forbidden-method.any.sharedworker.html6/66/66/66/66/6NOT RUN
forbidden-method.any.worker.html6/66/66/66/66/6NOT RUN
request-bad-port.any.html82/8484/8483/840/8483/84NOT RUN
request-bad-port.any.sharedworker.html82/8484/8483/840/8483/84NOT RUN
request-bad-port.any.worker.html82/8484/8483/840/8483/84NOT RUN
request-cache-default-conditional.any.html40/4040/4040/4040/4040/40NOT RUN
request-cache-default-conditional.any.serviceworker.html40/4040/4040/400/400/40NOT RUN
request-cache-default-conditional.any.sharedworker.html40/4040/4040/4040/4040/40NOT RUN
request-cache-default-conditional.any.worker.html40/4040/4040/4040/4040/40NOT RUN
request-cache-default.any.html8/88/88/88/88/8NOT RUN
request-cache-default.any.serviceworker.html8/88/88/80/80/8NOT RUN
request-cache-default.any.sharedworker.html8/88/88/88/88/8NOT RUN
request-cache-default.any.worker.html8/88/88/88/88/8NOT RUN
request-cache-force-cache.any.html16/1616/1616/1616/1616/16NOT RUN
request-cache-force-cache.any.serviceworker.html16/1616/1616/160/160/16NOT RUN
request-cache-force-cache.any.sharedworker.html16/1616/1616/1616/1616/16NOT RUN
request-cache-force-cache.any.worker.html16/1616/1616/1616/1616/16NOT RUN
request-cache-no-cache.any.html4/44/44/44/44/4NOT RUN
request-cache-no-cache.any.serviceworker.html4/44/44/40/40/4NOT RUN
request-cache-no-cache.any.sharedworker.html4/44/44/44/44/4NOT RUN
request-cache-no-cache.any.worker.html4/44/44/44/44/4NOT RUN
request-cache-no-store.any.html8/88/88/88/88/8NOT RUN
request-cache-no-store.any.serviceworker.html8/88/88/80/80/8NOT RUN
request-cache-no-store.any.sharedworker.html8/88/88/88/88/8NOT RUN
request-cache-no-store.any.worker.html8/88/88/88/88/8NOT RUN
request-cache-only-if-cached.any.html14/1414/1414/1414/1414/14NOT RUN
request-cache-only-if-cached.any.sharedworker.html14/1414/1414/1414/1414/14NOT RUN
request-cache-only-if-cached.any.worker.html14/1414/1414/1414/1414/14NOT RUN
request-cache-reload.any.html12/1212/1212/1212/1212/12NOT RUN
request-cache-reload.any.serviceworker.html12/1212/1212/120/120/12NOT RUN
request-cache-reload.any.sharedworker.html12/1212/1212/1212/1212/12NOT RUN
request-cache-reload.any.worker.html12/1212/1212/1212/1212/12NOT RUN
request-clone-readable-stream-body.any.htmlPASSPASSPASSPASSPASSNOT RUN
request-clone-readable-stream-body.any.serviceworker.htmlPASSPASSPASSERRORERRORNOT RUN
request-clone-readable-stream-body.any.sharedworker.htmlPASSPASSPASSPASSPASSNOT RUN
request-clone-readable-stream-body.any.worker.htmlPASSPASSPASSPASSPASSNOT RUN
request-clone.sub.html2/22/22/22/22/2NOT RUN
request-constructor-init-body-override.any.html2/22/22/22/21/2NOT RUN
request-constructor-init-body-override.any.worker.html2/22/22/22/21/2NOT RUN
request-consume-empty.any.html13/1413/1413/1413/1413/14NOT RUN
request-consume-empty.any.serviceworker.html13/1413/1413/140/140/14NOT RUN
request-consume-empty.any.sharedworker.html13/1413/1413/1413/1413/14NOT RUN
request-consume-empty.any.worker.html13/1413/1413/1413/1413/14NOT RUN
request-consume.any.html45/4545/4541/4545/4545/45NOT RUN
request-consume.any.serviceworker.html45/4545/4541/450/450/45NOT RUN
request-consume.any.sharedworker.html45/4545/4541/4545/4545/45NOT RUN
request-consume.any.worker.html45/4545/4541/4545/4545/45NOT RUN
request-disturbed.any.html9/99/99/97/96/9NOT RUN
request-disturbed.any.serviceworker.html9/99/99/90/90/9NOT RUN
request-disturbed.any.sharedworker.html9/99/99/97/96/9NOT RUN
request-disturbed.any.worker.html9/99/99/97/96/9NOT RUN
request-error.any.html21/2221/2222/2222/2222/22NOT RUN
request-error.any.serviceworker.html21/2221/2222/220/220/22NOT RUN
request-error.any.sharedworker.html21/2221/2222/2222/2222/22NOT RUN
request-error.any.worker.html21/2221/2222/2222/2222/22NOT RUN
request-headers.any.html60/6161/6161/6161/6161/61NOT RUN
request-headers.any.serviceworker.html60/6161/6161/610/610/61NOT RUN
request-headers.any.sharedworker.html60/6161/6161/6161/6161/61NOT RUN
request-headers.any.worker.html60/6161/6161/6161/6161/61NOT RUN
request-init-001.sub.html53/5353/5353/5353/5353/53NOT RUN
request-init-002.any.html8/88/88/88/88/8NOT RUN
request-init-002.any.serviceworker.html8/88/88/80/80/8NOT RUN
request-init-002.any.sharedworker.html8/88/88/88/88/8NOT RUN
request-init-002.any.worker.html8/88/88/88/88/8NOT RUN
request-init-003.sub.html4/44/44/44/44/4NOT RUN
request-init-contenttype.any.html18/1818/1818/1817/1818/18NOT RUN
request-init-contenttype.any.worker.html18/1818/1818/1817/1818/18NOT RUN
request-init-priority.any.html8/88/88/88/86/8NOT RUN
request-init-priority.any.worker.html8/88/88/88/86/8NOT RUN
request-init-stream.any.html23/2323/2323/2323/2320/23NOT RUN
request-init-stream.any.serviceworker.html23/2323/2323/230/230/23NOT RUN
request-init-stream.any.sharedworker.html23/2323/2323/2323/2320/23NOT RUN
request-init-stream.any.worker.html23/2323/2323/2323/2320/23NOT RUN
request-keepalive-quota.html?include=fast3/33/33/32/32/3NOT RUN
request-keepalive-quota.html?include=slow-1PASSPASSPASSFAILPASSNOT RUN
request-keepalive-quota.html?include=slow-2PASSPASSPASSFAILFAILNOT RUN
request-keepalive-quota.html?include=slow-3PASSPASSPASSFAILFAILNOT RUN
request-keepalive.any.html2/22/22/22/22/2NOT RUN
request-keepalive.any.serviceworker.html2/22/22/20/20/2NOT RUN
request-keepalive.any.sharedworker.html2/22/22/22/22/2NOT RUN
request-keepalive.any.worker.html2/22/22/22/22/2NOT RUN
request-reset-attributes.https.html3/31/31/30/30/3NOT RUN
request-structure.any.html24/2422/2422/2424/2424/24NOT RUN
request-structure.any.serviceworker.html24/2422/2422/240/240/24NOT RUN
request-structure.any.sharedworker.html24/2422/2422/2424/2424/24NOT RUN
request-structure.any.worker.html24/2422/2422/2424/2424/24NOT RUN
url-encoding.html2/22/22/22/22/2NOT RUN