JavaScript-SEO er den delen av teknisk SEO som handler om nettsider der innhold, lenker eller metadata lages eller lastes med JavaScript. Målet er at søkemotorer og AI-crawlere kan gjennomsøke, rendre og indeksere innholdet like godt som om det lå ferdig i HTML-koden fra serveren.
Moderne nettsider bygges ofte med rammeverk som React, Vue, Next.js og Nuxt. De gir gode brukeropplevelser, men kan skape problemer for søkemotorene hvis de settes opp feil. Typisk ser siden perfekt ut i nettleseren, mens kildekoden som roboten mottar, nesten er tom.
Problemet oppdages ofte sent, gjerne først når trafikken faller etter at en ny nettside er lansert. Derfor bør SEO være med når utviklerne velger arkitektur, ikke bare i sluttesten.
Google crawler først HTML-en og legger deretter siden i kø for rendering, der en oppdatert versjon av Chromium kjører JavaScript og ser den ferdige siden. Først da blir innhold som bare finnes etter rendering, tilgjengelig for indeksering. Rendering krever ressurser, og det kan ta tid før alt er på plass.
Mange andre roboter er enklere. Flere AI-crawlere og enkelte søkemotorer kjører i liten grad JavaScript, og ser derfor bare det som ligger i den opprinnelige HTML-en. Innhold som bare finnes etter rendering, risikerer dermed å være usynlig i AI-søk.
Client-side rendering (CSR): nettleseren bygger siden med JavaScript. Mest krevende for søkemotorene.
Server-side rendering (SSR): serveren sender ferdig HTML, og JavaScript tar over i nettleseren etterpå.
Statisk generering (SSG): sidene bygges på forhånd og leveres som ferdige filer. Raskt og robust.
Hybrid: en blanding, der hver sidetype får metoden som passer best.
For sider som skal rangere, er SSR eller SSG som regel det tryggeste valget. Det er også derfor et headless CMS bør kombineres med en frontend som rendrer på serveren.
Lenker som bare fungerer med klikk-hendelser, uten ekte <a href>-elementer.
Innhold som først lastes når brukeren scroller eller klikker.
Tittel, metabeskrivelse og canonical som settes med JavaScript og ikke finnes i HTML-en.
JavaScript- og CSS-filer som er blokkert i robots.txt.
Feilsider som svarer med statuskode 200 i stedet for 404.
Test med URL-inspeksjon i Google Search Console og sammenlign kildekoden med den rendrede siden. Les mer om hvordan vi jobber med teknisk SEO.
Crawling: gjennomsøkingen som JavaScript kan gjøre tregere eller ufullstendig.
Indeksering: innhold som ikke rendres, blir ikke indeksert.
Headless CMS: en arkitektur der JavaScript-SEO er særlig viktig.
Teknisk SEO: fagområdet JavaScript-SEO er en del av.
Se alle begrepene i ordboken.