Hoe Indexly werkt

Indexly vergelijkt elke dag de pagina's uit je sitemap met de pagina's die Google werkelijk in de index heeft, en biedt het verschil aan. Instellen doe je eenmalig en kost tien tot twintig minuten, inclusief het eigen Google Cloud-project dat Google voor het aanbieden verlangt; daarna is er niets meer te doen.

In acht stappen aan de slag

Van koppelen tot de eerste pagina's die worden aangeboden. Eén stap doe je bij Google zelf: een eigen Cloud-project, want zonder dat mag er niets aangeboden worden. Eenmalig instellen, daarna draait het vanzelf.

  1. Log in met je Google-account

    Je koppelt Indexly aan de Google Search Console waar je websites al in staan. Je geeft toestemming bij Google zelf; wij zien nooit je wachtwoord.

  2. Voeg ons toe als beheerder

    In Search Console geef je ons account toegang tot de website. Zonder eigenaars- of volledige toegang mag Google ons niets over je pagina's vertellen en kunnen we niets aanbieden.

  3. Wij halen je websites op

    Zodra de koppeling staat, laten we zien welke websites (properties) er onder je Google-account hangen, inclusief het rechtenniveau per stuk.

  4. Je kiest een website

    Je voegt de website toe die je wilt laten bewaken. Elke website is een losse regel op je factuur en is per maand opzegbaar.

  5. Wij lezen uit wat Google al kent

    We vragen per pagina bij Google op wat de indexstatus is, inclusief de reden die Google er zelf bij geeft. Zo weet je niet alleen dát een pagina mist, maar ook waarom.

  6. Je geeft je sitemap-URL op

    Uit je sitemap halen we de volledige lijst pagina's die er hoort te zijn. Een sitemapindex met meerdere bestanden volgen we automatisch.

  7. Je stelt je eigen Google Cloud-project in

    Verplicht, want Google staat 200 aanbiedingen per dag toe per Cloud-project — voor het hele project, niet per website. Met een eigen project is dat quotum van jou alleen, en het kost je niets: de API van Google is gratis. Een wizard in het dashboard loopt de stappen met je door: project aanmaken, service-accountsleutel uploaden, de Indexing API aanzetten en het serviceaccount als eigenaar toevoegen in Search Console. Reken op tien tot twintig minuten. Wij blijven daar zelf met marge onder: 180 aanbiedingen per dag voor je hele account, en hoogstens 50 per website — zodat één website het project niet leegtrekt ten koste van de andere.

  8. Wat mist, bieden we aan

    Elke dag bieden we de pagina's aan die Google nog niet heeft opgenomen, binnen de limieten die Google stelt. Pagina's die je zelf hebt uitgesloten met noindex of robots.txt slaan we over.

Wat er elke dag gebeurt

Eén ronde per website, in zes stappen. Ze staan bewust los van elkaar: elke stap heeft zijn eigen limiet bij Google, en een stap die mislukt mag de volgende niet tegenhouden. Een kapotte sitemap hoort niet te betekenen dat we ook niet meer controleren wat Google al kent.

1. Sitemap inlezen

We halen je sitemap op en werken de paginalijst bij. Nieuwe pagina's komen erbij; pagina's die uit je sitemap verdwijnen blijven met hun historie staan zolang de website in je account staat, zodat je later nog kunt zien wat ermee gebeurd is.

2. Status opvragen

Per pagina vragen we bij Google op wat de indexstatus is, inclusief de reden die Google eraan hangt. Pagina's die nog nooit gecontroleerd zijn gaan voor, daarna de pagina's die het langst geleden aan de beurt waren.

3. Je pagina’s zelf ophalen

We halen je pagina’s op en vergelijken zeven onderdelen met de vorige keer. Alleen wat werkelijk veranderd is, gaat opnieuw de pijplijn in — zodat je dagquotum niet opgaat aan pagina’s waar niets aan gebeurd is.

4. Aanbieden

Wat mist of gewijzigd is, bieden we aan bij Google en melden we via IndexNow bij de andere zoekmachines. Pagina's uit je sitemap gaan voor, en we dienen ook je sitemap opnieuw in bij Search Console. Uitgesloten pagina's slaan we over.

5. Melden bij de andere zoekmachines

Dezelfde pagina’s gaan via IndexNow naar Bing, Yandex, Seznam, Naver en Yep. Geen dagquotum, en het loopt door als je het aanbieden aan Google uitzet. Google doet aan dit kanaal niet mee.

6. De zoekcijfers ophalen

Vertoningen, kliks en posities uit Search Console. Hier ontdekken we ook pagina’s die Google wél kent maar die niet in je sitemap staan — die zou je anders nooit zien.

Ook buiten Google: IndexNow

Naast Google geven we je wijzigingen door via IndexNow, een open protocol waar meerdere zoekmachines op aangesloten zijn. Eén melding vanaf jouw website, en de aangesloten zoekmachines weten dat er iets nieuws of gewijzigds is.

Vijf zoekmachines, één melding

Bing, Yandex, Seznam, Naver en Yep nemen IndexNow-meldingen aan. Omdat de index van Bing ook DuckDuckGo en Ecosia voedt, raakt één melding meer zoekmachines dan die lijst doet vermoeden.

Tot 10.000 URL's per bericht

En geen dagquotum. Een nieuwe categorie, een grote import of een verhuizing van duizenden pagina's gaat in één bericht mee, in plaats van uitgesmeerd over weken.

Voor elk soort pagina

IndexNow is gemaakt voor gewone pagina's: een blogpost, een productpagina, een categorie. Er is geen soort pagina die erbuiten valt en er is niets waarvoor je een uitzondering nodig hebt.

Eén tekstbestand, verder niets

Voor IndexNow zetten we samen één sleutelbestand op je eigen domein. Geen Cloud-project, geen serviceaccount, geen console waar je doorheen moet.

Wat IndexNow niet is

Google doet niet mee aan IndexNow. Het zijn twee losse kanalen naast elkaar: Google bedienen we via de Indexing API en je sitemap, de andere zoekmachines via IndexNow. En eerlijk is eerlijk: Bing en Yandex zijn samen een klein deel van het Nederlandse zoekverkeer. De winst van IndexNow zit in dekking en snelheid buiten Google, niet in volume.

De twee kanalen naast elkaar

Welk kanaal bereikt welke zoekmachines, wat mag er per keer doorheen en wat moet je er zelf voor instellen. Dat hoor je te weten vóórdat je begint, niet erna.

De twee kanalen naast elkaar
Wat je wilt wetenGoogle Indexing APIIndexNow
Welke zoekmachinesAlleen Google.Bing, Yandex, Seznam, Naver en Yep. De index van Bing voedt daarnaast DuckDuckGo en Ecosia.
Hoeveel per keer200 aanbiedingen per dag, per Cloud-project.Tot 10.000 URL's per bericht, zonder dagquotum.
Voor welke pagina'sGoogle beschrijft de Indexing API zelf als bedoeld voor vacaturepagina's en live-uitzendingen. Ander gebruik wordt gedoogd, maar is niet waar de API voor bedoeld is.Officieel voor alle soorten pagina's. Een blogpost of productpagina is precies waar het protocol voor gemaakt is.
Wat je zelf insteltEen eigen Google Cloud-project met een serviceaccount dat eigenaar is in Search Console. Reken op tien tot twintig minuten.Eén sleutelbestand op je eigen domein.
Wat het kostNiets. De API van Google is gratis.Niets. Het protocol is vrij te gebruiken.
Wie beslist over opnameGoogle, altijd.Elke zoekmachine voor zichzelf. Een melding is een signaal, geen opdracht.

Alleen als er werkelijk iets veranderd is

Van elke pagina bewaren we een vingerafdruk van de onderdelen die er voor indexering toe doen. Blijft die vingerafdruk gelijk, dan gebeurt er niets. Verandert hij, dan gaat de pagina opnieuw door de pijplijn en gaat er een melding uit.

Wat we in die vingerafdruk meenemen

  • de titel van de pagina
  • de meta description
  • de canonical
  • de robots-instructie
  • de eerste H1
  • de hoofdtekst
  • de structured data

Waarom niet de hele pagina

Navigatie, voettekst, een jaartal, een teller of een blokje aanbevolen artikelen verandert bij vrijwel elk bezoek. Zou de hele HTML meetellen, dan leek élke pagina altijd gewijzigd en zei een melding niets meer. Door alleen te kijken naar wat een zoekmachine gebruikt, levert een wijziging een betrouwbaar moment op: hier werd de inhoud werkelijk anders. Het scheelt bovendien verzoeken die nergens toe leiden, bij ons en bij de zoekmachines.

Hoe we je pagina's ophalen

Met een herkenbare user-agent, zodat je in je serverlogboek ziet dat wij het zijn. We houden ons aan je robots.txt en benaderen je server niet sneller dan nodig is. Van de pagina bewaren we de vingerafdruk, niet de pagina zelf.

De tijdlijn per pagina

Per URL leggen we zes momenten vast. Samen laten ze zien waar de tijd blijft: bij het ontdekken, bij het ophalen door Google, of bij het opnemen in de index.

  1. Laatst gewijzigd

    Het moment waarop de inhoud van de pagina volgens de vingerafdruk anders werd.

  2. Door ons ontdekt

    Het moment waarop de URL voor het eerst in onze lijst stond, uit je sitemap of via Search Console.

  3. Door Google opgehaald

    Het moment dat Google zelf als laatste crawl bij de pagina noemt. Dit is het enige moment dat rechtstreeks van Google komt.

  4. Geïndexeerd

    De eerste controle waarbij we de pagina als opgenomen in de index aantroffen.

  5. Eerste vertoning

    De eerste dag waarop de pagina volgens Search Console in de zoekresultaten werd getoond.

  6. Eerste klik

    De eerste dag waarop iemand vanuit de zoekresultaten op de pagina klikte.

Wat je eruit afleest

Uit die momenten volgen cijfers als de mediane tijd tussen ontdekken en indexering. Je vergelijkt ze per website en per deel van je site, bijvoorbeeld je blog tegenover je productpagina's. Zo zie je of een traag onderdeel aan die pagina's ligt of aan de site als geheel.

Dit zijn onze waarnemingen, niet Google's momenten

Google vertelt niet wanneer hij een pagina geïndexeerd heeft. Wij weten wanneer wij het voor het eerst zágen. Daarom staat er bij zo'n moment 'vastgesteld op' en niet 'gebeurd op': de werkelijke gebeurtenis ligt ergens tussen de vorige controle en die waarneming. De nauwkeurigheid is dus nooit beter dan hoe vaak we controleren. Pagina's die recent gewijzigd zijn controleren we vaker dan de rest, dus daar ligt de tijdlijn dichter bij de werkelijkheid dan bij een pagina die al jaren stilstaat.

Als er pagina's uit de index verdwijnen

Elke dag vergelijken we het aantal geïndexeerde pagina's met dat van de vorige meting. Zakt het, dan krijg je een e-mail met de uitsplitsing er meteen in — zodat je niet eerst het dashboard hoeft open te slaan om te weten waar je moet kijken.

Zo ziet zo'n melding eruit

Vorige meting
18.420
Deze meting
16.870
Verschil
1.550 minder

En daaronder: waarvan 1.400 uit /producten/. Dat tweede getal is het getal waar je iets mee kunt. '1.550 pagina's kwijt' zet niemand aan het werk, want het kan overal vandaan komen; '1.400 uit /producten/' wijst naar één template, één export of één koppeling.

Hetzelfde verlies, langs drie indelingen tegelijk

Welke indeling het antwoord geeft, hangt af van wat er stuk is. Daarom kiezen we niet voor je: je krijgt ze alle drie in dezelfde melding.

De map uit het pad

Het eerste deel van de URL: /producten/, /blog/, /support/. Zit het verlies vrijwel helemaal in één map, dan zit het meestal ook in één template of één stuk van je CMS.

Het sitemapbestand

Veel websites splitsen hun sitemap per contenttype. Komt het verlies uit één bestand, dan weet je welk deel van je website het betreft, ook als de paden zelf niets prijsgeven.

De reden die Google gaf

Gecrawld maar niet geïndexeerd, een andere pagina als canonical gekozen, uitgesloten door een noindex. Die reden bepaalt of je naar je pagina's moet kijken of naar je instellingen.

Tel de drie indelingen niet bij elkaar op

Elke verdwenen pagina komt in alle drie de indelingen terug: hij ligt in een map, hij kwam uit een sitemapbestand en er hangt een reden aan. Het zijn drie manieren om hetzelfde verlies te verdelen, geen drie soorten verlies. Tel je ze op, dan telt elke pagina drie keer mee.

Wanneer je een melding krijgt

Pas als het verlies minstens 5 pagina's is én minstens 2% van de vorige meting. Allebei, want elk van de twee valt in zijn eentje de verkeerde kant op: op een website van 40 pagina's is 2% al één pagina, en dan gaat er bij elke normale schommeling een melding uit. Andersom is 300 verdwenen pagina's op een website van een half miljoen ver onder die 2% — een echt verlies dat je nooit te zien krijgt. Wie elke dag een melding krijgt, leest ze na een week niet meer; dat is net zo schadelijk als helemaal niets sturen.

Wij meten Google's index niet, wij meten onze eigen controle

Een daling betekent één ding: bij onze laatste controle gaf Google minder pagina's als geïndexeerd op dan bij de controle daarvoor. Dat kán een echte deïndexatie zijn, maar het kan net zo goed een controleronde zijn die halverwege op een dagquotum stukliep. Daarom staat bij elke melding hoeveel pagina's er werkelijk zijn nagekeken, en zet het dashboard er zichtbaar 'meting mogelijk onvolledig' bij als dat aantal opvallend laag lag. Zonder dat getal stuur je iemand achter een meetfout aan, en dat kost meer dan het oplevert.

De indexeerbaarheidsscore per pagina

Naast 'staat hij erin of niet' geven we elke pagina een getal van 0 tot 100. Niet als rapportcijfer, maar als optelsom: de pagina begint op 100, en elke bevinding haalt er een benoemd aantal punten af. Zo lees je niet alleen dát een pagina er slecht voor staat, maar ook waaraan dat ligt en of je er zelf iets aan kunt doen.

Zo komt een score tot stand

Beginstand
100
De canonical wijst naar een andere URL
− 30
Er wijzen maar twee interne links naar deze pagina
− 10
Er staat geen structured data op de pagina
− 5
Indexeerbaarheid
55

Elke regel uit dit rijtje staat ook in je dashboard, bij die ene pagina, met dezelfde gewichten. Daarom is het geen zwarte doos: je kunt de aftrekken natellen, en je ziet meteen welke je zelf in je CMS kunt oplossen en welke over je server gaan.

Blokkerend is iets anders dan verzwakkend

Een pagina met een noindex, een blokkade in robots.txt of een 404 kán niet in de index. Zo'n pagina krijgt daarom geen aftrekje maar een plafond: zijn score komt niet boven de 5 uit, hoe netjes de rest van die pagina ook is. Een pagina met weinig interne links of zonder structured data is alleen zwakker; die staat gewoon in de wachtrij bij Google, met een minder goede uitgangspositie. In het dashboard zie je dat verschil in de kleur en in de woorden en niet alleen in het getal, want het is een ander soort mededeling en het vraagt ander werk: een instelling herstellen tegenover een pagina beter maken.

Dit is onze optelsom, geen oordeel van Google

Google kent deze score niet en gebruikt hem niet. Wij tellen op wat we zien: wat Google per pagina over de indexstatus zegt, wat er staat in de HTML die wij ophalen, en hoe je pagina's onderling naar elkaar linken. Daarom staat bij elke pagina de volledige lijst aftrekken met hun gewicht erbij. Een score die je niet kunt natellen is een mening met een cijfer erop; deze kun je natellen, regel voor regel.

Onbekend is geen aftrek

Een pagina die we nog niet gecontroleerd hebben, krijgt geen score. Geen nul, geen vijftig: geen. Die pagina's worden apart geteld en blijven buiten het gemiddelde en de mediaan. Anders kijkt iedereen met een verse website naar een scherm vol lage cijfers die alleen zeggen dat wíj nog niets gedaan hebben, en dat is geen uitspraak over die pagina's.

Zonder extra belasting van je server

Voor deze score halen we niets extra's op. De signalen komen uit dezelfde HTML die de inhoudscontrole toch al binnenhaalt om te bepalen of een pagina gewijzigd is. Eén ophaling, twee antwoorden: is er iets veranderd, en hoe staat deze pagina ervoor. Er komt dus geen tweede ronde over je website heen.

Wij renderen geen JavaScript

We lezen de HTML zoals hij bij ons binnenkomt en voeren geen scripts uit; daar is een headless browser voor nodig en die hebben we niet. Wat we wél kunnen is het risico signaleren: staat er weinig tekst in de HTML en tegelijk veel script, dan melden we dat als vermoeden. Meer dan een vermoeden is het niet, want wat er ná het uitvoeren van dat script op de pagina staat, hebben wij niet gezien. Google rendert wél en ziet dus mogelijk meer dan wij. Daarom weegt deze bevinding licht mee en staat er in het dashboard uitdrukkelijk 'vermoeden' bij.

Interne links tellen we pas als we genoeg gezien hebben

De bevindingen over interne links bestaan alleen als we van minstens 60% van je pagina's de HTML gezien hebben. De inhoudscontrole werkt een website in dagen af, dus na de eerste ronde van een website met 5.000 pagina's kennen we de links van maar een fractie daarvan. Zouden we dan al tellen, dan stond bijna je hele website als wees op je scherm — terwijl dat alleen iets zegt over onze eigen voortgang. Onder die grens laten we de link-bevindingen dus weg, en het dashboard laat zien hoe ver we zijn.

Waar we op controleren

Elke pagina die we ophalen loopt langs tweeëntwintig controles. Zeven daarvan betekenen dat de pagina er niet in kán; de vijftien andere maken het moeilijker. Hieronder staan ze allemaal, met wat de bevinding betekent en wat je eraan doet — letterlijk dezelfde uitleg die je in je dashboard bij die pagina krijgt.

Zeven bevindingen die indexering onmogelijk maken

Hierbij helpt aanbieden niet, en daarom bieden we zulke pagina’s ook niet aan: dat zou je dagquotum kosten zonder enige kans op resultaat. Verandert er iets aan de pagina zelf, dan gaat hij vanzelf mee in de eerstvolgende ronde.

Uitgesloten met noindex

blokkerend

In de HTML of in de HTTP-header staat een noindex-instructie. Zolang die er staat, mag Google de pagina niet opnemen — hoe goed hij verder ook is.

Wat je eraan doet: Klopt het dat deze pagina eruit moet? Dan is er niets aan de hand. Zo niet, haal de noindex weg in je CMS, je SEO-plug-in of je serverinstellingen.

Bron: Van Google

Geblokkeerd in robots.txt

blokkerend

Je robots.txt verbiedt dit pad. Google mag de pagina daardoor niet eens ophalen en weet dus niet wat erop staat.

Wat je eraan doet: Zoek op welke regel in je robots.txt dit pad raakt. Moet de pagina wél vindbaar zijn, haal die regel dan weg of maak hem specifieker.

Bron: Van Google

Bestaat niet meer

blokkerend

Op dit adres staat niets meer: een 404, een 410, of een pagina die zich als 'niet gevonden' gedraagt.

Wat je eraan doet: Haal de URL uit je sitemap en uit je interne links. Hoort er wél een pagina te staan, zet hem dan terug of stuur in één stap door naar het nieuwe adres.

Bron: Van Google

Je server weigert ons

blokkerend

Wij kregen een 401, 403 of 429 terug bij het ophalen. De pagina bestaat misschien prima, maar hij is voor ons niet te lezen.

Wat je eraan doet: Kijk of een firewall, een inlogmuur of een snelheidslimiet ons tegenhoudt. We halen op met een herkenbare user-agent, dus je kunt ons in je serverlogboek terugvinden en gericht doorlaten.

Bron: Zelf gemeten

Serverfout

blokkerend

De server gaf een 5xx terug of weigerde de toegang. Dit gaat niet over de inhoud van de pagina maar over de bereikbaarheid ervan.

Wat je eraan doet: Kijk in je serverlogboek rond het tijdstip van de controle. Zolang dit speelt, komt geen enkele pagina er goed doorheen.

Bron: Van Google

Omleiding niet te volgen

blokkerend

Google liep vast op de omleiding van dit adres: een lus, een keten die te lang werd, of een eindadres dat niet reageerde.

Wat je eraan doet: Loop de omleiding zelf na. Laat hem in één stap naar het eindadres wijzen, en zorg dat dat eindadres bestaat en snel antwoordt.

Bron: Van Google

Google koos een andere pagina

blokkerend

Google ziet deze pagina als variant van een andere en toont die andere in de zoekresultaten. Dit is de keuze van Google zelf en niet per se die van jou.

Wat je eraan doet: Staat die andere pagina goed in Google, dan is er niets mis. Wil je deze pagina wél apart in de index, maak hem dan inhoudelijk onderscheidend en laat de canonical naar zichzelf wijzen.

Bron: Van Google

Vijftien bevindingen die een pagina verzwakken

De pagina kán in de index, maar staat er zwakker voor. Achter elke bevinding staat wat hij van de indexeerbaarheidsscore afhaalt. Die gewichten liggen vast en staan er niet voor niets bij: ze zijn de reden dat je het getal zelf kunt natellen.

Canonical wijst naar een andere URL

−30

In de HTML van deze pagina staat een canonical die naar een ander adres verwijst. Daarmee zegt de pagina zelf dat een andere URL het origineel is. Google mag dat naast zich neerleggen, maar doet dat meestal niet.

Wat je eraan doet: Bepaal welke versie het origineel hoort te zijn. Is dat deze pagina, zet de canonical dan op zijn eigen adres; dat is meestal één instelling in je CMS of je SEO-plug-in.

Bron: Zelf gemeten

Wij konden hem niet ophalen

−25

Onze eigen ophaling mislukte: een time-out, een certificaatfout of een verbinding die afbrak. Dat Google er niet bij kan volgt hier niet uit — wij kijken vanaf één server op één moment.

Wat je eraan doet: Controleer of de pagina van buiten je eigen netwerk bereikbaar is. Blijft het staan, kijk dan naar je certificaat, je firewall en de reactietijd van je server.

Bron: Zelf gemeten

Geen enkele interne link

−25

Binnen je eigen website wijst geen enkele pagina naar dit adres. Zoekmachines vinden hem dan alleen via je sitemap, en een pagina waar niemand naar linkt leest voor Google als een pagina die er niet toe doet.

Wat je eraan doet: Neem de pagina op in een menu, in een overzichtspagina of in een tekstlink vanaf een pagina die het al goed doet.

Bron: Uit je interne links

Wel opgehaald, niet opgenomen

−20

Google heeft de pagina gelezen en besloten hem niet op te nemen. Dat is bijna altijd een oordeel over de inhoud: te dun, te veel lijkend op andere pagina's, of te weinig aanleiding om te tonen.

Wat je eraan doet: Maak de pagina inhoudelijk sterker of onderscheidender. Opnieuw aanbieden helpt hier zelden — de inhoud is het probleem, niet de bekendheid.

Bron: Van Google

Dezelfde tekst als een andere pagina

−20

De hoofdtekst van deze pagina is gelijk aan die van een andere pagina op dezelfde website. Google kiest er dan één om te tonen, en welke dat wordt bepaalt hij zelf.

Wat je eraan doet: Voeg de pagina's samen, maak ze inhoudelijk verschillend, of wijs met een canonical aan welke van de twee het origineel is.

Bron: Zelf gemeten

Dit adres stuurt door

−20

Op dit adres staat een omleiding. Het eindadres kan prima geïndexeerd zijn; dit adres zelf hoort dat niet te worden.

Wat je eraan doet: Haal deze URL uit je sitemap en laat je interne links rechtstreeks naar het eindadres wijzen.

Bron: Zelf gemeten

Alleen nofollow-links hierheen

−15

Er wijzen wel interne links naar deze pagina, maar ze staan allemaal op nofollow. Daarmee vraag je zoekmachines uitdrukkelijk om die links niet te volgen.

Wat je eraan doet: Haal het nofollow-kenmerk weg bij de links die je wél gevolgd wilt hebben. Dat zit meestal in een template of in een plug-in die het overal tegelijk zet.

Bron: Uit je interne links

Nauwelijks tekst

−15

We vonden minder dan 250 tekens hoofdtekst in de HTML. Voor Google is er dan weinig om de pagina op te tonen, en weinig reden om hem boven een andere pagina te zetten.

Wat je eraan doet: Schrijf de pagina uit, of laat hem weg als hij geen eigen bestaansrecht heeft. Staat de tekst er volgens jou wél, kijk dan ook naar de bevinding over JavaScript.

Bron: Zelf gemeten

Mogelijk door JavaScript opgebouwd

−10

Dit is een vermoeden en geen vaststelling. In de HTML zoals hij bij ons binnenkwam stond weinig tekst en veel script. Wij renderen geen JavaScript, dus wat er ná het uitvoeren van dat script op de pagina staat weten we niet. Google rendert wél en ziet mogelijk meer dan wij.

Wat je eraan doet: Kijk zelf wat er in de kale HTML staat, met 'bron weergeven' of met de URL-inspectie in Search Console. Ontbreekt je tekst daar, laat je server hem dan meesturen in plaats van hem pas in de browser op te bouwen.

Bron: Zelf gemeten

Omleiding via meerdere stappen

−10

Dit adres komt pas na twee of meer omleidingen op zijn eindbestemming. Elke stap kost tijd, en hoe langer de keten hoe groter de kans dat er onderweg iets misgaat.

Wat je eraan doet: Laat de eerste omleiding rechtstreeks naar het eindadres wijzen, zodat er één stap overblijft.

Bron: Zelf gemeten

Weinig interne links

−10

Er wijzen één of twee interne links naar deze pagina. Hij is daarmee wel te vinden, maar hij krijgt binnen je eigen website weinig gewicht mee.

Wat je eraan doet: Verwijs ernaar vanaf pagina's die het al goed doen: een overzichtspagina, een verwante tekst, of het menu als hij belangrijk genoeg is.

Bron: Uit je interne links

Staat niet in je sitemap

−10

We kennen dit adres, maar het staat niet (meer) in je sitemap. Daarmee ontbreekt het duidelijkste signaal dat deze pagina bij je website hoort.

Wat je eraan doet: Hoort de pagina erbij, zet hem dan in je sitemap. Hoort hij er niet bij, dan is dit precies wat je wilt en kun je het negeren.

Bron: Uit je sitemap

Wel gevonden, nog niet opgehaald

−10

Google kent het adres maar heeft de pagina nog niet opgehaald. Dit gaat meestal over crawlbudget: Google besteedt niet genoeg tijd aan je website, of je server reageerde traag.

Wat je eraan doet: Hier heeft aanbieden juist wél zin, en dat doen we automatisch. Help daarnaast met interne links vanaf pagina's die al goed staan.

Bron: Van Google

Onbekend bij Google

−10

Google heeft dit adres nog nooit gezien. Er is dus nog geen oordeel over de pagina; hij is alleen nog niet ontdekt.

Wat je eraan doet: Hier helpt aanbieden het meest, en dat doen we automatisch. Zorg daarnaast dat de pagina in je sitemap staat en dat er intern naar verwezen wordt.

Bron: Van Google

Geen structured data

−5

We vonden geen JSON-LD op deze pagina. Dat houdt indexering niet tegen — het is de lichtste bevinding die we kennen — maar het kost je de kans op rich results: beoordelingen, prijzen of vragen in het zoekresultaat zelf.

Wat je eraan doet: Zet structured data neer die bij het soort pagina past. De meeste CMS'en en SEO-plug-ins genereren die zelf.

Bron: Zelf gemeten

Wat we níet doen: raden

Een pagina die we nog niet gecontroleerd hebben krijgt geen score. Geen nul en geen vijftig — geen. En een bevinding die we niet betrouwbaar kunnen vaststellen laten we weg in plaats van hem aan te nemen: over wezen zeggen we pas iets als we minstens 60% van je pagina’s zelf hebben opgehaald. Eén bevinding is nadrukkelijk een vermoeden en geen vaststelling, en die staat er ook als vermoeden bij.

Wat Google zelf over een pagina zegt

Naast onze eigen controles vragen we per pagina de status op bij Google. Dat levert twaalf uitkomsten op — tien van Google zelf, plus “nog niet gecontroleerd” en “overig”, die van ons zijn. Bij elke staat wat hij betekent én of opnieuw aanbieden zin heeft — want in de helft van de gevallen heeft dat geen enkele zin, en dat hoor je te weten vóórdat je je dagquotum eraan uitgeeft.

Staat in Google

Deze pagina’s zijn gewoon opgenomen in de index.

Ons advies: Niets doen.

Wel bezocht, niet opgenomen

Google heeft de pagina opgehaald en gelezen, maar besloten hem niet op te nemen. Dat is bijna altijd een oordeel over de inhoud: te dun, te veel lijkend op andere pagina’s, of te weinig aanleiding om te tonen.

Ons advies: Maak de pagina inhoudelijk sterker of onderscheidender. Opnieuw aanbieden helpt hier zelden — de inhoud is het probleem, niet de bekendheid.

Wel gevonden, nog niet bezocht

Google kent het adres maar heeft de pagina nog niet opgehaald. Dit is meestal een signaal over crawlbudget: Google besteedt niet genoeg tijd aan je site, of de server reageerde traag.

Ons advies: Hier heeft aanbieden juist wél zin, en dat doen we automatisch. Help daarnaast met interne links vanaf pagina’s die al goed staan.

Google koos een andere pagina

Google ziet deze pagina als een variant van een andere en toont die andere. Dat gebeurt bij dubbele inhoud, bij filters en varianten in de URL, of bij een canonical die naar elders wijst.

Ons advies: Bepaal zelf welke versie de juiste is en zet de canonical daarheen. Staat die andere pagina al goed in Google, dan is er niets mis en kun je dit negeren.

Uitgesloten met noindex

Op de pagina staat een noindex-instructie. Iemand heeft expliciet vastgelegd dat deze pagina niet in Google mag komen.

Ons advies: Klopt dat? Dan is er niets aan de hand. Zo niet, haal de noindex weg — dit is de meest voorkomende onbedoelde blokkade.

Geblokkeerd in robots.txt

Je robots.txt verbiedt Google de pagina op te halen. Google kan dus niet eens zien wat erop staat.

Ons advies: Controleer je robots.txt. Moet de pagina wél vindbaar zijn, haal dan de blokkade weg.

Stuurt door naar elders

Op dit adres staat een omleiding. De doelpagina kan prima geïndexeerd zijn; dit adres zelf hoort dat niet te worden.

Ons advies: Haal deze URL uit je sitemap en verwijs intern naar het eindadres.

Bestaat niet meer

Google krijgt een 404 terug. Er staat niets meer op dit adres.

Ons advies: Haal de URL uit je sitemap, of zet er weer een pagina neer als dit een vergissing is.

Serverfout

Je server gaf een foutmelding toen Google langskwam. Dit gaat niet over de inhoud maar over de bereikbaarheid.

Ons advies: Kijk in je serverlogs rond het tijdstip van de controle. Zolang dit speelt, komt geen enkele pagina er goed doorheen.

Onbekend bij Google

Google heeft dit adres nog nooit gezien.

Ons advies: Hier helpt aanbieden het meest, en dat doen we automatisch.

Nog niet gecontroleerd

We hebben deze pagina’s nog niet bij Google opgevraagd. Dat gebeurt vanzelf bij de volgende ronde.

Ons advies: Niets doen. Wacht op de volgende controle, of start er zelf een.

Overige reden

Google gaf een reden terug die we nog niet apart benoemen. De letterlijke tekst staat per pagina in de lijst hieronder.

Ons advies: Bekijk de tekst van Google bij de pagina zelf.

Dit oordeel is van Google, niet van ons

Wij halen deze uitkomsten op, vertalen ze en zetten er advies bij, maar het oordeel zelf komt van Google. Verandert Google zijn indeling, dan verandert deze lijst mee. Onze eigen bevindingen hierboven staan daar los naast, en spreken hem nooit tegen: alles wat we van Google weten loopt via één plek in de code.

De grenzen waar we ons aan houden

Google stelt limieten aan hoeveel we per dag mogen opvragen en aanbieden. Die limieten zijn er niet voor niets, en eromheen werken is een goede manier om je toegang kwijt te raken.

Daarom werkt Indexly gespreid: per website een dagelijks maximum aan pagina's die we controleren en aanbieden, met voorrang voor de pagina's die in je sitemap staan. Loopt een limiet vol, dan stoppen we die dag en gaat het de volgende dag verder — in plaats van door te blijven vragen tot Google ons blokkeert. Daarnaast dienen we altijd je sitemap in bij Search Console: dat is de weg die Google voor elke website ondersteunt.

Vragen over de werking

Waarom moet ik jullie als beheerder toevoegen in Search Console?

Zonder eigenaars- of volledige toegang geeft Google ons geen informatie over je pagina's en accepteert het geen verzoeken namens jou. Met alleen kijkrechten kunnen we dus wel de website zien staan, maar er niets mee doen.

Waarom moet ik een eigen Google Cloud-project aanmaken?

Omdat Google de Indexing API begrenst op 200 aanbiedingen per dag per Cloud-project, voor het hele project en niet per website. Zouden alle klanten ons project delen, dan is dat quotum bij een handvol websites op. Met je eigen project heb je die 200 voor jezelf. Het kost je niets, want de API van Google is gratis, en de wizard in het dashboard loopt de stappen met je door: een project aanmaken, een service-accountsleutel uploaden, de Indexing API aanzetten en het serviceaccount als eigenaar toevoegen in Search Console. Zonder dit project kunnen we niets aanbieden; controleren wat er mist gaat wel gewoon door. Wij blijven daar zelf met marge onder: 180 aanbiedingen per dag voor je hele account, en hoogstens 50 per website — zodat één website het project niet leegtrekt ten koste van de andere.

Wat als ik geen sitemap heb?

Dan kunnen we alleen werken met de pagina's die Google al kent, en zien we juist niet wat er mist. Een sitemap is de enige betrouwbare bron van 'wat hoort er te zijn'. Vrijwel elk CMS genereert er automatisch een.

Hoe lang duurt het voordat een aangeboden pagina in Google staat?

Dat bepaalt Google en het verschilt sterk per website en per pagina. Wij leggen vast wanneer we een pagina hebben aangeboden en wanneer we hem voor het eerst in de index zien, zodat je het zelf kunt volgen in plaats van erop te moeten vertrouwen.

Blijven jullie een pagina eindeloos aanbieden?

Nee. Na vijf pogingen stoppen we met die URL. Als een pagina na vijf keer nog steeds niet is opgenomen, ligt het aan de pagina zelf en niet aan het aanbieden — dan blijven proberen kost alleen ruimte die een andere pagina wel kan gebruiken.

Moet ik voor IndexNow iets op mijn website zetten?

Eén tekstbestand met een sleutel op je eigen domein, zodat de zoekmachines kunnen vaststellen dat de melding werkelijk van de eigenaar komt. Verder niets: geen Cloud-project, geen serviceaccount en geen plug-in. Daarna gaan wijzigingen automatisch mee naar Bing, Yandex, Seznam, Naver en Yep.

Hoe weten jullie dat een pagina gewijzigd is?

We halen de pagina op en vergelijken een vingerafdruk van de onderdelen die er voor indexering toe doen: de titel, de meta description, de canonical, de robots-instructie, de eerste H1, de hoofdtekst en de structured data. Navigatie, voettekst en datums laten we er bewust buiten, want die veranderen bij elk bezoek en dan zou elke pagina altijd gewijzigd lijken.

Waarom bieden jullie een ongewijzigde pagina niet gewoon opnieuw aan?

Omdat dat geen nieuw signaal is. Dezelfde pagina opnieuw melden terwijl er niets veranderde, kost dagquotum dat een pagina die wél nieuw of gewijzigd is beter kan gebruiken. Verandert er later alsnog iets, dan pikt de vergelijking dat vanzelf op.

Kloppen de datums in de tijdlijn precies?

Het zijn onze waarnemingen, geen momentopnames van Google. Behalve het crawlmoment, dat Google zelf meldt, geldt overal: wij weten wanneer wij iets voor het eerst zagen, niet wanneer het gebeurde. De werkelijke gebeurtenis ligt tussen de vorige controle en die waarneming, dus de nauwkeurigheid hangt af van hoe vaak we controleren. Recent gewijzigde pagina's komen vaker aan de beurt dan de rest.

Wanneer krijg ik een melding dat er pagina's uit de index verdwenen zijn?

Als het aantal geïndexeerde pagina's ten opzichte van de vorige meting met minstens 5 pagina's én minstens 2% gezakt is. Die twee voorwaarden gelden samen: alleen een percentage laat een kleine website bij elke normale schommeling afgaan, en alleen een aantal laat een echt verlies op een grote website als ruis wegvallen. Dat is de drempel voor wat je op je dashboard ziet, per website en ten opzichte van de vorige meting. De e-mail heeft een eigen drempel die hoger ligt: minstens 3 pagina’s én minstens 5%, geteld over je hele account en vergeleken met een week eerder, van elke soort hooguit één bericht per dag. Zo blijft het dashboard fijnmazig terwijl je mailbox rustig blijft.

Wat betekent het als er 'meting mogelijk onvolledig' bij staat?

Dat we die dag opvallend minder pagina's hebben kunnen nakijken dan gebruikelijk, bijvoorbeeld omdat een dagquotum bij Google vol liep. De daling die je ziet kan dan net zo goed uit onze meting komen als uit de index. Wij meten namelijk niet Google's index zelf, maar wat Google ons bij onze laatste controle opgaf. Daarom staat bij elke melding hoeveel pagina's er werkelijk zijn nagekeken: met dat getal erbij kun je zelf beoordelen of de daling het onderzoeken waard is.

Waarom kloppen de aantallen niet als ik de uitsplitsingen bij elkaar optel?

Omdat het drie indelingen van hetzelfde verlies zijn en geen drie losse verliezen. Elke verdwenen pagina ligt in een map, kwam uit een sitemapbestand en heeft een reden van Google, dus hij telt in alle drie de indelingen mee. Optellen levert daardoor ongeveer drie keer het werkelijke aantal op. Vergelijk binnen één indeling, niet ertussen.

Wat betekent de indexeerbaarheidsscore precies?

Het is een getal van 0 tot 100 dat wij zelf opbouwen, geen cijfer van Google. Elke pagina begint op 100 en elke bevinding haalt er een vast aantal punten af: een canonical die naar een andere URL wijst kost 30 punten, een pagina waar geen enkele interne link naartoe wijst 25, ontbrekende structured data 5. Bij elke pagina staat de volledige lijst aftrekken met hun gewicht, dus je kunt het getal natellen. Pagina's met een noindex, een robots.txt-blokkade of een 404 werken anders: die kúnnen er niet in en krijgen een plafond van 5 in plaats van een aftrek, zodat ze nooit boven een gezonde pagina uitkomen.

Renderen jullie JavaScript om te zien wat er op een pagina staat?

Nee. Daar is een headless browser voor nodig en die hebben we niet; we lezen de HTML zoals hij bij ons binnenkomt. Wat we wél doen is het risico signaleren: weinig tekst in de HTML plus veel script levert de bevinding 'mogelijk door JavaScript opgebouwd' op. Dat is nadrukkelijk een vermoeden — wat er ná het uitvoeren van dat script op de pagina staat hebben wij niet gezien, en Google rendert wél en ziet dus mogelijk meer dan wij. Daarom weegt die bevinding maar 10 punten en staat er in het dashboard 'vermoeden' bij.

Waarom hebben sommige van mijn pagina's helemaal geen score?

Omdat we ze nog niet gecontroleerd hebben. Een pagina die we nog nooit bij Google hebben opgevraagd en nog nooit zelf hebben opgehaald, krijgt geen getal: geen nul en geen vijftig. Die pagina's worden apart geteld en blijven buiten het gemiddelde, de mediaan en de lijst met slechtste pagina's. Een score verzinnen zou alleen maar zeggen dat wij nog niets gedaan hebben, en dat is geen uitspraak over jouw pagina.

Waarom zie ik nergens de melding dat een pagina geen interne links heeft?

Waarschijnlijk omdat we nog te weinig van je website gezien hebben. We tellen inkomende interne links pas als we van minstens 60% van je pagina's de HTML hebben opgehaald. De inhoudscontrole werkt een website in dagen af, dus na de eerste ronde kennen we de links van maar een klein deel — en zouden we dan tellen, dan verklaarden we bijna je hele website tot wees. Het dashboard laat zien welk percentage we op dit moment hebben.

Belast die score mijn server extra?

Nee. De signalen komen uit dezelfde ophaling die we toch al doen om te bepalen of een pagina inhoudelijk gewijzigd is; er komt geen tweede ronde overheen. We halen op met een herkenbare user-agent, houden ons aan je robots.txt en benaderen je server niet sneller dan nodig is.

Klaar om te zien wat er mist?

Koppel je Search Console en bekijk binnen een paar minuten welke pagina's Google nog niet heeft.