RSC + Payload Local API: a recipe
Skipping the HTTP layer between your CMS and your renderer is the single biggest perf win for content-driven sites in 2026.

Most CMS integrations look like this: your Next.js app fetches /api/pages from your CMS over HTTP, parses JSON, renders. That is two network hops, two serialization rounds, and a cache invalidation strategy you have to invent.
With Payload running in the same Node process as Next.js, you skip all of it. The CMS is a function call. payload.find({ collection: 'pages' }) returns typed data, no HTTP, no JSON parse.
Combined with RSC and tag-based revalidation (revalidateTag in afterChange hooks), you get sub-second editor-to-live times and a code path that is straightforward to debug.
We default to this stack for content-driven sites now. Less moving parts, more shippable performance.