Skip to content

Glossary

Hydration

The step where JavaScript takes over HTML that arrived already rendered, attaching the behaviour the markup alone does not have.

It explains a familiar gap: the page is visible but nothing responds yet. Between those two moments the browser is downloading and running the script that turns static markup into a working interface, and on a slow phone that gap is where INP goes bad.

The mismatch error comes from the same place. Server and browser have to produce the same markup, so anything that differs between them — a date rendered in local time, a random value, a check for the window object — breaks the pairing and forces a redraw.

The cheapest hydration is the one that does not happen. Content that only needs to be read does not need a component, and interaction confined to a few islands leaves most of the page as plain HTML that works before any script arrives.