Performance: Multiple root layouts with route groups
This affects the initial page load speed and rendering performance by controlling how layouts and route groups are loaded and rendered.
app/(marketing)/layout.js
app/(marketing)/page.js
app/(dashboard)/layout.js
app/(dashboard)/page.js
// Using route groups with separate root layouts so only relevant layout code loads per route group.app/layout.js
app/page.js
app/dashboard/layout.js
app/dashboard/page.js
app/settings/layout.js
app/settings/page.js
// All layouts are nested under a single root layout causing all layout code to load on every page.| Pattern | DOM Operations | Reflows | Paint Cost | Verdict |
|---|---|---|---|---|
| Single root layout for all routes | High (all layouts rendered) | Multiple reflows per page load | High paint cost due to large DOM | [X] Bad |
| Multiple root layouts with route groups | Low (only relevant layouts rendered) | Single reflow per route group | Lower paint cost with smaller DOM | [OK] Good |
app/
(marketing)/
layout.js
page.js
(dashboard)/
layout.js
dashboard/page.js
What layout will the page at URL / use?(admin) but your app shows a 404 error when visiting /admin. What is the likely mistake?/login and /dashboard/profile. How should you organize your folders using multiple root layouts and route groups?(public) and (dashboard) folders with their own layouts keeps code clean and URLs like /login and /dashboard/profile work as expected.Pass the test and this pattern moves unknown