How it works
Server rendering and static generation send finished HTML, but it does nothing until the framework loads, rebuilds its component tree in memory, matches it against the existing HTML and attaches event handlers. Until hydration finishes, a page can look ready but ignore taps. If the server and browser render different output (a date or a random value, for example), a hydration mismatch warning appears and parts of the page may re-render.
Because hydrating a whole page is costly, newer approaches do less of it: islands (Astro) hydrate only the interactive components, selective hydration (React) handles first what the user touches, Server Components never hydrate at all, and resumability (Qwik) skips the step entirely.
Related terms
More in Rendering and architecture
Where pages are built