Artikel

Speculative loading — Prefetch og prerender af næste side

Speculative loading forudser brugerens næste side og henter/renderer den proaktivt. Prefetch henter HTML. Prerender kører hele siden i baggrunden. Speculation Rules API er den moderne implementering.

Speculative loading er en performance-teknik hvor browseren proaktivt henter eller renderer sider brugeren endnu ikke har klikket sig til, baseret på forudsigelse af næste navigation. For SEO og Core Web Vitals er speculative loading relevant fordi det markant forbedrer de navigationstider rigtige brugere oplever — og dermed de field-performance-målinger (CrUX) Google bruger som rankinggrundlag. Speculation Rules API er den moderne implementering der giver præcis kontrol over hvad der spekuleres, hvornår og med hvilken aggressivitet.

Typer af speculative loading

DNS-prefetch er det mindste skridt: opslag af domain-navne tidligt.

Preconnect etablerer TCP/TLS-forbindelsen til et origin.

Prefetch henter det fulde HTML-dokument og cacher det med lav prioritet. Kræver minimalt med ressourcer.

Prerender loader og renderer hele siden inkl. alle ressourcer og JavaScript — som en usynlig browser-tab. Øjeblikkelig navigation ved klik, men ressource-intensivt.

Speculation Rules API

Den moderne implementering via et JSON-format i <script type="speculationrules">:

{
  "prefetch": [
    {
      "source": "document",
      "eagerness": "moderate",
      "where": {
        "href_matches": ["/*"],
        "not": {
          "href_matches": ["*\\?*", "*#*"]
        }
      }
    }
  ],
  "prerender": [
    {
      "source": "document",
      "eagerness": "moderate",
      "where": {
        "href_matches": ["/blog/*", "/ordbog/*"]
      }
    }
  ]
}

Eagerness-niveauer styrer hvornår spekulering trigges:

  • conservative — trigger kun ved aktiv hover med tilstrækkelig tid
  • moderate — trigger ved hover (ca. 200ms)
  • eager — trigger ved link discovery (mere aggressivt)

Hvad browseren spekulerer over

"source": "document" instruerer browseren til at finde links i det aktuelle dokument der matcher where-reglerne. Alternativt kan specifikke URLs hardkodes med "source": "list".

href_matches bruger URL-pattern matching. not-rules undtager URL-mønstre — typisk query strings og hash-links der ikke fører til nye sider.

Ressourceforbrug og hensyn

Prerender er ressourcekrævende: browseren skal allokere hukommelse og CPU til at rendere hele siden. Brug det målrettet på de sider brugere oftest navigerer til — ikke på alle sider.

Analyticsscripts kan håndtere dette: mange analytics-biblioteker detekterer prerender via document.prerendering og udskyder beacons til siden faktisk aktiveres.

Prefetch er mere konservativt og egnet til bredere spekulering. En typisk strategi: prefetch alle interne links på sitet, prerender kun de primære flows (kategori → produktside, artikel → næste artikel).

Browser-support

Speculation Rules API er understøttet i Chromium-browsere (Chrome, Edge, Opera) fra 2023. Firefox og Safari understøtter ikke Speculation Rules endnu (2026) — de ignorerer <script type="speculationrules"> og falder tilbage til normal navigation. Det er progressiv enhancement: browsere der forstår det drager fordel, resten er upåvirket.

<link rel="prefetch"> som fallback er fortsat bredt understøttet men giver ikke prerender-kapabiliteterne. → Denne artikel er en del af Web Performance — Core Web Vitals og teknisk hastighed.

Andre artikler i samme emne

Ofte stillede spørgsmål

Hvad er forskellen på prefetch og prerender?
Prefetch henter HTML-dokumentet og cacher det — browseren downloader siden men eksekverer ikke JavaScript og bygger ikke DOM. Prerender henter og processerer hele siden i baggrunden inkl. JavaScript, CSS og undersressourcer — som om siden allerede er åben i en skjult tab. Prerender giver øjeblikkelig navigationsfølelse men bruger markant mere ressourcer.
Hvad er Speculation Rules API?
Speculation Rules API er en moderne browser-standard der erstatter `<link rel='prefetch'>` og `<link rel='prerender'>` med et fleksibelt JSON-format. Den understøtter regelbaseret spekulering (baseret på URL-mønstre og hrefmatches) og eagerness-niveauer (conservative, moderate, eager) der styrer aggressiviteten.
Er speculative loading relevant for Core Web Vitals og SEO?
Speculative loading forbedrer primært brugeroplevede navigationstider — Largest Contentful Paint ved næste sidebesøg reduceres markant ved prerender. For Core Web Vitals er effekten at feltdata (CrUX) forbedres for returnerende brugere og typiske navigationsflows. Det er ikke en faktor ved Googlebots crawling, men bedre field performance i CrUX forbedrer direkte Core Web Vitals-rankingsignalet.
Kan speculative loading skade analytics?
Ja — prerender kan registrere et sidevisning i analytics inden brugeren faktisk navigerer til siden, hvis analytics-scriptet ikke er awareness-aware. Moderne analytics-biblioteker (Google Analytics 4, web-vitals) er Prerender API-kompatible og udskyder track-kald til siden aktiveres via document.prerendering. Tjek at dit analytics-script håndterer dette korrekt inden du aktiverer aggressiv prerender.
Hvad er browser-support for Speculation Rules API i 2026?
Speculation Rules API er understøttet i alle Chromium-baserede browsere (Chrome, Edge, Opera, Arc) fra 2023 og dækker ca. 65-70% af globale browsere. Firefox og Safari understøtter det endnu ikke og falder stille tilbage til normal navigation. Det er progressiv enhancement: sider der ikke forstår speculationrules-scriptet ignorerer det. Som fallback kan <link rel='prefetch'> bruges for ikke-Chromium-browsere.

Placering i ordbogen

Speculative loading — Prefetch og prerender af næste side