Jump into concepts and practice - no test required
or
Recommended
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
Recall & Review
beginner
What is rendering strategy in Next.js?
Rendering strategy is the way Next.js decides when and how to generate the HTML for a page, either on the server, at build time, or on the client.
Click to reveal answer
beginner
Why does Next.js offer multiple rendering strategies?
Because different pages have different needs: some need fresh data every time, some can be pre-built for speed, and some can load data on the client for interactivity.
Click to reveal answer
intermediate
What is the difference between Server-Side Rendering (SSR) and Static Site Generation (SSG)?
SSR generates the page on each request, giving fresh data but slower response. SSG builds pages once at build time, making them very fast but less fresh.
Click to reveal answer
intermediate
How does rendering strategy affect user experience?
Choosing the right strategy can make pages load faster, show up quickly on screen, and keep data up to date, which makes users happy and engaged.
Click to reveal answer
intermediate
What happens if you choose the wrong rendering strategy for a page?
The page might load slowly, show outdated data, or use too much server power, which can frustrate users and increase costs.
Click to reveal answer
Which Next.js rendering strategy builds pages once at build time?
AClient-Side Rendering (CSR)
BServer-Side Rendering (SSR)
CStatic Site Generation (SSG)
DIncremental Static Regeneration (ISR)
✗ Incorrect
SSG builds pages once during the build process, making them fast to serve.
What is a key benefit of Server-Side Rendering (SSR)?
APages have fresh data on every request
BPages are pre-built and very fast
CPages load only on the client
DPages never update after build
✗ Incorrect
SSR generates pages on each request, so data is always fresh.
Why might you choose Client-Side Rendering (CSR) in Next.js?
ATo pre-build pages for speed
BTo load data after the page loads for interactivity
CTo generate pages on the server every time
DTo avoid using JavaScript
✗ Incorrect
CSR loads data in the browser after the page loads, useful for interactive content.
What does Incremental Static Regeneration (ISR) allow you to do?
ADisable caching for all pages
BBuild pages only once and never update
CRender pages only on the client
DUpdate static pages after build without rebuilding the whole site
✗ Incorrect
ISR lets you update static pages after build time, combining speed and freshness.
What is a risk of using SSR for all pages?
AServer load can increase and slow down responses
BPages might be outdated
CPages cannot show dynamic data
DPages will not be SEO friendly
✗ Incorrect
SSR requires the server to generate pages on every request, which can increase load and slow responses.
Explain why choosing the right rendering strategy in Next.js is important for both performance and user experience.
Think about how fast pages load and how fresh the data is for users.
You got /5 concepts.
Describe how Incremental Static Regeneration (ISR) combines benefits of static and dynamic rendering in Next.js.
ISR lets you update static pages without rebuilding the whole site.
You got /4 concepts.
Practice
(1/5)
1. In Next.js, why does choosing the right rendering strategy matter for your website?
easy
A. It decides which fonts are used on the page.
B. It changes the color scheme of the website automatically.
C. It controls the size of images on the page.
D. It affects how fast the page loads and how fresh the content is.
Solution
Step 1: Understand rendering strategy impact
Rendering strategy determines when and how page content is created and delivered to users.
Step 2: Connect rendering to performance and freshness
Choosing the right strategy affects page load speed and how up-to-date the content appears, which is important for user experience and SEO.
Final Answer:
It affects how fast the page loads and how fresh the content is. -> Option D
Quick Check:
Rendering strategy = speed and freshness [OK]
Hint: Rendering strategy controls speed and content freshness [OK]
Common Mistakes:
Thinking rendering changes colors or fonts
Confusing rendering with styling or image size
Assuming rendering affects only visuals, not performance
2. Which Next.js page export correctly sets a page to use Static Site Generation (SSG)?
3. Given this Next.js page code, what will the user see when visiting the page?
export async function getServerSideProps() {
return { props: { time: new Date().toISOString() } };
}
export default function Page({ time }) {
return
Current time: {time}
;
}
medium
A. The current server time updated on every request.
B. The time when the site was built, never changes.
C. An error because getServerSideProps cannot return props.
D. A blank page because time is undefined.
Solution
Step 1: Understand getServerSideProps behavior
This function runs on every request, fetching fresh data each time.
Step 2: Analyze returned props usage
The page receives the current server time as a prop and displays it inside the div.
Final Answer:
The current server time updated on every request. -> Option A
Quick Check:
getServerSideProps = fresh data each request [OK]
Hint: getServerSideProps runs every request, shows fresh data [OK]
Common Mistakes:
Thinking it shows build time (that's SSG)
Assuming getServerSideProps causes errors
Believing props are undefined without checking code
4. This Next.js page uses Static Site Generation but the data is not updating after deployment. What is the likely fix?
export async function getStaticProps() {
const data = await fetch('https://api.example.com/data').then(res => res.json());
return { props: { data } };
}
export default function Page({ data }) {
return
{data.message}
;
}
medium
A. Add revalidate property to enable Incremental Static Regeneration.
B. Change getStaticProps to getServerSideProps to fetch on every request.
C. Remove the fetch call to avoid stale data.
D. Wrap the component in React.memo to force updates.
Solution
Step 1: Identify SSG data freshness issue
Static Site Generation builds pages once at build time, so data stays static unless re-built.
Step 2: Use revalidate for periodic updates
Adding revalidate enables Incremental Static Regeneration, refreshing data after set seconds.
Final Answer:
Add revalidate property to enable Incremental Static Regeneration. -> Option A
Quick Check:
SSG + revalidate = fresh static pages [OK]
Hint: Use revalidate in getStaticProps for fresh static data [OK]
Common Mistakes:
Switching to getServerSideProps unnecessarily
Removing fetch which breaks data loading
Using React.memo which doesn't affect data fetching
5. You want a Next.js page that shows user profile data that updates every 10 seconds but also loads fast initially. Which rendering strategy best fits this need?
hard
A. Use Server-side Rendering with getServerSideProps to fetch data on every request.
B. Use Static Site Generation with revalidate: 10 to update every 10 seconds.
C. Use Client-side Rendering only with useEffect to fetch data after page loads.
D. Use Static Site Generation without revalidate for fastest load.
Solution
Step 1: Understand the need for fast initial load and frequent updates
Static Site Generation gives fast load by pre-building pages; revalidate allows periodic updates.
Step 2: Compare options for update frequency and speed
Using revalidate: 10 updates the page every 10 seconds without slowing initial load, unlike server-side rendering which runs every request.
Final Answer:
Use Static Site Generation with revalidate: 10 to update every 10 seconds. -> Option B
Quick Check:
SSG + revalidate = fast + fresh [OK]
Hint: SSG with revalidate balances speed and freshness [OK]
Common Mistakes:
Choosing server-side rendering which slows initial load
Using client-side fetching which delays content display