React Server Components
React Server Components are components that run and render on the server and send the client only finished HTML, not the component’s JavaScript code itself.
The difference from classic React components is that a server component is never downloaded to the browser as JS - only its result is. That means a smaller JavaScript bundle for the browser to download, process, and run, which directly speeds up time to interactivity.
Not every component can be a server component - anything that needs interactivity in the browser (a form, animation, state) must remain a client component (`"use client"`). A sensible split between server and client is one of the main architectural decisions when building with Next.js App Router.
The benefit is measurable in the amount of JavaScript a website sends - less JS means faster loading on a weaker mobile connection, which translates directly into Core Web Vitals and indirectly into conversion.
Related service
Next.js development →