Teknisk SEO er den del af SEO, der afgør, om dine sider overhovedet bliver fundet, crawlet og indekseret. Indholdskvalitet betyder først noget, når de tre ting lykkes.
De fleste tekniske SEO-problemer er ikke subtile. Det er et noindex, der blev stående efter launch, et canonical der peger forkert, eller en redirect-kæde, der taber signalet undervejs.
Robots.txt
robots.txt ligger i roden af et domæne og fortæller crawlere, hvilke stier de må hente. Det er et crawling-direktiv, ikke et indekseringsdirektiv — og den skelnen forvolder mere skade end nogen anden misforståelse i SEO.
En URL blokeret i robots.txt kan stadig blive indekseret, hvis andre sider linker til den. Google indekserer den bare uden at kunne se indholdet, hvilket giver de resultater, hvor der står "Ingen information er tilgængelig for denne side". Værre: er en side blokeret i robots.txt, kan Google ikke læse et noindex på den, så blokering er direkte kontraproduktiv, når målet er at få noget ud af indekset.
- Brug
robots.txttil at spare crawl budget på reelt værdiløse stier — facetteret søgning, interne endpoints, uendelige kalendere. - Brug
noindextil at holde noget ude af indekset. Aldrig begge dele på samme URL. - Henvis til dit sitemap fra den.
- Husk at den er offentlig. List ikke hemmelige stier der.
XML-sitemaps
Et sitemap lister de URL'er, du gerne vil have crawlet, eventuelt med lastmod. Det er et hint, ikke en ordre — det hjælper med at finde sider, især på store sites eller sider med få interne links, men det tvinger ikke indeksering igennem.
- Medtag kun canonical, indekserbare URL'er, der svarer
200. Et sitemap fyldt med redirects, 404'ere ellernoindex-sider spilder crawl budget og undergraver tilliden til filen. - Hold
lastmodærlig. Opdaterer du alle datoer ved hvert deploy, lærer du Google at ignorere feltet. - Split i et sitemap-index over 50.000 URL'er eller 50 MB.
- Indsend i Search Console og hold coverage-rapporten op mod det, du forventede.
Canonical tags
<link rel="canonical"> fortæller søgemaskiner, hvilken URL der er den foretrukne, når samme eller meget lignende indhold kan nås på flere adresser — tracking-parametre, session-id'er, sorteringsrækkefølger, http kontra https, varianter med og uden skråstreg til sidst.
Uden den fordeles rankingsignaler på tværs af dubletter, og ingen af dem klarer sig så godt som én samlet URL ville.
- Lav den selvrefererende på hver side. En side, hvis canonical peger på sig selv, er det normale og korrekte.
- Brug absolutte URL'er.
- Canonical skal svare
200. Peger den på en redirect eller en 404, bliver hele hintet upålideligt, og Google ignorerer det. - Hold canonical og sitemap enige. Lister dit sitemap en URL, der canonicaliserer et andet sted hen, sender du modstridende signaler.
- Det er et hint, ikke et direktiv. Google kan og vil tilsidesætte det, når andre signaler peger andetsteds.
Noindex
noindex — som meta robots-tag eller X-Robots-Tag-header — fortæller søgemaskiner, at siden ikke skal med i indekset. I modsætning til robots.txt er det et ægte indekseringsdirektiv.
Brug det til tynde, dublerede eller private-men-ikke-hemmelige sider: interne søgeresultater, filtrerede lister, kvitteringssider, staging-indhold.
To ting skal være på plads:
- Siden skal fortsat kunne crawles, for at
noindexkan læses. Blokerer du den irobots.txtsamtidig, bliver direktivet aldrig set. - Brug
noindex, follow, når siden stadig skal sende linkværdi videre til de sider, den linker til.
Den dyreste SEO-fejl overhovedet er et noindex på hele sitet, der overlever et launch. Tjek det først, hvis trafikken forsvinder fra den ene dag til den anden.
Redirects og HTTP-statuskoder
En redirect sender en klient fra én URL til en anden. Hvilken kode du bruger, afgør, hvad der sker med dine rankingsignaler.
| Kode | Betydning | Bruges til |
|---|---|---|
| 301 | Flyttet permanent | Permanente flytninger. Sender signaler videre. Standardvalget. |
| 302 | Fundet (midlertidig) | Reelt midlertidige flytninger. Holder den gamle URL indekseret. |
| 307 | Midlertidig, metode bevares | HTTP/1.1-variant, der ikke laver POST om til GET. |
| 308 | Permanent, metode bevares | Permanent, hvor request-metoden skal overleve. |
| 404 | Ikke fundet | Indhold der er væk, men måske kommer igen. |
| 410 | Borte | Indhold bevidst fjernet permanent. Ryger hurtigere ud af indekset end 404. |
| 5xx | Serverfejl | Aldrig med vilje. Gentagne 5xx bremser crawling. |
- Brug 301 til permanente flytninger. At bruge 302 til en permanent flytning fortæller Google, at den gamle URL skal beholdes — en meget udbredt og meget dyr fejl under sitemigreringer.
- Redirect direkte til den endelige destination. Kæder udvander signaler, hvert hop koster latency, og efter nogle få stopper crawlere med at følge med.
- Redirect aldrig alle nedlagte sider til forsiden. Google behandler det som soft 404, og det hjælper ingen. Redirect til den nærmeste reelle erstatning, eller svar 410.
- Hold øje med redirect-loops — de fjerner URL'en helt fra indekset.
Crawl budget
Crawl budget er, hvor mange URL'er en søgemaskine henter fra dit site i en given periode. Det er en funktion af, hvor hurtigt din server svarer, og hvor meget crawleren vurderer, indholdet er værd.
For de fleste sites under nogle få tusind sider er det ikke dit problem, og at bekymre sig om det er en afledning. Det betyder noget på store sites, e-handel med facetteret navigation, eller hvor URL-parametre skaber kombinatorisk eksplosion.
- Ret langsomme svar først. En hurtigere server optjener direkte mere crawling — det er her TTFB møder SEO.
- Fjern uendelige URL-rum: facetfiltre, sorteringer, session-id'er, kalendere.
- Skær redirect-kæder og soft 404'ere væk; de brænder budget uden at give noget.
- Hold intern linkstruktur flad, så vigtige sider kan nås på få klik.
Hreflang
hreflang fortæller søgemaskiner, hvilken sprog- og regionsversion af en side der skal vises. Det er relevant for ethvert site på flere sprog, inklusive dette.
- Annotationer skal være gensidige: peger A på B, skal B pege tilbage på A. Ikke-gensidig hreflang ignoreres.
- Medtag en selvrefererende post på hver side.
- Tilføj
x-defaultsom fallback, når intet sprog matcher. - Brug korrekte koder — ISO 639-1 til sprog, ISO 3166-1 Alpha 2 til region (
da,da-DK,en-US). - Hver refereret URL skal være indekserbar og canonical til sig selv. Hreflang der peger på en
noindex-side eller en ikke-canonical URL kasseres uden varsel.
URL-struktur
Læsbare URL'er hjælper brugere mere end algoritmer, men strukturen betyder stadig noget for konsistens og deduplikering.
- Hold dem korte, med små bogstaver, bindestreger og beskrivende ord.
- Vælg én konvention for afsluttende skråstreg og
www, og redirect alt andet til den. At levere samme indhold på fire stavemåder er et selvforskyldt dubletproblem. - Undgå unødvendige parametre; er de uundgåelige, så canonicalisér.
- Lav ikke URL'er om uden god grund. Skal du, så 301 hver gammel URL til sin specifikke erstatning.
Mobile-first indexing
Google indekserer mobilversionen af dit site. Ikke desktopversionen — mobilversionen. Det har været standard for alle sites siden 2023.
Den praktiske konsekvens er, at indhold, der er skjult, beskåret eller kun lazy-loadet på mobil, reelt ikke eksisterer rankingmæssigt.
- Lever samme indhold, overskrifter og structured data på mobil som på desktop.
- Sørg for at mobilsider har de samme interne links; en beskåret mobilnavigation kan efterlade sider uden indgange.
- Verificér med URL Inspection-værktøjet, som viser den renderede mobil-HTML, Google faktisk ser.
llms.txt
llms.txt er et foreslået format — en Markdown-fil i roden af et domæne, der tilbyder et kurateret, maskinlæsbart kort over sitets mest nyttige indhold til sprogmodeller, på samme måde som robots.txt henvender sig til crawlere.
Vær ærlig om status: det er ikke en etableret standard, og ingen større AI-udbyder har forpligtet sig til at respektere det. Det koster næsten ingenting at udgive og hjælper måske, men det erstatter ikke det, der beviseligt driver AI-citationer — klare overskrifter, faktuel korrekthed, structured data og indhold, der reelt er værd at citere.
Du kan validere din fil med Sitechecks llms.txt-tester.