Skip to content
You are currently viewing documentation for the canary channel of Next.js.

reactCompiler

This API is currently experimental and subject to change.

Next.js 15 RC introduced support for the React Compiler. The compiler improves performance by automatically optimizing component rendering. This reduces the amount of manual memoization developers have to do through APIs such as useMemo and useCallback.

To use it, upgrade to Next.js 15, install the babel-plugin-react-compiler:

Terminal
npm install babel-plugin-react-compiler

Then, add experimental.reactCompiler option in next.config.js:

next.config.ts
import type { NextConfig } from 'next'
 
const nextConfig: NextConfig = {
  experimental: {
    reactCompiler: true,
  },
}
 
export default nextConfig

Optionally, you can configure the compiler to run in "opt-in" mode as follows:

next.config.ts
import type { NextConfig } from 'next'
 
const nextConfig: NextConfig = {
  experimental: {
    reactCompiler: {
      compilationMode: 'annotation',
    },
  },
}
 
export default nextConfig

Note: The React Compiler is currently only possible to use in Next.js through a Babel plugin. This will opt-out of Next.js's default Rust-based compiler, which could result in slower build times. We are working on support for the React Compiler as our default compiler.

Learn more about the React Compiler, and the available Next.js config options.