Hoppa till innehåll
Tillbaka till bloggen
Engineering

AEO och llms.txt: Gör din webbplats citerbar för AI-motorer

Things at WebThings at Web·06 juni 2026·6 min läsning

Vi byggde om thingsatweb.com för att vara läsbar och citerbar av AI-svarsmotorer. Här är precis vad vi implementerade: en robots.txt med tre kategorier av AI-bottar, en publik llms.txt, snabbsvarsstycken, JSON-LD och rendering på serversidan.

Answer Engine Optimization (AEO) är konsten att strukturera en webbplats så att AI-system som ChatGPT, Perplexity och Googles AI-ytor kan hitta, extrahera och citera den. Här är destinationen AI-svaret – inte den blå länken. När vi byggde om thingsatweb.com implementerade vi AEO från början till slut, och här är vad vi gjorde och varför.

AEO och GEO kontra klassisk SEO

Klassisk SEO optimerar för en rankad lista med länkar som en människa klickar på. AEO – och dess nära släkting GEO (Generative Engine Optimization) – optimerar för ett syntetiserat svar som en modell genererar, ofta med en hänvisning tillbaka till din sida. Användaren besöker kanske aldrig din webbplats, så målet skiftar från "vinn klicket" till "var källan modellen citerar".

Mekaniken överlappar men prioriteringarna skiljer sig åt:

  • Klassisk SEO belönar nyckelord, inlänkar och rankningsposition.
  • AEO/GEO belönar maskinläsbar struktur: rena fakta, fristående textstycken, strukturerad data och åtkomst för crawlers.

En sida kan ranka högt i Google men vara osynlig för en AI-motor om en bot inte når den, inte kan tolka den, eller inte kan lyfta ut en ren, citerbar mening. Vi optimerade för båda.

Tre kategorier av AI-bottar i robots.txt

Det enskilt mest avgörande beslutet är din bot-policy i robots.txt. AI-crawlers är inte en enda sak – de delas in i tre kategorier med olika syften, och du kan tillåta eller blockera var och en oberoende. Att blanda ihop dem är det vanligaste misstaget vi ser.

KategoriSyfteExempel på user-agentsVår policy
Indexbottar för sökBygger indexet som driver AI-svar och visar citatGPTBot, OAI-SearchBot, PerplexityBot, ClaudeBot, Google-Extended, Applebot-ExtendedTillåt
Användarutlösta hämtareHämtar en sida live för att en användare frågat assistenten om denChatGPT-User, Claude-User, Perplexity-UserTillåt
TräningsskraporSamlar text för modellträning, inte citatCCBot, BytespiderTillåt (ditt val)

Avvägningen är verklig. Indexbottar och användarutlösta bottar är hur du blir citerad – att blockera dem tar bort dig helt från AI-svar, så vi tillåter dem. Träningsskrapor matar modellvikter och skickar sällan trafik eller attribution tillbaka; många sajter blockerar dessa på principiella grunder. Vi valde att tillåta dem på thingsatweb.com eftersom bred närvaro i träningskorpusar förstärker varumärkeskännedom, men detta är ett legitimt beslut per organisation. Poängen är: bestäm varje kategori medvetet i stället för en svepande regel.

Notera att Google-Extended och Applebot-Extended är opt-out-tokens för AI-träning som läggs ovanpå vanlig Googlebot-/Applebot-crawling – att styra dem påverkar inte klassisk sökindexering.

llms.txt: en kurerad karta för språkmodeller

llms.txt är en föreslagen standard för en markdown-fil i webbplatsens rot som ger språkmodeller en ren, kurerad ingångspunkt. Enligt specifikationen på llmstxt.org föreslogs den av Jeremy Howard (Answer.AI) den 3 september 2024. Problemet den löser anges tydligt i specen: språkmodellers kontextfönster är för små för att hantera de flesta webbplatser i sin helhet, och rå HTML är full av navigation, annonser och markup som slösar dessa tokens.

Formatet som specen definierar, i ordning:

  1. En H1 med namnet på projektet eller webbplatsen – "den enda obligatoriska delen".
  2. Ett blockcitat med en kort sammanfattning som innehåller nyckelinformation.
  3. Valfria fritextstycken (utan rubriker).
  4. Noll eller fler H2-sektioner med fillistor, där varje post är en markdown-länk med en valfri notering.
  5. En valfri ## Optional-sektion för sekundära länkar som en modell kan hoppa över i ett kort sammanhang.

Vår thingsatweb.com/llms.txt följer detta exakt: en H1 med varumärkesnamnet, ett blockcitat som sammanfattar vilka vi är, sedan H2-sektioner som länkar till våra tjänster, produkter och kontaktsidor med beskrivningar på en rad. Det är hisspresentationen i maskinläsbar form – när en modell vill förstå sajten utan att crawla allt är den filen genvägen. (Specen hänvisar också till verktyg som llms-ctx-full.txt som expanderar en llms.txt till en fylligare kontextfil.)

Snabbsvar, JSON-LD och rendering på serversidan

Tre implementationer på sidan gjorde det tyngsta lyftet för citerbarhet.

Fristående snabbsvarsstycken

AI-motorer lyfter ut textstycken, inte hela sidor. Varje viktig sida inleds med ett stycke på 40–60 ord som besvarar kärnfrågan fullständigt, utan pronomen som beror på tidigare sammanhang. Vi bäddar även in sr-only-snabbsvar där en synlig sammanfattning skulle störa designen. Ett fristående stycke citeras mycket oftare ordagrant.

FAQPage- och Organization-JSON-LD

Vi levererar strukturerad data på varje sida:

  • Organization-schema som fastställer vilka Things at Web är, med sameAs-länkar och våra systerbolag.
  • FAQPage-schema som parar frågor med svar i maskinläsbar form.
  • BlogPosting-schema på artiklar som denna.

Strukturerad data tar bort tvetydighet: i stället för att gissa vårt företagsnamn eller ett svar ur löpande text läser motorn det som ett typat faktum.

Rendering på serversidan

Den här är icke förhandlingsbar. AI-crawlers exekverar i allmänhet inte JavaScript på samma sätt som en webbläsare – om ditt innehåll bara dyker upp efter hydrering på klientsidan ser många bottar ett tomt skal. Vi renderar thingsatweb.com på servern så att fullständigt innehåll, strukturerad data och snabbsvar finns i det första HTML-svaret, innan något JavaScript körs. Vi publicerar även en värdbegränsad XML-sitemap och tvåspråkig hreflang som länkar svenska [thingsatweb.se] och engelska thingsatweb.com så att varje motor når rätt språkversion.

Vill du ha detta inbyggt i din egen stack utför våra team för webbutveckling och AI och maskininlärning precis detta arbete – eller hör av dig.

Vanliga frågor

Vad är skillnaden mellan SEO och AEO?

SEO optimerar för rankning i en lista med länkar som en människa klickar på. AEO (Answer Engine Optimization) optimerar så att AI-system kan extrahera och citera ditt innehåll inuti ett genererat svar. AEO prioriterar maskinläsbar struktur – snabbsvar, JSON-LD och åtkomst för crawlers – framför enbart nyckelordstäthet och inlänkar.

Ska jag blockera AI-bottar i robots.txt?

Det beror på kategorin. Blockera indexbottar (GPTBot, PerplexityBot) så försvinner du från AI-svar, så de flesta sajter tillåter dem. Användarutlösta hämtare betjänar live-förfrågningar och tillåts oftast. Träningsskrapor (CCBot, Bytespider) matar modellträning med lite attribution, och att blockera dem är ett försvarbart beslut per organisation.

Vad är llms.txt och behöver jag en?

llms.txt är en markdown-fil i webbplatsens rot som ger språkmodeller en kurerad karta över ditt viktigaste innehåll. Enligt llmstxt.org-specen behöver den en H1-titel, ett blockcitat som sammanfattning och valfria H2-länksektioner. Den är inte obligatorisk, men ett billigt sätt att styra hur modeller sammanfattar din sajt.

Varför är rendering på serversidan viktig för AI?

AI-crawlers exekverar i allmänhet inte JavaScript som en webbläsare. Om ditt innehåll laddas först efter hydrering på klientsidan ser dessa bottar en tom sida och kan varken indexera eller citera den. Rendering på serversidan placerar fullständigt innehåll och strukturerad data i den första HTML-koden, synlig för varje crawler.

Ersätter AEO traditionell SEO?

Nej. De kompletterar varandra. Klassisk SEO driver fortfarande rankade klick från mänskliga sökare, medan AEO fångar citat inuti AI-svar. Samma grunder – ren struktur, snabba sidor, korrekt innehåll – tjänar båda. Vi optimerade thingsatweb.com för båda ytorna samtidigt i stället för att välja en.