React Compiler 1.0: stable automatic memoization for React and React Native

ReactPerformanceToolingViteNext.js

Key update

React Compiler 1.0 was released on Oct 7, 2025 as a production-ready, build-time optimizer (distributed today primarily as a Babel plugin) that automatically analyzes data flow and applies granular memoization to React components and hooks, adds compiler-powered diagnostics surfaced via eslint-plugin-react-hooks, supports React and React Native, and provides adoption paths with Expo, Vite, and Next.js. (react.dev)

Why it matters

This is a practical performance/tooling change you can adopt incrementally: the compiler can memoize across conditionals and other patterns where manual useMemo/useCallback cannot, producing measurable runtime wins (React reports up to ~12% faster initial loads and >2.5× faster certain interactions in examples) while keeping memory neutral; it also introduces static diagnostics that surface latent Rules-of-React violations before runtime. Because implicit memoization can alter behavior in edge cases (for example, effect dependencies), the recommended path is staged rollout using the provided incremental adoption guide, upgrade to the updated eslint-plugin-react-hooks for compiler lint rules, keep end-to-end testing or pin the compiler version during rollout, and use useMemo/useCallback as escape hatches where you need strict control. (react.dev)

Source

Read Next