Web · 7 min read

The React Compiler is going mainstream. What does it mean for your website?

Accendoz·
Snappier clicks, no rewrite needed. Your first load, less so.

React Compiler 1.0, stable since October 2025, automatically cuts the wasted re-rendering that makes React interfaces feel sluggish. On a business site the gain shows up mostly in forms, filters and portals rather than first-load speed, and it trims the developer hours spent tuning performance.

The React Compiler is a build-time tool, stable since October 2025, that stops React interfaces from redoing work they do not need to redo. For a business website or app built with React or Next.js, that means smoother forms, filters, calculators and customer portals, and fewer paid developer hours spent tuning performance by hand. Its effect on how fast your first page appears is smaller, and if your site runs on WordPress or a hosted builder, it is not a switch you control.

React's own documentation says the compiler is mainly about updates: what happens after the page has loaded, when a visitor types, ticks a box or opens a menu. That makes it a remedy for sluggish interactions, the kind Google measures with Interaction to Next Paint (INP), rather than for a slow first load. Here is what changed, what it means in practice and what to ask your developer.

best-case gain in initial loads and page-to-page navigations on Meta's Quest Store
12%
best-case gain in initial loads and page-to-page navigations on Meta's Quest Store
speed-up on some Quest Store interactions after the switch
2.5×+
speed-up on some Quest Store interactions after the switch
longer to write: Meta pull requests that used hand-written memoisation
31 to 46%
longer to write: Meta pull requests that used hand-written memoisation
React components in the Meta codebase where Facebook and Threads adopted it with few code changes
100,000+
React components in the Meta codebase where Facebook and Threads adopted it with few code changes

01

What the compiler actually does

Every time something changes on a React page, React works out what to redraw. By default it redraws the changed component and everything inside it, which can mean a whole product grid when a customer ticks a single filter. Developers have traditionally prevented this by hand, wrapping code in memoisation helpers (useMemo, useCallback and React.memo) that tell React to reuse earlier results.

React's documentation calls that manual work tedious and easy to get wrong, and it is also expensive. Before rolling the compiler out, Meta analysed its own React pull requests: the roughly 8% that used manual memoisation took 31 to 46% longer to write, even after allowing for the author's experience and the size of the change. The compiler does the same job automatically while the site is being built, analysing each component and caching what can safely be reused, in most cases at least as precisely as a person would.

Nothing about how your site looks changes, and no rewrite is needed. The compiler works with React 17 and later, and it runs on React Native too, so a mobile app built with Expo can benefit as well.

02

From Meta's experiment to the default

The compiler was proven inside Meta's own products before anyone else was asked to trust it, and the past year added the pieces that make it a reasonable bet for everyone else.

  1. Feb 2024

    Running instagram.com

    The React team reports the compiler is no longer a research project and now powers Instagram's website in production.

  2. Oct 2024

    Public beta

    Meta reports that Facebook and Threads now use it too, onboarded with few code changes in a codebase of more than 100,000 React components. Support for React 17 and 18 arrives.

  3. 7 Oct 2025

    Version 1.0

    The first stable release. By then, Expo SDK 54 and later had it on by default for new apps, and the create-vite and create-next-app starters offered compiler-enabled templates.

  4. 21 Oct 2025

    Next.js 16

    Support becomes stable, but Next.js leaves the switch off by default while it gathers data on build times.

  5. 24 Feb 2026

    React Foundation launches

    React is no longer owned by Meta but by an independent foundation hosted by the Linux Foundation, with Amazon, Microsoft, Vercel, Expo and others as founding members.

  6. Jun 2026

    A native Rust version

    The Next.js 16.3 preview adds the React team's new Rust port as an experimental option, after early tests on large apps such as v0 showed compile-time gains of 20 to 50%.

03

What it changes on your site, and what it does not

Because the compiler targets updates rather than the first render, its value depends on how interactive your site is. Meta's own numbers make the point: on the Quest Store, initial loads and page-to-page navigations improved by up to 12%, while some interactions became more than two and a half times faster. The React team is careful to add that results vary from app to app.

Where the React Compiler helps a business website
Part of your siteWhat mostly decides its speedCompiler impact
Home, about and service pagesServer rendering, image sizes, fonts, hosting and third-party scriptsSmall
Enquiry forms, search filters, quote calculatorsHow much of the page redraws on each keystroke or clickNoticeable
Dashboards, booking systems, customer portalsMany components updating together as data changesLargest
Your developer's buildThe toolchain: the standard compiler runs through BabelLonger build times

04

The catch: your code must follow React's rules

The compiler assumes components follow the Rules of React, the conventions set out in React's documentation, such as never changing props or state directly while a component renders. Code can break those rules in ways that tools cannot always detect, and there the React team warns that a change in memoisation can, in rare cases, make an effect run more or less often than before.

So the sensible order is lint first, compile second. React ships compiler-powered checks in its standard ESLint plugin, eslint-plugin-react-hooks, and they work even before the compiler is installed. A developer can run them across your existing code, fix what they flag, then switch the compiler on and test.

Two smaller points. Future versions may change how memoisation is applied, so where automated test coverage is thin, the React team suggests pinning an exact compiler version and upgrading by hand. And existing hand-written memoisation is best left in place, or removed only with careful testing, because taking it out can change what the compiler produces.

05

Questions to ask your web developer

You do not need to read code to judge whether a React project is being looked after. Five questions do the job:

  • Which React and framework versions does the site run? The compiler needs React 17 or later, and a well-kept project should be on a currently supported framework release. Our note on Next.js 16 in practice explains what supported means there.
  • Is the compiler switched on, and if not, why not? A specific reason, such as a library that breaks the Rules of React, is fine. Not having got round to it is weaker.
  • Are the compiler lint rules running? They catch the patterns that would make switching it on unsafe.
  • What is our INP from real visitors? Google counts 200 milliseconds or less as good, measured at the 75th percentile of page loads. Our INP guide goes into the detail.
  • How are compiler upgrades handled? The answer you want: pinned versions, upgraded deliberately and tested before release.

We encourage everyone to start using React Compiler.

React documentation, Introduction to React Compiler

06

What to do next

If your site or app is built with React, this is a modest, low-risk improvement worth scheduling, not an emergency. A sensible plan:

  1. Ask your developer the five questions above and get the answers in writing.
  2. For any new React or Next.js build, make the compiler and its lint rules part of the brief, unless the developer gives a specific reason not to.
  3. For an existing site, ask for the lint pass first, then a staged switch-on, starting with the most interactive pages.
  4. Measure INP before and after, using data from real visitors rather than a single lab test.
  5. Leave the experimental Rust version to your developer's test environment until it is declared stable.

If you would like a second opinion on how your site is built, our free audit reviews it and gives you a written assessment.

Sources

Facts current as of 18 July 2026.

Chat with us