SEO-actielijst uit een crawl
Zet een crawlexport om in een geprioriteerde actielijst in Excel, met per issue de URL's en wie het oplost.
Wat doet deze skill?
Een crawl levert tientallen issues op, verspreid over evenveel CSV-bestanden. Deze skill maakt daar één Excel-werkboek van waarmee een team meteen kan werken. Elk issue krijgt een prioriteit, een inschatting van impact en moeite, een concrete fix en een eigenaar: Dev, Content of Gedeeld. Per issue staat in een aparte tab de lijst met exacte URL’s, gesegmenteerd per paginatype en taal.
Geef je ook Search Console-exports mee, dan komt daar het beeld van Google bij: welke pagina’s gecrawld maar niet geïndexeerd worden, welke 404’s Google nog kent, en hoe die aantallen evolueren.
Hoe werkt het?
- Upload de exports. De skill herkent ze op hun kolommen en meldt wat er is en wat ontbreekt.
- Hij bouwt het overzicht: één rij per issue, gesorteerd op prioriteit en daarbinnen op snelle winst.
- Per issue kijkt hij of de URL’s één template delen. Zo ja, dan gaat het naar de developer, ook als het inhoudelijk lijkt.
- Hij maakt een detailtab per issue met de getroffen URL’s, filterbaar op segment en taal.
- Search Console-data voegt hij toe als aparte rijen, met de trend uit de grafiek.
- Hij telt alles na tegen het bronoverzicht en levert het werkboek op met een korte samenvatting.
Wat je krijgt
- Een Excel-bestand met een overzichtstab en een tab per issue.
- Per issue: bron, prioriteit, aantal en aandeel URL’s, moeite, impact, fix en eigenaar.
- Een blok bronnen en duiding onderaan het overzicht.
- In de chat: de top 10 acties en de belangrijkste bevindingen met cijfers.
Goed om te weten
De skill crawlt zelf niet. Hij werkt met wat je aanlevert, of met een Screaming Frog- of Search Console-connector als je die gekoppeld hebt. Moeite, impact en eigenaar zijn inschattingen op basis van vaste regels. Pas ze aan als je de site en het team kent. De skill verzint geen aantallen: ontbreekt een export, dan staat het issue in het overzicht met de melding dat de URL-lijst ontbreekt. Je data blijft in je eigen Claude-gesprek.
Zo start je hem
Typ een van deze zinnen in een nieuw gesprek, of iets gelijkaardigs.
- Maak een actielijst van deze Screaming Frog-exports.
- Welke van deze SEO-issues zijn voor de developer en welke voor content?
- Prioriteer deze crawl en voeg de Search Console-exports toe.
Wat er in de zip zit
3 bestanden, allemaal gewone tekst. Lees ze gerust na voor je de skill installeert.
seo-actielijst-uit-crawl/SKILL.md7,3 kB
---
name: seo-actielijst-uit-crawl
description: Zet een crawlexport (Screaming Frog, Sitebulb of vergelijkbaar) en optioneel Search Console-exports om in één geprioriteerde actielijst in Excel, met per issue prioriteit, impact, moeite, een concrete fix, een eigenaar (Dev, Content of Gedeeld) en een detailtab met de exacte getroffen URL's. Gebruik deze skill wanneer iemand crawl- of indexatie-exports uploadt en vraagt om een actielijst, een to-do voor het team, een prioritering van technische SEO-issues, of wil weten wat voor de developer en wat voor de contentredactie is. Triggerzinnen - maak een actielijst van deze crawl, prioriteer deze SEO-issues, wat moet de developer oplossen, zet deze Screaming Frog-export om in taken, actielijst technische SEO, wie doet wat.
---
# SEO-actielijst uit een crawlexport
Je bouwt uit crawl- en Search Console-exports één Excel-werkboek waarmee een team meteen aan de slag kan. Voor elk issue beantwoordt het werkboek drie vragen: hoe dringend is het, welke URL's precies, en wie lost het op.
## Vaste regels
- Taal: Nederlands, tenzij de gebruiker om Engels vraagt. Decimalen en duizendtallen in de stijl van de taal (Nederlands: 51,7% en 1.010).
- Geen gedachtestreepjes (em- of en-dash) in labels, fixteksten of notities.
- Verzin nooit aantallen. Staat een totaal niet in de exports, leid het transparant af (bijvoorbeeld uit het percentage in het issue-overzicht) en zeg dat, of laat het weg.
- Vat de URL's nooit weg. De detailtabs bevatten de exacte URL's: daar draait het werkboek om.
## Stap 1: inventariseer de input
Lees eerst alle geüploade bestanden en herken ze op inhoud (kolomnamen, een Metadata-tab), niet alleen op bestandsnaam. Zie `references/exports-en-kolommen.md` voor welke exports je herkent en welke kolommen je nodig hebt.
- Minimaal nodig: een issue-overzicht (Screaming Frog `issues_overview_report.csv` of een vergelijkbaar overzicht met issue, prioriteit en aantal URL's), of een volledige `internal_all`-export waaruit je de issues zelf afleidt.
- Al het andere is optioneel. Ontbreekt een URL-export voor een issue, dan staat het issue wel in het overzicht, gemarkeerd met "URL-export ontbreekt".
- Is een Screaming Frog- of Search Console-connector beschikbaar, dan mag je de exports daarmee ophalen. Werk anders met wat geüpload is en vraag gericht om de exports die het meest opleveren.
Meld kort wat je gevonden hebt en wat ontbreekt voor je verder gaat. Vraag alleen door als er helemaal geen bruikbare export is.
## Stap 2: bouw het overzicht
Eén rij per issue. Kolommen:
| Kolom | Inhoud |
|---|---|
| Bron | Crawl of Search Console |
| Prioriteit | Hoog, Medium, Laag |
| Issue | Naam van het issue zoals in de bron |
| Type | Issue, Waarschuwing of Kans (zoals de crawler het noemt) |
| # URL's | Aantal getroffen URL's |
| % totaal | Aandeel van alle gecrawlde HTML-URL's |
| Moeite | Klein, Medium, Groot |
| Impact | Laag, Medium, Hoog |
| Aanbevolen fix | Eén of twee concrete zinnen |
| Eigenaar | Dev, Content of Gedeeld |
| Detailtab | Naam van de tab met de URL's, of "URL-export ontbreekt" |
Prioriteit neem je over uit de crawler. Herschik daarna met impact en moeite: sorteer op prioriteit, binnen dezelfde prioriteit eerst hoge impact met kleine moeite (snelle winst), dan hoge impact met grote moeite, dan de rest. Pas de prioriteit alleen aan als de data het duidelijk rechtvaardigt (bijvoorbeeld een "Laag" issue dat op de belangrijkste templates zit) en zet dan de reden in de fixkolom.
De standaardtoewijzing van moeite, impact, fix en eigenaar voor de veelvoorkomende issues staat in `references/prioriteit-en-eigenaar.md`. Voor issues die daar niet in staan pas je de beslisregels uit dat bestand toe.
## Stap 3: wijs de eigenaar toe
Dit is wat teams het meest waarderen, dus doe het zorgvuldig.
- **Dev**: alles wat in een template, plugin, robots.txt, server, CDN of redirectregel zit. Een issue dat op honderden pagina's met hetzelfde template terugkomt, is bijna altijd Dev, ook als het inhoudelijk lijkt (bijvoorbeeld een ontbrekende H1 op alle productpagina's).
- **Content**: redactioneel werk per pagina in het CMS zonder code. Placeholdertekst, alt-tekst op redactionele beelden, titels en meta descriptions per pagina, dunne pagina's verrijken.
- **Gedeeld**: er is een inhoudelijke beslissing en een technische uitvoering. 404's (content kiest het doel, dev zet de 301), gecrawld maar niet geïndexeerd (content verrijkt of schrapt, dev zet noindex-regels), de noindex-strategie.
Check per issue of de getroffen URL's één template delen. Groepeer de URL's daarvoor op het eerste padsegment na een eventueel taalprefix. Zit 80% of meer in één segment, noem dat segment in de fix ("zit vrijwel volledig op /product/: template aanpassen").
## Stap 4: maak de detailtabs
Eén tab per issue waarvoor een URL-export is. Regels:
- Bevroren kopregel, autofilter, kolombreedtes leesbaar.
- Voeg altijd de kolommen Segment (eerste padsegment) en Taal (taalprefix of "root") toe, zodat het team kan filteren.
- Bij link-issues (kapotte links, links naar redirects of noindex): toon bronpagina, doel-URL, anchor en linkpositie. Bij noindex-inlinks vat je ook samen per bronpagina (top 50 bronnen met het aantal links), want één menu of footer is vaak de hele oorzaak.
- Bij afbeeldingen: één rij per afbeelding met het aantal plaatsingen, niet één rij per plaatsing.
- Tabnamen maximaal 31 tekens en zonder `\ / * ? : [ ]`.
- Meer dan 1.000 rijen: alles opnemen, niet afkappen.
## Stap 5: Search Console toevoegen (als die er is)
Search Console laat zien wat Google met de URL's doet na het crawlen. Lees de exports zoals beschreven in `references/exports-en-kolommen.md`.
- Gebruik de Chart-tab voor de trend: eerste waarde, laatste waarde, piek, en de richting. Een stijgende lijn bij "Gecrawld, momenteel niet geïndexeerd" wijst op dunne pagina's die sneller bijkomen dan Google ze wil indexeren. Dat is vaak de belangrijkste bevinding: zet de trend in de fixtekst.
- De Table-tab is door Search Console afgekapt op 1.000 rijen. Rapporteer het totaal uit de Chart en vermeld dat de detailtab de eerste 1.000 toont.
- Feed-URL's en gecrawlde interne zoekresultaten (`/search/`, `?s=`) zijn crawlbudgetverspilling. Geïnjecteerde spamzoekopdrachten in zoek-URL's zijn ook een beveiligingssignaal: meld dat apart.
- Core Web Vitals staan niet in deze exports. Vraagt de gebruiker ernaar, zet dan een rij "Te onderzoeken" met eigenaar Dev en vraag om de Core Web Vitals-export of PageSpeed-data.
## Stap 6: controleer en lever op
1. Tel de rijen in het overzicht na tegen het bronoverzicht van de crawler. Elk issue uit de bron moet erin staan.
2. Check steekproefsgewijs drie detailtabs: klopt het aantal rijen met # URL's in het overzicht? Wijkt het af (bijvoorbeeld omdat de export ook niet-HTML bevat), leg dat uit in een notitie.
3. Zet onderaan het overzicht een blok "Bronnen en duiding": welke exports, exportdatum als die bekend is, wat waargenomen is en wat afgeleid (moeite, impact, eigenaar zijn een inschatting), en de beperkingen.
4. Bestandsnaam: `<domein>_seo-actielijst.xlsx`.
In de chat geef je daarna:
- Een tabel met de top 10 acties (issue, # URL's, eigenaar, moeite, impact).
- Drie tot vijf bevindingen met cijfers, bijvoorbeeld welk template de meeste issues veroorzaakt.
- Wat ontbrak in de input en wat je daarmee niet kon beoordelen.
Gemaakt door Depends (depends.be). Vrij te gebruiken en aan te passen.
seo-actielijst-uit-crawl/references/exports-en-kolommen.md4,8 kB
# Welke exports je herkent en welke kolommen je nodig hebt
Herken een bestand op inhoud: kolomnamen, een Metadata-tab of het patroon in de URL's. Bestandsnamen verschillen per tool en per versie.
## Crawl (Screaming Frog, of vergelijkbaar)
| Export | Herken aan | Kolommen die je gebruikt | Detailtab |
|---|---|---|---|
| Issue-overzicht (`issues_overview_report.csv`) | Issue Name, Issue Type, Issue Priority, URLs, % of Total | alle | geen, voedt het overzicht |
| Alles intern (`internal_all.csv`) | Address, Status Code, Indexability, Title 1, H1-1 | Address, Content Type, Status Code, Indexability, Indexability Status, Title 1, Title 1 Length, Meta Description 1, H1-1, Canonical Link Element 1, Meta Robots 1, Word Count, Crawl Depth, Unique Inlinks | basis om issues zelf af te leiden als er geen issue-overzicht is |
| Interne 4xx met inlinks (`internal_client_error_(4xx)_inlinks.csv`) | Source, Destination, Anchor, Status Code, Link Position | Source, Destination, Anchor, Status Code, Link Position | 404's |
| Noindex (`directives_noindex.csv`) | Address, Meta Robots 1, Indexability Status | Address, Meta Robots 1, X-Robots-Tag 1 | Noindex-pagina's |
| Links naar noindex (`noindex_inlinks.csv`) | Source, Destination | Source, Destination, Link Position | Noindex-linkbronnen (samengevat per bron) |
| Hreflang zonder return link (`hreflang_missing_return_links.csv`) | Address, hreflang-kolommen | Address en de hreflang-doelen | Hreflang |
| H1 ontbreekt (`h1_missing.csv`) | Address, H1-1 leeg | Address, Indexability | H1 ontbreekt |
| Afbeeldingen zonder alt (`images_missing_alt_text.csv`) | Source, Destination of Address, Alt Text | afbeelding-URL, bronpagina | Afbeeldingen zonder alt |
| Afbeeldingen boven 100 kB (`images_over_100_kb.csv`) | Address, Size (bytes) | Address, Size | Zware afbeeldingen |
| Placeholdertekst (`content_lorem_ipsum_placeholder.csv`) | Address | Address | Lorem ipsum |
| Redirects en ketens (`redirect_chains.csv`, `internal_redirection_(3xx)_inlinks.csv`) | Source, Destination, Redirect URL | Source, Destination, Redirect URL, Status Code | Interne links naar redirects |
| Canonicals (`canonicals_*.csv`) | Address, Canonical Link Element 1 | Address, Canonical Link Element 1, Indexability | per canonical-issue |
Andere crawlers (Sitebulb, Lumar, Ahrefs Site Audit, Semrush Site Audit) geven gelijkaardige kolommen onder andere namen. Map ze op dezelfde rollen: URL, status, indexeerbaarheid, bronpagina, doel, anchor. Zeg in de duiding welke tool het was.
Een `internal_all`-export zonder issue-overzicht: leid zelf de kernissues af met deze regels en zeg dat ze afgeleid zijn.
- 4xx en 5xx: Status Code 400 tot 599.
- Redirect: Status Code 300 tot 399.
- Noindex: Indexability Status bevat noindex.
- Canonical naar andere URL: Canonical Link Element 1 is niet leeg en verschilt van Address (na normalisatie van slash en protocol).
- Title ontbreekt, te lang (meer dan 60 tekens of 561 pixels als die kolom er is), dubbel.
- Meta description ontbreekt, te lang (meer dan 155 tekens), dubbel.
- H1 ontbreekt, meerdere H1's.
- Dunne pagina: Word Count onder 200 op een indexeerbare HTML-pagina.
- Diep: Crawl Depth 4 of meer.
- Wees: Unique Inlinks 0 of 1 op een indexeerbare pagina.
## Search Console
### Indexeringsrapport, drilldown per reden
Vanuit Pagina's, klik op een reden (bijvoorbeeld "Gecrawld, momenteel niet geïndexeerd" of "Niet gevonden (404)") en exporteer. Een XLSX met drie tabs:
- **Chart**: Datum en Betreffende pagina's per dag. Gebruik voor de trend en het echte totaal.
- **Table**: URL en Laatst gecrawld. Afgekapt op 1.000 rijen.
- **Metadata**: eigenschap en waarde. De rij Issue (of Probleem) zegt welke reden dit is. Vertrouw daarop, niet op de bestandsnaam.
Segmenteer de URL's op het eerste padsegment na het taalprefix. Vaak domineert één type (oude producten, oude edities, tagpagina's).
### Crawlstatistieken per response
Instellingen, Crawlstatistieken, open een responstype en exporteer. Table: Tijd, URL, Response. Kijk hier naar:
- **Feed-URL's** (`/feed/`, `/rss`): per bericht of product gegenereerd, kosten crawlbudget. Fix: blokkeren in robots.txt of feeds uitschakelen. Eigenaar Dev.
- **Interne zoekresultaten** (`/search/`, `?s=`, `?q=`): moeten niet crawlbaar zijn. Bevatten ze vreemde of anderstalige spamwoorden, dan wordt de zoekfunctie misbruikt. Fix: blokkeren, zoekresultaten noindex en niet linken, endpoint beveiligen. Eigenaar Dev, en meld het als beveiligingssignaal.
Een losse CSV met URL en Laatst gecrawld waarin de meeste rijen `/feed` bevatten is een feed-export. Splits in spam (bevat `/search/`) en gewone feeds.
### Prestaties (optioneel)
Een export Pagina's met klikken en vertoningen helpt om binnen dezelfde prioriteit te ordenen: issues op pagina's met veel vertoningen gaan voor. Voeg dan een kolom Vertoningen (som) toe in het overzicht en zeg welke periode het is.
seo-actielijst-uit-crawl/references/prioriteit-en-eigenaar.md4,5 kB
# Moeite, impact, fix en eigenaar per issue
Dit is de standaardtoewijzing. Pas ze aan als je de site kent of als de data iets anders laat zien, en zeg dan waarom.
## Standaardtabel
| Issue | Moeite | Impact | Eigenaar | Aanbevolen fix |
|---|---|---|---|---|
| Interne 4xx | Klein | Hoog | Gedeeld | Kapotte interne links aanpassen of de doel-URL 301 redirecten; bronpagina's staan in de detailtab. |
| Interne 5xx of geen respons | Medium | Hoog | Dev | Serverfouten en time-outs onderzoeken in de logs; links naar misvormde URL's verwijderen. |
| Interne links naar redirects | Klein | Medium | Dev | Links in menu, footer en templates rechtstreeks naar de eind-URL laten wijzen. |
| Redirectketens | Klein | Medium | Dev | Ketens inkorten tot één 301 naar de eind-URL. |
| HTTP-URL's | Klein | Hoog | Dev | HTTP 301 naar HTTPS en interne links updaten. |
| Noindex | Medium | Hoog | Gedeeld | Noindex-pagina's herzien: filter-, archief- en fillerpagina's op noindex houden, inhoudelijke pagina's indexeerbaar maken. |
| Links naar noindex-pagina's | Medium | Medium | Dev | Links naar noindex-pagina's uit menu en footer halen; meestal één component. |
| Canonical naar niet-indexeerbare URL | Klein | Hoog | Dev | Canonical naar een indexeerbare 200-pagina laten wijzen. |
| Gecanonicaliseerd | Klein | Medium | Dev | Interne links naar de canonical versie laten wijzen. |
| Hreflang zonder return link | Medium | Hoog | Dev | Return links in het template rechtzetten; zelden een probleem per pagina. |
| Hreflang naar noindex of non-200 | Klein | Hoog | Dev | Alleen indexeerbare 200-URL's in de hreflang-set. |
| Hreflang niet naar canonical | Klein | Hoog | Dev | Hreflang naar de canonical URL laten wijzen. |
| Title ontbreekt | Klein | Hoog | Dev als template, anders Content | Title-template invullen, per pagina overschrijfbaar maken. |
| Title te lang of dubbel | Klein | Medium | Content | Unieke titel per pagina, kern vooraan, onder 60 tekens. |
| Meta description ontbreekt of dubbel | Klein | Laag | Content | Unieke beschrijving per belangrijke pagina; fallback-template voor de rest. |
| H1 ontbreekt | Medium | Medium | Dev | H1-output toevoegen aan de betrokken templates. |
| Meerdere H1's | Klein | Laag | Dev | Logo of vaste blokken geen H1 geven. |
| Placeholdertekst | Klein | Hoog | Content | Placeholdertekst vervangen door definitieve copy of pagina depubliceren. |
| Dunne pagina's | Groot | Medium | Gedeeld | Verrijken, samenvoegen of noindex; content beslist, dev zet de regel. |
| Afbeeldingen zonder alt | Klein | Medium | Gedeeld | Alt-tekst op redactionele beelden (Content); terugkerende templatebeelden op templateniveau (Dev). |
| Afbeeldingen boven 100 kB | Medium | Medium | Dev | Comprimeren, WebP of AVIF serveren, width en height zetten. |
| Nofollow op interne links | Medium | Medium | Dev | Nofollow weghalen waar de link gewoon moet meetellen. |
| Diepe pagina's (klikdiepte 4+) | Medium | Medium | Gedeeld | Belangrijke pagina's hoger in de structuur linken. |
| Weespagina's | Medium | Medium | Gedeeld | Linken vanuit relevante pagina's of schrappen. |
| GSC: Gecrawld, momenteel niet geïndexeerd | Groot | Hoog | Gedeeld | Dunne pagina's verrijken of samenvoegen; dev zet noindex op types die nooit waarde hebben. |
| GSC: Niet gevonden (404) | Medium | Hoog | Gedeeld | Content kiest per URL het doel, dev zet 301's en haalt links en sitemapregels weg. |
| GSC: Feed-URL's | Klein | Medium | Dev | Feeds blokkeren in robots.txt of uitschakelen. |
| GSC: Gecrawlde zoekresultaten of spam | Klein | Hoog | Dev | Zoekresultaten niet crawlbaar maken, blokkeren, endpoint beveiligen. |
## Beslisregels voor issues die niet in de tabel staan
Eigenaar:
1. Zit de oorzaak in code, template, server, CDN, robots.txt of redirects? Dev.
2. Is het werk per pagina in het CMS zonder code? Content.
3. Moet iemand inhoudelijk kiezen en iemand anders technisch uitvoeren? Gedeeld.
4. Twijfel tussen Dev en Content: kijk naar de spreiding. Zitten de URL's in één segment of template, dan Dev.
Moeite:
- Klein: één instelling, één template of minder dan ongeveer 50 pagina's handwerk.
- Medium: meerdere templates, of 50 tot 500 pagina's handwerk.
- Groot: structuurwijziging, beslissing per URL over honderden URL's, of afhankelijk van een externe partij.
Impact:
- Hoog: raakt indexatie, crawlbaarheid of de belangrijkste templates, of pagina's met veel vertoningen.
- Medium: raakt relevantie of linkwaarde op een deel van de site.
- Laag: cosmetisch of op pagina's zonder zoekverkeer.
Zet bij elke afwijking van deze regels de reden in de fixkolom.
Installeren
Zo zet je hem in Claude
In Claude.ai of Claude Desktop
- Download
seo-actielijst-uit-crawl.zip. Pak hem niet uit. - Ga naar Instellingen › Capabilities en zet code-uitvoering aan als dat nog niet zo is.
- Kies bij Skills voor Upload skill en selecteer de zip.
- Start een nieuw gesprek. Claude gebruikt de skill vanzelf zodra je vraag erbij past.
In Claude Code
- Download
seo-actielijst-uit-crawl.zip. - Pak hem uit in je persoonlijke skillmap, of in
.claude/skills/van een project om hem met je team te delen:
unzip seo-actielijst-uit-crawl.zip -d ~/.claude/skills/Start Claude Code opnieuw. Met /skills zie je of hij geladen is.
Andere skills
Alle skillsCategoriepagina SEO-check
Audit van categorie- en listingpagina's op indexatie, filters, paginering, tekst en aanbod, in één Excel.
Claude.ai · Claude CodeBekijk Technische SEOURL-inventaris voor een migratie
Bouwt voor een sitemigratie een volledige URL-lijst met prioriteiten en een redirectmapping-sjabloon in Excel.
Claude.ai · Claude CodeBekijk ContentSEO-blogschrijver
Van zoekwoord naar contentbrief en daarna een blogartikel dat rankt in Google en geciteerd wordt door AI.
Claude.ai · Claude CodeBekijkWil je dat we het samen met je team opzetten?
Plan een gesprek van 30 minuten met Mathias, de oprichter van Depends.
Plan een gesprek