Launching Interop 2026
Source: Mozilla Hacks
Interop Project Overview
The Interop Project is a cross‑browser initiative aimed at improving web compatibility in the areas that provide the greatest benefit to both users and developers.
Participating Organizations
- Apple
- Igalia
- Microsoft
- Mozilla
How We Choose Features
- Well‑defined standards – Proposals must be based on a sufficiently stable web standard.
- Test coverage – Features need solid coverage in the Web Platform Tests (WPT) suite.
- Prioritisation – We balance developer priorities (derived from surveys and bug reports) with the collective resources of the group.
Metrics & Tracking
- Pass‑rate in Web Platform Tests is our primary measure of progress.
- Progress can be monitored on the Interop dashboard.
Workflow
- Agree on a set of focus areas for the year.
- Use the corresponding WPT tests to track each browser’s implementation progress throughout the year.
- At year‑end, review results, adjust priorities, and start the cycle again.
Looking Ahead to 2026
Before we dive into the plans for 2026, let’s reflect on the achievements and lessons from Interop 2025.
Interop 2025

Firefox started Interop 2025 with a score of 46, so we’re really proud to finish the cycle on 99.
The number that really matters, however, is the overall Interop score – a combined score for all four browsers. The higher this number, the fewer developer hours are lost to frustrating browser differences.
-
Overall Interop score: 25 → 95
-
Key cross‑browser features unlocked:
Beyond the headline numbers
A feature that is claimed to be supported but doesn’t work as expected is far more frustrating for developers. For that reason, Interop 2025 also focused on improving the reliability of existing, widely‑used features:
- WebRTC
- CSS Flexbox
- CSS Grid
- Pointer Events
- CSS
backdrop-filter - …and many more.
It’s not just about passing tests
In some focus areas—particularly CSS Anchor Positioning and the Navigation API—we discovered that a good test score could coexist with inconsistent behavior across browsers.
Why?
- Missing tests left gaps in coverage.
- Contradictory tests were sometimes written against a specific implementation rather than the specification.
I ran into this myself before joining Mozilla. When I tried CSS Anchor Positioning while it was only shipping in Chrome and Safari, even simple use‑cases produced wildly inconsistent results (issue #12466).
These discrepancies delayed the features’ arrival in Firefox. To address them we:
- Filed issues against the relevant specifications.
- Prioritized those issues in the corresponding working groups.
- Helped make the specs less ambiguous, improve the test suites, and achieve more reliable browser behavior.
That’s enough looking at the past. Let’s move on to…
Interop 2026
Over 150 proposals were submitted for Interop 2026. We looked through developer feedback, the issues themselves, and developer surveys like The State of HTML and The State of CSS. As an experiment for 2026, we at Mozilla also invited developers to stack‑rank the proposals; the results were combined with the other data to compare developer preferences between individual features – something we want to expand on in the future.
After carefully examining all the proposals, the Interop group has agreed on 20 focus areas (formed of 33 proposals) and 4 investigation areas. See the Interop repository for the full list; below are the highlights.
New features
As with 2025, part of the effort is about bringing new features to all browser engines.
-
Cross‑document View Transitions – allow transitions to work across documents without any JavaScript. The sub‑features
rel="expect"andblocking="render"are included in this focus area. -
Scroll‑driven animations – let you drive animations based on the user’s scroll position, replacing heavy JavaScript solutions that run on the main thread.
-
WebTransport – provides a low‑level API over HTTP/3, allowing multiple unidirectional streams and optional out‑of‑order delivery. It is a modern alternative to WebSockets.
-
CSS container style queries – let you apply a block of styles depending on the computed values of custom properties on the nearest container (e.g., a simple
--themeproperty that influences a range of other properties). -
JavaScript Promise Integration for Wasm – allows WebAssembly to asynchronously “suspend”, waiting on the result of an external promise. This simplifies the compilation of languages like C/C++ that expect APIs to run synchronously.
-
CSS
attr()– historically limited to pseudo‑element content, recent changes now permit attribute values to be used in most CSS values (URLs remain an exception). -
CSS custom highlights – let you register a set of DOM ranges as a named highlight, which you can style via the
::highlight(name)pseudo‑element. Styling is limited, but the ranges can span elements, do not affect layout, and do not disrupt text selection. -
Scoped Custom Element Registries – enable different parts of the DOM (e.g., a shadow root) to use distinct sets of custom‑element definitions, so the same tag name can refer to different elements depending on its location.
-
CSS
shape()– a reimagining ofpath()that uses native CSS syntax, allowing mixed units andcalc(). This makes responsiveclip-pathandoffset-pathdesigns much easier.
And more, including:
- CSS
contrast-color - CSS
accent-color - HTML “
- HTML
popover="hint" - Fetch upload streams (
Request.body) - IDB
getAllRecords() - Media pseudo‑classes such as
:playing - Navigation API’s
precommitHandler
Existing‑feature reliability improvements
As in previous years, the backbone of Interop is improving the reliability of existing features and removing frustrations for web developers. In 2026 we will focus on particular edge cases in:
- Range headers & form data in fetch
- The Navigation API
- CSS scroll‑snap & scroll events
- CSS anchor positioning
- Same‑document View Transitions
- JavaScript top‑level await
- The event loop
- WebRTC
- CSS user‑select
- CSS zoom
Some of these areas are carried over from the 2025 focus list; the underlying tests and specifications were fixed, but the changes arrived too late to be included in Interop 2025.
In these cases, we identify what’s missing and set up an investigation area. While they may not be as headline‑grabbing as shiny new features, these edge cases are where web developers lose **hours of our time**—frustrating, frustrating, hours.
### Interop investigations
Sometimes we see a focus‑area proposal that’s clearly important but doesn’t fit the requirements of Interop. This is usually because the tests for the feature aren’t sufficient, are in the wrong format, or browsers lack automation features needed to make the feature testable.
For Interop 2026, we’re looking at the following areas:
- **[Accessibility](https://github.com/web-platform-tests/interop-accessibility)** – A continuation of the work started in 2025. Our ultimate goal is for browsers to produce consistent accessibility trees from the same DOM and CSS. Before we can write tests for this, we need to improve our testing infrastructure.
- **[Mobile testing](https://github.com/web-platform-tests/interop-mobile-testing)** – Also building on 2025 efforts. In 2026 we want to devise an approach for testing viewport changes caused by dynamic UI elements such as the location bar and virtual keyboard.
- **[JPEG XL](https://github.com/web-platform-tests/interop-jpegxl)** – The [current tests are sparse](https://wpt.fyi/results/jpegxl?label=experimental&label=master&aligned). Existing decoders have more comprehensive test suites, but we need to determine how these relate to browsers. For example, progressive rendering is an important feature for developers, yet how and when browsers should implement it (to avoid performance issues) is still being debated.
- **[WebVTT](https://github.com/web-platform-tests/interop-webvtt)** – This feature allows text to be synchronized with video content. The investigation will review the test suite, ensure it’s fit for purpose, and amend it where necessary.
It Begins… Again
The selected focus areas mean we’ve committed to more work compared to the other browsers, which is quite the challenge for the only engine that isn’t owned by billionaires. But it’s a challenge we’re happy to take on!
Together with other members of the Interop group, we’re looking forward to delivering features and fixes over the next year. You can follow the progress of all browsers on the Interop dashboard.
If your favorite feature is missing from Interop 2026, that doesn’t mean it won’t be worked on. JPEG XL is a good example. The current test suite made it a poor fit for Interop 2026, but we’ve challenged the JPEG XL team at Google Research to build a memory‑safe decoder in Rust. We’re currently experimenting with it in Firefox (discussion) and Chrome is doing the same (discussion).
Interop isn’t the limit of what we’re working on, but it is a cross‑browser commitment.
Follow Our Work
- BlueSky –
- Mastodon –
- LinkedIn –
- Threads –
- YouTube –
- TikTok –
- Instagram –
Partner Announcements
This is a team effort, and we’ve all made announcement posts like this one. Get other members’ take on it: