Persistent server-side cache for fetched data.
Skip to solutionKEEP THE
mediumSystem Design
What is the Data Cache in Next.js and how do you opt out of it?
988 views
01
Understand the problem
nextjsdata-cachecachingno-store
02
Attempt it yourself
Sketch your approach before reading the solution — that's what interviews test.
Nudge consolestandby
Stuck? Beam a request up — the console returns a conceptual nudge that guides your logic without spoiling the implementation.
03
Study the solution
The Data Cache stores fetch results on the server across requests and deployments to avoid refetching. Opt out per fetch with cache: 'no-store', per segment with export const dynamic = 'force-dynamic' or revalidate = 0, so data is always fresh.
Solution ready — 2 min read
Classified // press E to declassify
04
Read the code
Cache DB reads; bypass for user data
import { unstable_cache } from 'next/cache';
// cache a non-fetch (DB) read in the Data Cache
const getProducts = unstable_cache(async () => db.product.findMany(),
['products'], { revalidate: 3600, tags: ['products'] });
// opt out for per-user data
const me = await fetch('/api/me', { cache: 'no-store' });05
Join the discussion
Discussion (0)
Sign in to join the discussion.
No responses yet. Be the first to share what you think.
Transmission complete // awaiting log
KEEP THE
STREAK ALIVE.
Dossier 23 of 95 decoded in the Next.js track. One more won't hurt.