Sign in to track progress and bookmarks.
Prerendering is the process where the server renders the initial HTML for your Blazor components, so the user sees something immediately while the app is still loading.
Without prerendering, a Blazor WASM app shows a 'Loading...' message for several seconds. With it, the user sees the full page content instantly. This is vital for **SEO**, as search engine crawlers can index the content without needing to execute the full .NET runtime in the client.
A common pitfall: OnInitializedAsync runs TWICE (once on the server, once on the client). If you fetch data from the database in this method, you'll do it twice. To solve this, use the **Persistent Component State** feature in .NET. The server fetches the data, serializes it into the HTML, and the client 'Hydrates' from that data instead of calling the database again.
Q: "Should I prerender everything?"
Architect Answer: "No. Prerender your public marketing pages and read-only dashboards. Don't prerender pages that require authentication or contain highly dynamic, user-specific interactive state. Prerendering adds load to your server, so use it strategically where it provides the most SEO or UX value."
Quizzes linked to this course—pass to earn certificates.
On this page
1. Why Prerender? 2. Handling the 'Double Render' 3. Architect Insight