Hurtigere hjemmeside hjælp til en langsom hjemmeside

Hydration

Hydration er når server-renderet HTML bliver gjort interaktiv med JavaScript på klienten. Stor hydration kan påvirke INP, især på mobil.

Skrevet af Kim Tetzlaff

Kort fortalt: Hydration er processen hvor HTML, der allerede er renderet (server-side eller statisk), bliver “koblet” til JavaScript, så UI’et bliver interaktivt.

I mange setups betyder det, at browseren skal:

  • downloade JavaScript til komponenter
  • parse og execute koden
  • bygge runtime state
  • attach event listeners

Hvis det sker på store dele af siden, kan det blive dyrt – især på mobil.

Hvorfor betyder det noget?

  • Hydration kan give ekstra CPU-arbejde på mobil
  • Stor hydration kan skabe long tasks

Hvilken indflydelse har hydration?

Hydration påvirker typisk:

  • INP: hvis main thread er optaget, reagerer UI langsommere ved klik/tap
  • LCP: hvis CPU er travl tidligt, kan rendering blive forsinket
  • batteri/varme: især på mobil, hvor meget JS kan være dyrt

Et klassisk symptom er: siden ser klar ud, men føles tung ved første interaktion, fordi hydration stadig kører.

Hvornår blev hydration et stort tema?

Hydration blev mere relevant i takt med udbredelsen af JavaScript-frameworks der:

  • server-renderer HTML for hurtigere “første visning”
  • men stadig har brug for klient-JS for interaktivitet

Det skabte en ny balance: hurtig first paint, men potentielt tung JS-arbejde bagefter.

Hvornår er hydration “det værd”?

Hydration giver mening når du reelt har behov for interaktivitet:

  • søgning, filter, checkout
  • dashboards
  • komplekse komponenter

På et videnssite er meget indhold ofte statisk, så det er et oplagt sted at minimere hydration.

Typiske forbedringer

  • Begræns interaktivitet til små islands
  • Fjern unødvendige client-side komponenter

Konkrete optimeringer (praktisk)

1) Begræns interaktivitet til “islands”

I stedet for at gøre hele siden interaktiv, så isolér det:

  • kun den komponent der skal kunne klikkes/filtreres
  • resten som statisk HTML

Det giver typisk stor effekt på INP.

2) Udskyd hydration til efter behov

Hvis en komponent ikke er nødvendig ved første visning:

  • load den først ved interaktion (klik på “åbn”)
  • eller når den kommer i viewport

3) Fjern tredjepart der tvinger ekstra JS

Nogle tredjeparts widgets kræver tung JS initialisering. På et content-site bør de være sparsomt brugt, især tidligt i load.

4) Mål CPU og long tasks

Brug DevTools Performance:

  • kig efter long tasks under load og første interaktion
  • se hvilke scripts der bruger mest tid

Tjekliste

  • Kun nødvendige dele af siden er interaktive
  • Store komponenter hydreres ikke ved første paint, medmindre nødvendigt
  • INP testes på mobil (lav-end hvis muligt)

FAQ

Kan man have et hurtigt site uden hydration?

Ja, hvis du ikke har brug for client-side interaktivitet.

For mange content-sites er statisk HTML + meget lidt JS ofte den hurtigste og mest stabile løsning. Du kan stadig have små widgets, men undgå at gøre hele UI’et “app-agtigt” hvis det ikke er nødvendigt.

Er hydration det samme som “JavaScript på siden”?

Ikke helt. Hydration er den specifikke proces hvor framework-komponenter bliver interaktive.

Du kan godt have lidt JavaScript (fx små widgets, analytics, formular-validering) uden at hydrere store UI-områder. Det er ofte en god måde at holde performance stabil på.

Næste skridt fra begreb til handling

Guides og blogindlæg der matcher begrebets emne - ud fra fælles tags og sidens fokus.

Om forfatteren

Kim Tetzlaff

Kim skriver og vedligeholder indhold på hurtigere-hjemmeside.dk med fokus på målelig performance, Core Web Vitals og teknisk SEO. Målet er at gøre optimering konkret: hvad der faktisk flytter tal i feltdata, og hvordan du finder den korteste vej fra symptom til fix.

Kim Tetzlaff