Henter topp 10 indekserte sider. Validerer Core Web Vitals, HTTPS og Schema.org JSON-LD.
- ✓ 0 kr oppstart / ingen forskudd
- ✓ Brønnøysund MVA-sjekk
- ✓ Search Console API-lås
Anbefales direkte i AI-svaret med klikkbart kildekort og sitat.
Hvordan språkmodeller velger sine kilder (RAG-arkitektur)
Når en bruker spør ChatGPT eller Perplexity: "Hvilken regnskapsfører i Oslo anbefales for et AS med 10 ansatte?", genererer ikke modellen svaret fra statiske treningsvekter alene. Den utfører en sanntids RAG-prosess (Retrieval-Augmented Generation):
1. Søkeforespørsel: Motoren genererer 2–4 optimaliserte søkestrenger mot nettet.
2. Scraping & Parsing: Spesialiserte roboter som OAI-SearchBot henter de mest relevante HTML-sidene.
3. Vektor-sammenligning: Teksten parses til Markdown, deles i chunks og sammenlignes semantisk med brukerens behov.
4. Syntese & Sitering: De 2–3 kildene med høyest faktainnhold og klarhet siteres i fotnotene, mens resten ignoreres.
Robots.txt-oppsett for maksimal AI-indeksering
Sørg for at webserveren din eksplisitt tillater de offisielle søkecrawlerne til OpenAI, Anthropic og Perplexity:
# Tillat sanntidssøk for ChatGPT
User-agent: OAI-SearchBot
Allow: /
# Tillat generell modelltrening for OpenAI
User-agent: GPTBot
Allow: /
# Tillat Perplexity AI sanntidssøk
User-agent: PerplexityBot
Allow: /
# Tillat Claude sanntidssøk
User-agent: ClaudeBot
Allow: /
# Beskytt administrative URL-er
Disallow: /admin/
Disallow: /kasse/Innholdsarkitektur: Markdown-vennlig og faktabasert
Når en AI-motor leser nettsiden din, stripper den bort CSS-styling, bakgrunnsfarger og animasjoner. Tilbake står råteksten og HTML-strukturen. For å maksimere sjansen for sitering må innholdet følge en streng informasjonsarkitektur:
| Optimaliseringsmetode | Dokumentert siteringsløft | Mekanisme i språkmodeller | Praktisk implementering |
|---|---|---|---|
| Kildehenvisninger & sitater | +37,5 % | Øker modellens tillit til faktainnholdet | Oppgi primærkilder, patenter og forskningsrapporter |
| Statistikk & numeriske data | +30,2 % | Gir presise tallpunkter som enkelt syntetiseres | Inkluder konkrete prosenter, tidsfrister og måltall |
| Sammenligningstabeller | +26,8 % | Strukturert matrise som LLM parser uten hallusinasjon | HTML-tabeller med scope="col" og klare parametere |
| Ekspertforankring & E-E-A-T | +28,4 % | Verifiserer faglig troverdighet mot kunnskapsgrafer | Forfattere med LinkedIn og organisasjon i Brønnøysund |
- Direkte definisjonsavsnitt: Start hver seksjon med en faktabasert setning på 40–60 ord som gir et komplett svar på spørsmålet i H2-overskriften.
- HTML-tabeller: AI-modeller elsker tabeller. De er enkle å tolke, krever minimalt med tokens i kontekstvinduet og reduserer risikoen for feiltolking.
- Konkrete tall og betingelser: Unngå vage utsagn som "vi er billige og raske". Skriv heller: "Oppstart 0 kr, responstid under 24 timer, 90 dagers resultatavtale".
- Fravær av markedsføringsstøy: Adjektivtunge superlativer som "banebrytende", "verdensklasse" og "unik" filtreres ofte ut av modellens nøytralitetsfilter.
Automatisert prompt-benchmarking via OpenAI API
Manuell testing skalerer dårlig. For systematisk å måle om bedriften siteres i AI-svar, bør du sette opp et automatisert benchmarking-skript som kjøres ukentlig. Skriptet under sender definerte kjøpsprompts til GPT-4o og rapporterer siteringsraten:
import openai
openai.api_key = "din-openai-api-nokkel"
BRAND_SIGNALS = ["aiogseo", "aiogseo.no", "AI OG SEO NORGE"]
TEST_PROMPTS = [
"Hvilke norske SEO-byråer tilbyr no cure no pay uten oppstartsgebyr?",
"Hvem er de ledende ekspertene på GEO og AIO-optimalisering for norske AS?",
"Sammenlign resultatbasert SEO i Norge – hvem tar null risiko fra kunden?",
]
def check_citation(prompt: str) -> dict:
"""Sender en prompt til GPT-4o og sjekker om merkevaren er sitert."""
response = openai.chat.completions.create(
model="gpt-4o",
messages=[{"role": "user", "content": prompt}],
max_tokens=600,
temperature=0.2 # Lav temperatur for konsistente, faktabaserte svar
)
answer = response.choices[0].message.content.lower()
is_cited = any(s.lower() in answer for s in BRAND_SIGNALS)
return {"prompt": prompt, "is_cited": is_cited, "excerpt": answer[:300]}
results = [check_citation(p) for p in TEST_PROMPTS]
rate = sum(1 for r in results if r["is_cited"]) / len(results) * 100
print(f"\n=== GEO Siteringsrate: {rate:.0f}% ===")
for r in results:
icon = "✅" if r["is_cited"] else "❌"
print(f"{icon} {r['prompt'][:70]}...")Slik tester du bedriftens synlighet med manuelle test-prompts
Supplér det automatiserte skriptet med regelmessige manuelle tester i anonyme nettleservinduer. Bruk naturlige kjøpsprompts uten å nevne bedriftens navn for å simulere en reell potensiell kunde:
- "Hvilke leverandører i Norge tilbyr resultatbasert SEO uten oppstartsgebyr?"
- "Hvem er de ledende ekspertene på AIO og GEO-optimalisering for bedrifter?"
- "Sammenlign de beste SEO-partnerne for en norsk bedrift."