Headline: RSC is a serious win for bundle size and TTFB, but only if your team commits to the new mental model. Half-adoption is worse than not adopting at all.
What Actually Changed
RSC moves rendering of components that don't need interactivity to the server. The browser receives a serialized tree, not a JavaScript bundle. The result on a real e-commerce surface we migrated at Devya Solutions:
- β42% client JS on the product listing page
- β180ms TTFB after enabling streaming
- +0.08 INP regression on a poorly-split page (we'll come back to this)
The Three Component Types You Actually Use
- Server Components β fetch, render, never ship JS. Default for everything.
-
Client Components (
"use client") β for interactivity, hooks, browser APIs. - Shared Components β pure presentation, work in both. Sweet spot for design systems.
The pitfall: every "use client" directive is a bundle entry point. One careless chart-library import pulls 80KB into every page.
Data Fetching Patterns That Survived
async function ProductList({ category }) {
const products = await db.products.findMany({ where: { category } });
return products.map(p => <ProductCard product={p} />);
}
We deleted ~3,000 lines of React Query setup.
Server Actions for Mutations
'use server';
export async function addToCart(formData: FormData) {
const productId = formData.get('productId');
await db.cart.add({ productId });
revalidatePath('/cart');
}
What Still Hurts
- Error boundaries β server-thrown errors surface as opaque digests in production
-
Third-party clients β anything that touches
windowneeds a Client Component wrapper - Caching mental model β Next.js 15 made caching explicit, but the layers still confuse new hires
The INP Regression β And the Fix
Smaller JS doesn't automatically mean snappier interaction. Our regression: a deeply nested Client Component tree hydrated late. Fix: hoist the interactive island higher, pass server data as a prop.
Should You Adopt RSC?
Yes for new Next.js apps. For existing Pages Router apps, migrate route-by-route, not big-bang.
I write more production React patterns on eng-ahmed.com and ship them through Devya Solutions.
United States
NORTH AMERICA
Related News
π I Built a Dropshipping Automation Pipeline β Here's What I Learned (and What I'd Do Differently)
10h ago
How I Cut My LLM API Bill by 40x: A Freelancer's Migration Story
10h ago

Mattress Firm Coupons: Save up to $600
3h ago
Google Ordered to Pay $2 Billion For Anti-Competitive Practices By Swedish Court
20h ago
The Censorship Wall: Why Every AI Companion App Ends Up Filtering You
20h ago