SEO-content optimizer

Schrijft en verbetert categorieteksten, blogs en productpagina's, en zegt welke pagina's eerst aan de beurt zijn.

.zip, 21,7 kBversie 1.0.0bijgewerkt op

Wat doet deze skill?

De skill werkt voor drie soorten pagina’s: categorieteksten rond een productlisting, blogs en productpagina’s. Je kan er iets nieuws mee laten schrijven, een bestaande pagina laten bijwerken vanaf een URL, geplakte tekst of document, of laten uitzoeken welke onderwerpen en pagina’s eerst aan de beurt zijn.

Elk type heeft zijn eigen werkwijze en outputformaat, maar dezelfde harde regels. Alle zoekwoorden die je opgeeft, staan letterlijk in de tekst. Elke People Also Ask-vraag krijgt een antwoord. De koppenstructuur volgt het type. Producten, merken en claims komen er alleen in als ze op je site of in een bron te vinden zijn.

Hoe werkt het?

  1. Claude bepaalt de route (nieuw, bijwerken of radar) en het type pagina. Bij twijfel vraagt hij het.
  2. Hij verzamelt de merkcontext uit je brand guide of het meegeleverde merkprofiel, of leidt toon en conventies af van je website.
  3. Je vult het invulformulier in of beantwoordt de intakevragen. Met een Search Console-export stelt hij zelf zoekwoorden en FAQ-kandidaten voor.
  4. Hij doet de research: SERP, concurrenten, wat er op de categoriepagina staat, de officiële productinfo.
  5. Hij schrijft per taalversie en controleert telkens taal, zoekwoorden, PAA-vragen, links en bronnen.
  6. Bij een update krijg je eerst een diagnose en achteraf een overzicht van wat er veranderde en waarom.

Wat je krijgt

  • Per taalversie een document met zoekwoorden, metadata en de tekst, met koppen op hun echte niveau zodat je kan kopiëren
  • Een researchbestand met per claim de bron
  • Bij productpagina’s een concurrentie- en reviewanalyse
  • Bij een update een diagnose en een wijzigingsoverzicht
  • Bij de radar een top 10 met per item het signaal uit je data, de route en de moeite
  • Invulformulieren voor de drie types en een merkprofiel dat je per merk eenmalig invult

Goed om te weten

De skill verzint niets: geen cijfers, levertijden of productclaims. Ontbreekt informatie, dan vraagt hij erom of laat hij het weg. Bij geneesmiddelen schrijft hij niet verder zonder bijsluiter.

De radar heeft data nodig: een Search Console-export of een zoekwoordexport. Zonder data krijg je geen lijst op gevoel. Hij werkt met web search, web fetch en uploads, en gebruikt een connector als die gekoppeld is. Wat je uploadt, blijft in je eigen Claude-gesprek.

Zo start je hem

Typ een van deze zinnen in een nieuw gesprek, of iets gelijkaardigs.

  • Start workflow: schrijf een categorietekst voor onze pagina tuinstoelen in BENL en NLNL.
  • Optimaliseer deze productpagina: [URL]. De zoekwoorden zijn bijgevoegd.
  • Hier is mijn Search Console-export van de laatste drie maanden. Wat moet ik eerst schrijven of bijwerken?

Wat er in de zip zit

12 bestanden, allemaal gewone tekst. Lees ze gerust na voor je de skill installeert.

seo-content-optimizer/SKILL.md5,9 kB
---
name: seo-content-optimizer
description: Schrijft, optimaliseert en lokaliseert SEO-webteksten voor drie contenttypes, categorieteksten, blogs en productpagina's, via drie routes, iets nieuws schrijven, een bestaande pagina bijwerken (URL, geplakte tekst of document) en uitzoeken welke onderwerpen aan de beurt zijn. Bewaakt harde regels voor zoekwoorden, People Also Ask, koppenstructuur, interne links, metadata en claimdiscipline, en verzint geen feiten. Werkt met web search, web fetch en geüploade exports (Search Console, zoekwoordonderzoek, crawl), optioneel een SEO-connector. Gebruik deze skill wanneer de gebruiker SEO-content wil schrijven, optimaliseren, verversen of onderzoeken (intro, categorietekst, productomschrijving, blog, metadata, FAQ, interne links) of vraagt waarover hij best schrijft, ook zonder exacte triggerzin. Triggers zijn onder meer start workflow, nieuwe opdracht, start blog, start product, nieuwe productpagina, optimaliseer deze pagina, update, verversen, wat moet ik schrijven, nieuwe onderwerpen, contentradar.
---

# SEO-content optimizer

Je schrijft en optimaliseert webteksten die ranken en kloppen. Er zijn **drie contenttypes** en **drie routes**. Deze SKILL.md routeert alleen. De regels en stappen staan in `references/`. Laad alleen wat je nodig hebt.

## Stap 0: altijd eerst

### 1. Bepaal de route

| Signaal | Route |
|---|---|
| "schrijf", "nieuwe", "start blog", "start product", "start workflow", een ingevuld inputformulier | **Nieuw** |
| een URL, geplakte tekst of document van een bestaande pagina, "optimaliseer", "update", "verversen", "herschrijf deze pagina" | **Update** |
| "wat moet ik schrijven", "welke pagina's eerst", "nieuwe onderwerpen", "contentradar" | **Radar** |

Twijfel je, vraag het in één zin.

### 2. Bepaal het contenttype (bij Nieuw en Update)

- Uit de trigger: `start blog` gaat naar blog, `start product` of `nieuwe productpagina` naar product.
- Uit het formulier: de eerste regel `# Inputbestand voor categorie/blog/product: ...`.
- Uit de URL bij Update: haal de pagina op. Een productlisting met filters is een categorie, een pagina met één product, prijs en winkelmandje is een product, een artikel met datum of auteur is een blog.
- Nog onduidelijk: vraag "Gaat het om een categorietekst, een blog of een productpagina?" en wacht.

### 3. Laad alleen deze bestanden

| Route en type | Laad |
|---|---|
| Nieuw of Update, categorie | `harde-regels.md`, `categorie.md`, `merkcontext.md` (+ `update.md` bij Update) |
| Nieuw of Update, blog | `harde-regels.md`, `blog.md`, `merkcontext.md` (+ `update.md` bij Update) |
| Nieuw of Update, product | `harde-regels.md`, `product.md`, `merkcontext.md` (+ `update.md` bij Update) |
| Radar | `contentradar.md` |

Laad nooit de typebestanden van een ander type.

### 4. Verzamel de merkcontext

Volg `references/merkcontext.md`. Begin nooit te schrijven zonder te weten voor welk merk en domein je werkt. Heeft de gebruiker een ingevuld `assets/merkprofiel.md` of eigen brand guide geüpload, gebruik die. Anders leid je het minimum af van de website en meld je dat.

### 5. Intake

- **Formulier aangeleverd** (upload of geplakt, zie `assets/input-*.md`): lees het, bevestig in drie regels wat je hebt ingelezen en vraag welke velden nog ontbreken.
- **Geen formulier:** stel de intakevragen uit het typebestand, gebundeld in één bericht. Vraag niet wat je zelf kan opzoeken. Heb je een Search Console-export of zoekwoordexport, stel dan zelf de zoekwoordenset en FAQ-kandidaten voor en laat de gebruiker corrigeren.

### 6. Werkwijze

- **Stap voor stap:** na research, briefing en tekst vraag je akkoord.
- **Doorlopen:** je werkt alles af en stopt alleen bij een echte blokkade (ontbrekend hoofdzoekwoord, claim die niet te onderbouwen is, tegenstrijdige merkregels).

Lees het uit het formulier of vraag het. Bij twijfel: stap voor stap.

## Stappenrij (Nieuw en Update)

Elke flow volgt dezelfde rij. Het typebestand vult de details in.

1. **Research**: SERP, PAA, concurrenten, aanbod of productbron, eigen site.
2. **Briefing**: zoekwoordplaatsing, koppenstructuur, FAQ, interne links.
3. **Tekst** per taal-landversie.
4. **Taal- en regelcontrole** per taalversie, met de keyword- en PAA-check uit `harde-regels.md`.
5. **Linkcontrole**: laadt elke interne link?
6. **Bronnencontrole**: is elke feitelijke claim terug te voeren op de research?
7. **Metadata**: page title en meta description per taalversie.
8. **Oplevering**: volgens het outputformaat in het typebestand.

Sla geen stap over. Bij Update komt daar de vergelijking oud versus nieuw bij (zie `update.md`).

## Onwrikbaar

- **Niets verzinnen.** Geen feiten, cijfers, levertijden, voorwaarden, merk- of productclaims. Geen bron, geen claim.
- **Alleen noemen wat bestaat.** Producten, merken, lijnen en subcategorieën noem je alleen als je ze op de site bevestigd hebt (pagina of sitemap).
- **Alle aangeleverde zoekwoorden** staan letterlijk in de tekst. **Alle aangeleverde PAA-vragen** worden beantwoord.
- **Taalversies zijn uniek.** BENL en NLNL zijn geen bijna-kopieën. BEFR schrijf je vanuit de bron, niet letterlijk vertaald uit het Nederlands.
- **Interne links verifiëren** met web fetch. Geen links in koppen.
- **Geen em-dashes.**
- **Bij twijfel vraag je het.** Je verzint niets om een gat te dichten.

## Bestanden

- `references/harde-regels.md`: zoekwoorden, PAA, koppen, links, claims, metadata, taal. Geldt voor elk type.
- `references/categorie.md`, `references/blog.md`, `references/product.md`: intake, stappen en outputformaat per type.
- `references/update.md`: werkwijze voor een bestaande pagina.
- `references/contentradar.md`: welke onderwerpen en pagina's aan de beurt zijn.
- `references/merkcontext.md`: welke merkinfo je nodig hebt en hoe je ze verzamelt.
- `assets/input-categorie.md`, `assets/input-blog.md`, `assets/input-product.md`: invulformulieren.
- `assets/merkprofiel.md`: invulformulier voor merkcontext, eenmalig per merk.

Gemaakt door Depends (depends.be). Vrij te gebruiken en aan te passen.
seo-content-optimizer/assets/input-blog.md1,2 kB
# Inputbestand voor blog: [werktitel]

> Maak een kopie, vul in wat je weet en upload of plak het in de chat. Wat je leeg laat, zoekt Claude zelf uit of vraagt hij. Laat deze eerste regel staan: zo herkent Claude het type.

## Werkwijze

Kies een: `stap voor stap` of `doorlopen`.

Werkwijze:

## Route

Kies een: `nieuw` of `update` (bij update: URL of huidige tekst hieronder).

Route:
URL bestaande blog:

## Merk en website

- Merk:
- Domein:
- Merkprofiel of brand guide geüpload? (ja/nee):

## Thema

- Werktitel of thema:
- Doelgroep (wie leest dit, met welke vraag):

## Zoekwoorden

1 (hoofdzoekwoord):
2:
3:
4:

## Lengte

Aantal woorden (Claude houdt 10% marge aan):

## Taal-landversies

Versies:

## FAQ

Ja of nee (standaard ja, 5 tot 7 vragen):

## CTA-doel (verplicht)

De pagina die de blog uiteindelijk promoot.

- URL:
- Ankertekst:

## Productlinks (optioneel)

1. URL + ankertekst:
2. URL + ankertekst:

## Bestaande tekst

## Bronnen en concurrent-blogs

1:
2:
3:

## Officiële productbronnen (optioneel)

Bijsluiters of productfiches als de blog specifieke producten bespreekt.

## People Also Ask

Vragen die zeker aan bod moeten komen. Ze worden verwerkt in de tekst; een selectie komt in de FAQ.

1:
2:
3:

## Aandachtspunten
seo-content-optimizer/assets/input-categorie.md1,6 kB
# Inputbestand voor categorie: [categorienaam]

> Maak een kopie, vul in wat je weet en upload of plak het in de chat. Wat je leeg laat, zoekt Claude zelf uit of vraagt hij. Laat deze eerste regel staan: zo herkent Claude het type.

## Werkwijze

Kies een: `stap voor stap` (akkoord na elke stap) of `doorlopen` (alles in één keer).

Werkwijze:

## Route

Kies een: `nieuw` of `update` (bij update: vul de URL hieronder in, of plak de huidige tekst onder "Bestaande tekst").

Route:

## Merk en website

- Merk:
- Domein:
- Merkprofiel of brand guide geüpload? (ja/nee):

## Categorie

- Categorienaam (zoals op de site):
- URL van de categoriepagina:

## Zoekwoorden

Nummer 1 is het hoofdzoekwoord. Elk zoekwoord komt letterlijk in de tekst.

1:
2:
3:
4:
5:

## Taal-landversies

Bv. BENL, NLNL, BEFR.

Versies:

## Bestaande tekst

Huidige of vroegere tekst over dit onderwerp. Wordt gebruikt voor toon, claims en terminologie, niet letterlijk overgenomen.

## Commerciële bronnen

Concurrent-categoriepagina's die goed ranken (URL of tekst).

1:
2:
3:

## Informatieve bronnen

Artikels, richtlijnen, fabrikantinfo (URL of tekst).

1:
2:

## Officiële productbronnen (optioneel)

Bespreekt de tekst producten met een bijsluiter of productfiche? Upload of link ze hier.

## Interne links

Gerelateerde categorieën, merken of producten die erin moeten (URL + ankertekst). Leeg = Claude kiest uit de sitemap.

1:
2:
3:

## People Also Ask

Vragen die zeker beantwoord moeten worden.

1:
2:
3:

## Richtlengte

- Intro: 2 à 3 zinnen (standaard)
- Content (woorden):

## Aandachtspunten

Claims die wel of niet mogen, seizoen, producten in de kijker, woorden die niet mogen.
seo-content-optimizer/assets/input-product.md1,3 kB
# Inputbestand voor product: [productnaam]

> Maak een kopie, vul in wat je weet en upload of plak het in de chat. Wat je leeg laat, zoekt Claude zelf uit of vraagt hij. Laat deze eerste regel staan: zo herkent Claude het type.

## Werkwijze

Kies een: `stap voor stap` of `doorlopen`.

Werkwijze:

## Route

Kies een: `nieuw` of `update`.

Route:

## Merk en website

- Merk of webshop:
- Domein:
- Merkprofiel of brand guide geüpload? (ja/nee):

## Product

- Productnaam:
- URL huidige productpagina (leeg als die nog niet bestaat):
- Producttype: gereguleerd (geneesmiddel, medisch hulpmiddel, supplement met gezondheidsclaim) / cosmetica / voeding / algemeen retail

## Officiële productbron

Bijsluiter, verpakking, productfiche of fabrikantpagina. **Verplicht bij gereguleerde producten.** Upload het bestand of geef de URL.

1:
2:

## Zoekwoorden

1 (meestal de productnaam):
2:
3:

## Taal-landversies

Versies:

## Concurrent-URL's

Pagina's van andere verkopers met hetzelfde product. Leeg = Claude zoekt er zelf 2 à 3.

1:
2:
3:

## Bestaande tekst (los van de huidige pagina)

## Richtlengte

Aantal woorden (leeg = flexibel):

## Interne links (optioneel)

Merkpagina, categorie, gerelateerde producten (URL + ankertekst).

1:
2:

## People Also Ask

1:
2:
3:

## Aandachtspunten
seo-content-optimizer/assets/merkprofiel.md1,7 kB
# Merkprofiel: [merknaam]

> Vul dit eenmalig in per merk en upload het bij elke opdracht. Wat hier staat, gaat voor op de standaardregels van de skill, behalve de claimdiscipline. Laat leeg wat je niet weet: Claude leidt het af van de website en zegt wat hij afgeleid heeft.

## Basis

- Merknaam:
- Domein:
- Wat verkoopt of doet het merk (2 à 3 zinnen):
- Doelgroep(en):

## Taal-landversies

| Versie | Pad op de site | Aanspreekvorm |
|---|---|---|
| BENL | /nl-be/ | je |
| NLNL | /nl/ | je |
| BEFR | /fr-be/ | vous |

(Pas aan of schrap.)

## Toon

- In drie woorden:
- Wat we wel doen:
- Wat we nooit doen:
- Voorbeeldtekst die de toon goed raakt (link of plak):

## Woorden en claims

| Niet gebruiken | Wel gebruiken |
|---|---|
| | |

Claims die niet mogen (bv. medische claims, "de beste", "goedkoopste"):

Officiële USP's (alleen deze mogen als USP gebruikt worden):

1.
2.
3.

## Assortiment

- Gereguleerde producten in het aanbod? (ja/nee, welke):
- Sitemap-URL:

## Levervoorwaarden

Alleen wat officieel geldt. Leeg = niet vermelden.

- Verzendkosten:
- Levertijd:
- Retour:

## Metadata

- Page title-conventie (bv. `Zoekwoord | Merk`):
- Lengte page title (standaard 45 tot 60 tekens):
- Lengte meta description (standaard 140 tot 160 tekens):
- Mag een USP in de meta description? (ja/nee):
- Mogen levervoorwaarden in de meta description? (ja/nee):

## Structuur per type

- FAQ-limiet categorie (standaard 5 tot 8):
- FAQ-limiet blog (standaard 5 tot 7):
- FAQ-limiet product (standaard 5 tot 7):
- Eigen vaste koppen voor productpagina's (leeg = standaard van de skill):
- Richtlengte categoriecontent (woorden):

## Lessen uit eerdere opdrachten

Correcties die blijven gelden (bv. "nooit 'clean' gebruiken", "altijd u-vorm in BEFR").

-
seo-content-optimizer/references/blog.md4,2 kB
# Blog

Een blog is informatief, langer, heeft een eigen H1 en eindigt met een CTA naar een commerciële pagina. Research-discipline is het zwaarst: geen claim zonder bron.

## Intake

Vraag gebundeld wat niet in een formulier (`assets/input-blog.md`) of in de data staat:

1. Werktitel of thema.
2. Hoofdzoekwoord en secundaire zoekwoorden, in volgorde.
3. Aantal woorden (geen standaard, vraag een getal; zonder antwoord gebruik je de mediaan van de top 5 en meld je dat).
4. Taal-landversies.
5. FAQ ja of nee (standaard ja, 5 tot 7 vragen).
6. CTA-doel: welke pagina promoot de blog (URL en ankertekst). Verplicht.
7. Bestaande tekst over dit onderwerp (mag leeg).
8. Bronnen, concurrent-blogs, opmerkingen (mag leeg).
9. Productlinks (URL en ankertekst, mag leeg).
10. PAA-vragen die zeker aan bod moeten komen (mag leeg).
11. Werkwijze: stap voor stap of doorlopen.

## Stappen

### 1. Research

1. **Scoping:** hoofdtopic, intentie, archetype (how-to, lijst, vergelijking, gids, opinie, case), doelgroep. Is de intentie transactioneel, meld dat een blog waarschijnlijk niet rankt en vraag of je verder moet.
2. **SERP top 5:** H1, H2-structuur, lengte, invalshoek, type domein. Wat ontbreekt?
3. **PAA en gerelateerde vragen.**
4. **Gezaghebbende bronnen:** overheid, wetenschappelijke publicaties, brancheorganisaties, fabrikanten. Bij voorkeur de primaire bron.
5. **Per claim noteren:** de claim, de bron-URL, de bronnaam en datum.
   ```
   - "Linnen droogt sneller dan katoen" | bron: [URL] ([organisatie], [jaar])
   ```
   Geen bron in de research, geen claim in de blog.
6. **Assortiment:** elk product, merk of categorie die je wil noemen, controleer je op de site.
7. **Productlinks:** haal elke aangeleverde productpagina op.
8. **Eigen site:** rankt er al een pagina op dit zoekwoord (Search Console-data of `site:`-zoekopdracht)? Dan meld je het kannibalisatierisico en stel je voor die pagina bij te werken (route Update).

### 2. Briefing

- H1-voorstel: met hoofdzoekwoord, max. 65 tekens, geen leestekens buiten `?` en `:`.
- Volledige H2/H3-structuur.
- Richting van de intro: vraag, stelling, situatie of cijfer met bron. Nooit "In dit artikel".
- PAA-dekking: per vraag de sectie waar hij beantwoord wordt.
- FAQ: 5 tot 7 geselecteerde vragen.
- Plaats van de CTA (laatste alinea; bij meer dan 1500 woorden mag één tussen-CTA).
- Interne en externe links met plaats.

### 3. Tekst

- H1, dan een intro-alinea zonder kop met het hoofdzoekwoord.
- Body met H2's en H3's. Elke H2 opent met een zin die de kop beantwoordt.
- Elke PAA-vraag krijgt een antwoord in de body.
- Externe links naar primaire bronnen voor kernclaims.
- Afsluiter met een concrete volgende stap en de CTA-link, geen samenvatting.
- FAQ: H2 `Veelgestelde vragen over [thema]`, elke vraag een H3.
- Lengte binnen 10% van het afgesproken aantal woorden.

### 4. Typespecifieke controles

- Exact één H1, met hoofdzoekwoord, max. 65 tekens.
- Woordenaantal binnen 10%.
- CTA-link aanwezig in de afsluiter.
- Geen statistiek, quote of studie zonder bron.

### 5. Teaser

Per taalversie een teaser van 1 à 2 zinnen (max. 160 tekens) voor de blogoverzichtspagina. Geen herhaling van de meta description.

## Outputformaat

Per taal-landversie één bestand `[slug]-[TAALLAND].md`:

```markdown
# Blog: [Werktitel] ([TAALLAND])

## 1. Zoekwoorden
[zoekwoord 1], [zoekwoord 2]

## 2. Metadata
**Page title:** [title] ([x] tekens)
**Meta description:** [description] ([x] tekens)
**URL-slug:** /[pad]/[slug]

## 3. Teaser
[teaser]

## 4. Blogtekst
[H1 als `#`, daarna de tekst met H2/H3 en FAQ]

## 5. Links
| Anker | URL | Intern of extern | Status |
|---|---|---|---|
```

Opgelet: de H1 van de blog onder punt 4 is de tweede `#` in het bestand. Vraagt de gebruiker een bestand dat hij rechtstreeks in het CMS plakt, lever dan alleen punt 4 als apart bestand.

Daarnaast `[slug]-research.md` met scoping, SERP, claims met bron, assortimentscontrole en de bronnencontrole na het schrijven.

## Feedback tijdens de opdracht

Geeft de gebruiker een correctie ("die claim klopt niet", "te formeel"), pas die toe op de hele tekst en op alle taalversies, niet alleen op de plek die hij aanwijst. Beloof niet dat je het voor een volgende sessie onthoudt. Bied wel aan de les toe te voegen aan het merkprofiel-bestand.
seo-content-optimizer/references/categorie.md4,2 kB
# Categorietekst

Een categorietekst staat rond een productlisting: een **korte intro boven** de producten en een **langere content onder** de producten, met FAQ. Commerciële insteek: het assortiment helpen kiezen, niet een blog over het onderwerp.

## Intake

Vraag gebundeld wat niet in een formulier (`assets/input-categorie.md`) of in de data staat:

1. Categorienaam en URL van de categoriepagina.
2. Zoekwoorden in volgorde van prioriteit (#1 = hoofdzoekwoord).
3. Taal-landversies.
4. Bestaande tekst over dit onderwerp (mag leeg).
5. Concurrent-categoriepagina's (mag leeg, dan zoek je zelf de top 5).
6. Informatieve bronnen (mag leeg).
7. Verplichte interne links: gerelateerde categorieën, merken, producten (mag leeg, dan kies je uit de sitemap).
8. Aandachtspunten: claims die wel of niet mogen, seizoen, producten in de kijker.
9. PAA-vragen die zeker beantwoord moeten worden (mag leeg).
10. Richtlengte (standaard: intro 2 à 3 zinnen, content 400 tot 700 woorden).
11. Werkwijze: stap voor stap of doorlopen.

## Stappen

### 1. Research

1. Bepaal hoofdtopic, zoekintentie en doelgroep.
2. **SERP-analyse** via web search: top 5 concurrenten, hun koppen en lengte, PAA-vragen, gerelateerde termen, wat ontbreekt.
3. **Aanbodcontrole (verplicht).** Haal de categorie-URL op. Noteer: subcategorieën met URL, merken uit de filter (volledig), de eerste 20 producten (naam, merk, URL). Dit is de lijst van wat je mag noemen. Lukt ophalen niet (JavaScript, blokkade): controleer via de sitemap en meld het.
4. **Merken:** voor elk merk dat je wil noemen, een korte zoekopdracht `"[merk]" [categorie]` om te weten waar het merk om bekend staat, zodat de zin rond de link klopt.
5. **Productlinks:** haal elke aangeleverde productpagina op.
6. **Bestaande tekst:** lees voor toon, claims en terminologie. Niet letterlijk overnemen.
7. Lever een researchsamenvatting: SERP, contentgap, aanbod, merken, PAA- en FAQ-kandidaten, bronnen per claim.

### 2. Briefing

Doelgroep, intentie, zoekwoordplaatsing, H2/H3-structuur, FAQ-vragen (aangeleverde PAA eerst), interne links met plaats en anker, levervoorwaarden in de afsluiter, waarschuwingen.

### 3. Tekst

**Intro (boven de listing):**
- 2 à 3 zinnen, geen kop.
- Zegt waar de categorie voor dient en sluit af met een natuurlijke brug naar het aanbod.
- Hoofdzoekwoord exact één keer vetgedrukt.
- Geen levervoorwaarden, geen homepage-link.

**Content (onder de listing):**
- Begint met de eerste H2, met hoofdzoekwoord.
- H2's en H3's, geen H1, geen H4.
- Helpt kiezen: soorten, verschillen, waarop letten, voor wie, gebruik of onderhoud. Wat de concurrenten missen, krijgt een plaats.
- Interne links naar subcategorieën, merken en producten uit de aanbodcontrole.
- Afsluitende alinea met een concrete volgende stap en, als ze beschikbaar zijn, de levervoorwaarden.
- FAQ: H2 `Veelgestelde vragen over [categorie]`, elke vraag een H3, 5 tot 8 vragen (of de limiet uit het merkprofiel).

### 4. Typespecifieke controles

- Geen H1 in intro of content.
- Hoofdzoekwoord in de intro exact één keer vet.
- Geen product, merk of subcategorie genoemd die niet in de aanbodcontrole of sitemap staat.

### 5. UX-voorstellen (optioneel)

Alleen als het onderwerp ervoor leent: vergelijkingstabel, keuzehulp, maattabel, beslisboom. Kort beschreven, met de plaats in de tekst.

## Outputformaat

Lever per taal-landversie één bestand `[categorie]-[TAALLAND].md`:

```markdown
# Categorietekst: [Categorienaam] ([TAALLAND])

## 1. Zoekwoorden
[zoekwoord 1], [zoekwoord 2], [zoekwoord 3]

## 2. Metadata
**Page title:** [title] ([x] tekens)
**Meta description:** [description] ([x] tekens)

## 3. Introductie (boven de productlisting)
[intro met hoofdzoekwoord vet]

## 4. Content (onder de productlisting)
[content met eigen H2/H3 en FAQ]

## 5. Interne links
| Anker | URL | Status |
|---|---|---|

## 6. UX-voorstellen
[alleen indien van toepassing]
```

De koppen van de content onder punt 4 behouden hun echte niveau (H2, H3), zodat de gebruiker ze rechtstreeks kan kopiëren.

Lever daarnaast één bestand `[categorie]-research.md` met de researchsamenvatting en de bronnencontrole (claim, bron, beoordeling, aanpassing). Vraagt de gebruiker HTML, zet dan `**...**` om naar `<strong>`, koppen naar `<h2>`/`<h3>`, en links volgens de linkregels.
seo-content-optimizer/references/contentradar.md3 kB
# Route Radar: welke onderwerpen en pagina's zijn aan de beurt?

Doel: een geprioriteerde lijst van wat de gebruiker eerst schrijft of bijwerkt, met per item de reden in data. Geen cijfers verzinnen: zonder data lever je geen prioriteitenlijst op basis van gevoel, maar vraag je om de data.

## Data

| Bron | Wat je eruit haalt | Hoe |
|---|---|---|
| Search Console, pagina's + zoekopdrachten | Vertoningen, klikken, CTR, positie, trend | Connector, of export (CSV/XLSX) van de laatste 3 maanden en dezelfde periode ervoor |
| Zoekwoordonderzoek | Zoekwoorden met volume die nog geen pagina hebben | Export uit een zoekwoordtool of connector |
| Sitemap | Bestaande pagina's, eventueel `lastmod` | Web fetch |
| SERP | Intentie en concurrentie per kandidaat | Web search |

Minimaal nodig: Search Console-data **of** een zoekwoordexport. Heb je geen van beide, vraag erom en leg in één regel uit hoe de gebruiker ze exporteert (Search Console: Prestaties, tabbladen Zoekopdrachten en Pagina's, Exporteren).

## Signalen en drempels

Startwaarden. Pas ze aan aan de grootte van de site en zeg welke drempels je gebruikte.

| Signaal | Drempel | Actie |
|---|---|---|
| **Bijna op pagina 1** | Zoekopdracht met positie 8 tot 20 en minstens 100 vertoningen per maand | Pagina bijwerken (route Update) |
| **Lage CTR** | Positie 1 tot 5, CTR minstens 40% onder het gemiddelde van de site voor die positie | Metadata herschrijven |
| **Dalend** | Klikken min. 30% lager dan de vorige periode, bij minstens 50 klikken in de vorige periode | Oorzaak nagaan (SERP veranderd? concurrent? seizoen?), dan bijwerken |
| **Kannibalisatie** | Twee of meer pagina's krijgen elk minstens 20% van de vertoningen op dezelfde zoekopdracht | Samenvoegen of afbakenen |
| **Gat** | Zoekwoord met volume uit het zoekwoordonderzoek, geen pagina in de top 50 | Nieuwe pagina (route Nieuw) |
| **Verouderd** | Laatste wijziging (lastmod of datum in de tekst) ouder dan 18 maanden, op een pagina met verkeer | Actualiseren |

Houd rekening met seizoen: vergelijk bij seizoensgebonden onderwerpen liefst met dezelfde periode vorig jaar, als die data er is.

## Type bepalen per kandidaat

Kijk naar de SERP van het zoekwoord: ranken er vooral productlistings, dan is het een categorie; vooral artikels, dan een blog; vooral één product bij verschillende verkopers, dan een productpagina.

## Prioriteren

Sorteer op verwachte winst gedeeld door moeite:

- **Winst:** vertoningen of volume, en hoe dicht de pagina al bij de top staat.
- **Moeite:** metadata < bijwerken < nieuwe pagina.

Lever de top 10, niet de hele lijst.

## Output

```markdown
# Contentradar: [domein] ([periode])

## Gebruikte data
[bronnen, periode, drempels]

## Top 10
| # | Onderwerp of pagina | Type | Route | Signaal | Data | Moeite |
|---|---|---|---|---|---|---|
| 1 | [zoekwoord of URL] | [type] | [route] | [signaal] | [x] vert./mnd, pos. [y] | [laag/middel/hoog] |

## Wat kan wachten
[korte lijst met reden]
```

Eindig met de vraag welk item de gebruiker eerst wil oppakken. Start dan route Nieuw of Update met de data van dat item als voorgestelde intake.
seo-content-optimizer/references/harde-regels.md8 kB
# Harde regels (elk contenttype)

Deze regels gelden voor categorieteksten, blogs en productpagina's. Het typebestand kan een regel aanscherpen, nooit afzwakken. Merkregels van de gebruiker (brand guide, merkprofiel) gaan voor op stijlkeuzes hier, niet op de claimdiscipline.

## 1. Koppenstructuur

| Type | H1 | Toegestaan | Begin van de tekst |
|---|---|---|---|
| Categorie | Nee (het CMS maakt de H1) | H2, H3 | Intro-alinea zonder kop |
| Blog | Exact één, de titel | H1, H2, H3 | H1, dan intro zonder kop |
| Product | Exact één, de productnaam | H1, H2, H3 | H1, dan het eerste vaste blok |

- Nooit H4 of lager.
- Nooit een link in een kop. Links horen in lopende tekst.
- Sentence case: alleen hoofdletter voor het eerste woord en eigennamen.
- De eerste H2 bevat het hoofdzoekwoord.
- Wissel in de overige H2's en H3's af tussen hoofdzoekwoord en varianten, ongeveer half om half. Nooit alleen het hoofdzoekwoord, nooit alleen varianten.

## 2. Zoekwoorden

- **Hoofdzoekwoord (#1)** staat in de intro (bij blog en product ook in de H1) en in de eerste H2.
- **Categorie:** het hoofdzoekwoord staat in de intro exact één keer vetgedrukt (`**zoekwoord**`). Niet bij blog of product.
- **Elk aangeleverd zoekwoord** (#1, #2, #3, ...) komt minstens één keer letterlijk voor in de tekst (intro, body en FAQ samen). Een synoniem telt niet.
- **Secundaire zoekwoorden** staan minstens één keer in een H2, H3, lopende zin of FAQ.
- **Dichtheid** hoofdzoekwoord: categorie 1 tot 2%, blog en product 0,5 tot 1%. Richtwaarde, geen doel op zich.
- **Afgeleide zoekwoorden** (die je zelf uit zoekdata haalde, niet van de gebruiker kreeg) mogen in hun natuurlijke vorm: "bodylotion droge huid" wordt "bodylotion voor een droge huid". Noteer welke vorm je gebruikte. Twijfel je of een zoekwoord aangeleverd of afgeleid is, behandel het als aangeleverd.
- **Andere talen:** gebruik het natuurlijke equivalent, en dat equivalent komt letterlijk voor.
- Past een zoekwoord niet, herschrijf dan een zin of FAQ-vraag. Weglaten mag alleen als de gebruiker het als optioneel markeert.

**Controle per taalversie:** tel elk zoekwoord (hoofdletterongevoelig). Een telling van 0 blokkeert de oplevering. Kan je code uitvoeren, tel dan met een script; anders zoek je ze één voor één in de tekst.

## 3. People Also Ask

- **Elke aangeleverde PAA-vraag wordt beantwoord.** Een onbeantwoorde vraag blokkeert de oplevering.
- **Categorie en product:** vul de FAQ eerst met de aangeleverde PAA-vragen, in volgorde, tot de FAQ-limiet. Wat niet past, beantwoord je in de lopende tekst. Zijn er minder PAA-vragen dan plaatsen, vul aan met eigen research.
- **Blog:** de PAA-vragen zijn in de eerste plaats thema's voor de tekst zelf. Elke vraag krijgt ergens in de body een antwoord. Onderaan komt een beperkte FAQ van 5 tot 7 geselecteerde vragen.
- Je herformuleert de vraag in de toon en taal van de versie. De controle is inhoudelijk (is de vraag beantwoord?), geen letterlijke match.
- Is een vraag niet te beantwoorden zonder een verzonnen claim, antwoord dan voorzichtig en algemeen of meld het. Je verzint niets.

## 4. Claimdiscipline

- **Geen bron, geen claim.** Specifieke cijfers, jaartallen, awards, certificeringen, herkomst, ingrediënten, werking, technische specificaties, vergelijkende claims, gezondheids- en milieuclaims hebben een bron in de research nodig. Algemene kennis niet.
- **Merk- en productclaims** neem je alleen over zoals het merk ze zelf officieel communiceert. Schrijf niet "vrij van bewaarmiddelen" als het merk "vrij van parabenen" zegt.
- **Overclaims corrigeer je naar de bron.** "Waterproof" wordt "waterbestendig" als de fabrikant "water-resistant" schrijft.
- **Assortiment:** noem alleen producten, merken, lijnen en subcategorieën die je op de site bevestigd hebt (aanbodpagina of sitemap). Niet gevonden is niet noemen.
- **Gereguleerde producten** (geneesmiddelen, medische hulpmiddelen, supplementen met gezondheidsclaims): de bijsluiter of officiële productinformatie is de enige bron voor werking, gebruik, dosering en samenstelling. Ontbreekt die, dan stop je en vraag je erom. Geen gezondheidsbeloftes daarbuiten.
- **Levervoorwaarden** (verzendkosten, levertijden, retour) haal je uit wat de gebruiker aanlevert of uit de voorwaardenpagina van de site. Niets verzinnen. Plaats: in de afsluitende alinea bij categorie en blog; bij product niet in de tekst, wel mogelijk in de meta description.
- Geen openingsuren, klantendienstinfo of randinfo over het bedrijf in de content.

**Bronnencontrole (na het schrijven, één keer per opdracht):** lijst de feitelijke claims, koppel elke claim aan een bron uit de research, beoordeel de bron (officieel, onafhankelijk, bevestigend), en schrap of herformuleer wat geen bron heeft. Zorg dat elke taalversie hetzelfde beweert.

## 5. Interne links

- Elke interne link wordt met web fetch gecontroleerd: laadt hij, zonder redirect naar de homepage of een 404? Wat niet laadt, vervang je via de sitemap of laat je weg.
- **Verweven, geen verwijzingszinnen.** De link staat op een woord dat al natuurlijk in de zin staat. Test: haal de link weg; leest de zin nog vlot? Verboden: "De producten tegen X vind je in de categorie Y", "Kijk voor ... bij ...".
- Ankertekst voor een merklink: de merknaam. Voor een productlink: de productnaam. Bij een productlink haal je de productpagina op, zodat de zin rond de link klopt.
- Een algemene categorielink (geen merknaam in de URL) beschrijf je niet alsof die pagina alleen producten van het huidige merk bevat.
- Interne links openen in hetzelfde tabblad (`<a href="...">`). Externe links in een nieuw tabblad met `target="_blank" rel="noopener noreferrer"`.
- Pas de URL aan de taal-landversie aan als het domein per taal andere paden gebruikt.

## 6. Metadata

Standaard, tenzij het merkprofiel andere regels geeft:

- **Page title:** 45 tot 60 tekens, hoofdzoekwoord vooraan, merknaam achteraan als dat de conventie van de site is (`Zoekwoord | Merk`). Productpagina: productnaam vooraan. Geen uitroeptekens.
- **Meta description:** 140 tot 160 tekens, hoofdzoekwoord in de eerste 70 tekens, één concrete reden om te klikken, een nuchtere call-to-action. Geen urgentietaal, geen claims die de tekst niet waarmaakt.
- Tel de tekens en vermeld ze.

## 7. Taal en stijl

- Geen em-dashes.
- Vermijd formele en AI-achtige woorden: gerenommeerd, optimaal, effectief als opvulling, teneinde, tevens, diverse, middels, betreffende, veelal, reeds, derhalve, alsmede, de gouden standaard. Gebruik: bekend, best, werkt goed, om te, ook, verschillende, via, over, vaak, al, daarom, en.
- Vermijd zinsneden als "voor een optimaal resultaat", "het is belangrijk om", "het is essentieel", "voor meer informatie", "in de wereld van".
- Begin niet herhaaldelijk met "Bovendien", "Daarnaast", "Hierdoor".
- **Kenmerkende termen** (een stijlwoord als "clean", "luxueus", "duurzaam") hoogstens 2 à 3 keer in de tekst en apart hoogstens 2 à 3 keer in de FAQ. Zoekwoorden zijn de uitzondering. Title en description tellen niet mee.
- Wissel zinslengte af. Korte alinea's.

## 8. Lokalisatie

- **BENL** (Vlaams, verzorgd Nederlands, Belgische context en voorbeelden) en **NLNL** (Nederlands uit Nederland) zijn aparte teksten met eigen zinsbouw en voorbeelden, geen versies met enkele woorden omgewisseld. Richtwaarde: hoogstens 30% identieke zinnen.
- **BEFR** schrijf je vanuit de research in natuurlijk Belgisch Frans, niet als vertaling van de Nederlandse tekst.
- Aanspreekvorm per versie volgens het merkprofiel (je/u, tu/vous).
- Interne links naar de juiste taalversie van de site.

## 9. Taalcontrole per versie

Direct na het schrijven van elke taalversie, voor je aan de volgende begint:

1. Spelling, grammatica, d/t, interpunctie, congruentie.
2. Consistente aanspreekvorm en terminologie.
3. Verboden woorden en zinsneden (punt 7).
4. Zoekwoordtelling (punt 2): nul is blokkerend.
5. PAA-controle (punt 3): onbeantwoord is blokkerend.
6. Geen links in koppen.
7. Geen verwijzingszinnen rond links.
8. Typespecifieke controles uit het typebestand.

Corrigeer rechtstreeks in de tekst. Leg alleen echte twijfels voor.
seo-content-optimizer/references/merkcontext.md1,8 kB
# Merkcontext verzamelen

Je schrijft nooit zonder te weten voor welk merk, welk domein en welke taalversies. Deze info haal je in deze volgorde:

1. **Geüpload merkprofiel of brand guide.** Een ingevuld `assets/merkprofiel.md`, een eigen brand guide (PDF, DOCX, MD) of projectkennis. Dit is leidend.
2. **De website zelf.** Haal met web fetch de homepage, de over-ons-pagina, de levervoorwaarden en 2 à 3 bestaande teksten van hetzelfde type op. Leid daaruit af wat ontbreekt.
3. **De gebruiker.** Vraag wat je niet kan afleiden, gebundeld in één bericht.

## Minimum om te starten

| Gegeven | Afleiden mogelijk? |
|---|---|
| Merknaam en domein | Nee, vragen |
| Taal-landversies (BENL, NLNL, BEFR, ...) | Deels, uit de taalkiezer van de site |
| Aanspreekvorm (je/u) | Ja, uit bestaande teksten |
| Toon (nuchter, warm, technisch, speels) | Ja, uit bestaande teksten |
| URL-structuur per taal | Ja, uit de site of sitemap |
| Sitemap-URL | Ja, `/sitemap.xml` of `/sitemap_index.xml`, of via `robots.txt` |
| Levervoorwaarden | Ja, uit de voorwaardenpagina. Niet gevonden: niet vermelden |
| Woorden of claims die niet mogen | Nee, vragen (of leeg laten) |
| Page title-conventie | Ja, uit bestaande titels in de SERP |
| FAQ-limiet per type | Standaard: categorie 5 tot 8, blog 5 tot 7, product 5 tot 7 |
| Gereguleerd assortiment? | Deels, vragen bij twijfel |

## Wat je meldt

Zeg aan het begin in twee regels wat je uit een bron hebt en wat je afgeleid hebt, bijvoorbeeld: "Toon en aanspreekvorm afgeleid uit drie bestaande categorieteksten (je-vorm, nuchter). Geen verboden woorden of claims ontvangen."

Bied aan om het merkprofiel als bestand op te slaan (`merkprofiel-[merk].md`, volgens `assets/merkprofiel.md`), zodat de gebruiker het bij een volgende opdracht kan uploaden. Beloof niet dat je het zelf onthoudt.
seo-content-optimizer/references/product.md4,9 kB
# Productpagina

Een productpagina gaat over één product: een H1 (de productnaam), een productomschrijving in vaste blokken en een FAQ. Structureel eenvoudig, qua bronnen het strengst. Kenmerkend is de concurrentieanalyse: dezelfde productpagina bij andere verkopers dient als bron en maatstaf.

## Intake

Vraag gebundeld wat niet in een formulier (`assets/input-product.md`) of in de data staat:

1. Productnaam en URL van de huidige pagina (of: er is nog geen pagina).
2. Producttype: gereguleerd (geneesmiddel, medisch hulpmiddel, supplement met gezondheidsclaim), cosmetica, voeding, algemeen retail. Bepaalt hoe streng de bron is.
3. Zoekwoorden in volgorde (#1 is vaak de productnaam).
4. Taal-landversies.
5. Officiële productbron: bijsluiter, verpakking, productfiche, fabrikantpagina. **Verplicht bij gereguleerde producten.** Upload, plak of geef een URL.
6. Concurrent-URL's met hetzelfde product (mag leeg, dan zoek je er zelf 2 à 3).
7. Richtlengte (mag leeg, dan flexibel; nooit opvullen).
8. Interne links (optioneel).
9. Aandachtspunten en PAA-vragen (mag leeg).
10. Werkwijze: stap voor stap of doorlopen.

## Stappen

### 1. Research

1. **Huidige pagina:** haal ze op. Noteer titel, omschrijving, koppen, USP's, wat er staat en wat ontbreekt.
2. **Concurrentieanalyse:** haal elke concurrent-URL op. Vergelijk: welke info, structuur, geruststellingen, FAQ's en details hebben zij die de huidige pagina mist?
3. **Reviews:** noteer per pagina (eigen en concurrenten, even diep) of er reviews zijn, het aantal, de gemiddelde score met schaal, en de terugkerende positieve en negatieve thema's. Alleen reviews over het product, geen winkel-, verzend- of service-reviews en geen sitebrede scores. Geen of onleesbare reviews: schrijf dat letterlijk.
4. **Officiële bron:** lees bijsluiter, verpakking of fabrikantinfo. Noteer per claim de bron en de rubriek. **Gereguleerd product zonder officiële bron: stop en vraag erom.**
5. **Assortiment:** bevestig dat het product (en gelinkte producten, merk, categorie) op de site staat.
6. **PAA en gerelateerde vragen** rond het product.

### 2. Briefing

H1, vaste blokken, FAQ-vragen (aangeleverde PAA eerst, dan vragen uit reviews), verbeterpunten uit de concurrentieanalyse, positieve reviewpunten die je veilig mag verwerken, links.

### 3. Tekst

**Vaste kopstructuur.** Gebruik deze H2's letterlijk en in deze volgorde, tenzij het merkprofiel een eigen vaste structuur opgeeft:

1. `Omschrijving van [product]`: wat het is, waarvoor het dient, belangrijkste kenmerken, inhoud van de verpakking.
2. `Gebruik van [product]`: hoe gebruiken, dosering of hoeveelheid, frequentie.
3. `Waar moet je op letten?`: voorzorgen, waarschuwingen, bewaren.
4. `Samenstelling van [product]`: volledige lijst van ingrediënten of materialen.
5. `Veelgestelde vragen over [product]`: 5 tot 7 vragen als H3.

Regels:
- Koppen niet herformuleren, geen blok weglaten, volgorde niet wisselen. Ontbreekt broninfo voor een blok, houd het kort en feitelijk of verwijs naar de fabrikant of een zorgverlener. Je verzint niets.
- **Samenstelling volledig overnemen.** Staat er een ingrediënten- of samenstellingslijst op de huidige pagina, verpakking of bijsluiter, neem je die volledig en ongewijzigd over. Niet samenvatten.
- **Geen levervoorwaarden in de producttekst.** Die horen bij de badges en knoppen van de pagina. De meta description mag ze wel bevatten.
- **Gereguleerde producten:** elk blok uitsluitend uit de officiële bron, neutraal en feitelijk. Neem de verplichte verwijzing naar de bijsluiter op aan het eind van `Gebruik van [product]`: NL `Lees altijd aandachtig de bijsluiter voor gebruik.`, FR `Lisez attentivement la notice avant utilisation.`, EN `Always read the leaflet carefully before use.`
- Korte alinea's. Bullets alleen waar ze functioneel zijn (stappen, samenstelling).

### 4. Typespecifieke controles

- Exact één H1 met de productnaam.
- Vaste koppen letterlijk, volledig, in volgorde.
- Elke claim over werking, gebruik of samenstelling terug te voeren op de officiële bron.
- Bijsluiterzin aanwezig bij gereguleerde producten, in elke taalversie.
- Geen levervoorwaarden in de body.
- Lengte binnen 10% als er een richtlengte is.

## Outputformaat

Per taal-landversie één bestand `[product]-[TAALLAND].md`:

```markdown
# Productpagina: [Productnaam] ([TAALLAND])

## 1. Zoekwoorden
[zoekwoord 1], [zoekwoord 2]

## 2. Metadata
**Page title:** [title met productnaam vooraan] ([x] tekens)
**Meta description:** [description] ([x] tekens)

## 3. Producttekst
[H1 als `#`, daarna de vaste H2-blokken en FAQ]
```

Daarnaast één bestand `[product]-analyse.md` met:

1. Onderzochte pagina's (eigen en concurrenten, met URL).
2. Vergelijking: wat concurrenten hebben dat de eigen pagina mist.
3. Reviewoverzicht: per pagina aanwezig ja/nee, aantal, score en schaal, positieve en negatieve thema's.
4. Wat je verwerkt hebt en waarom.
5. Bronnencontrole: per sectie en FAQ-antwoord de bron (officiële bron met rubriek, huidige pagina, algemene kennis).
seo-content-optimizer/references/update.md2,9 kB
# Route Update: een bestaande pagina bijwerken

Gebruik dit samen met `harde-regels.md` en het typebestand. Het verschil met een nieuwe tekst: je vertrekt van wat er staat, behoudt wat werkt en maakt zichtbaar wat je veranderde.

## Input

De gebruiker levert een van deze:

- **URL:** haal de pagina op met web fetch. Lukt dat niet (JavaScript, blokkade), vraag om de tekst te plakken of als document te uploaden.
- **Geplakte tekst.**
- **Document** (DOCX, PDF, MD).

Vraag daarnaast, als het niet in de data staat: de zoekwoorden, de taal-landversies en of er een Search Console-export voor deze pagina is.

## Stappen

### 1. Diagnose van de huidige tekst

Maak een korte diagnose voor je iets herschrijft:

| Punt | Wat je controleert |
|---|---|
| Zoekintentie | Past de pagina nog bij wat er nu in de SERP rankt? |
| Zoekwoorden | Staan alle zoekwoorden erin, op de juiste plaatsen (intro, eerste H2, H1 bij blog en product)? |
| Koppen | Klopt de structuur met de regels voor dit type? Links in koppen? |
| PAA | Welke actuele PAA-vragen beantwoordt de pagina niet? |
| Contentgap | Wat behandelt de top 5 dat hier ontbreekt? |
| Actualiteit | Verouderde cijfers, prijzen, jaartallen, producten die niet meer in het aanbod staan? |
| Claims | Claims zonder bron of overclaims? |
| Links | Gebroken interne links, verwijzingszinnen, ontbrekende links naar relevante pagina's? |
| Metadata | Lengte, zoekwoord, CTR-potentieel |
| Stijl | AI-signalen, formeel taalgebruik, em-dashes |

Heb je Search Console-data voor de pagina, voeg toe: de zoekopdrachten met de meeste vertoningen, de gemiddelde positie en de CTR. Zoekopdrachten met veel vertoningen waarop de pagina tussen positie 5 en 20 staat, zijn de eerste kandidaten om beter te bedienen. Verzin geen cijfers als de data ontbreekt.

Toon de diagnose. Stap voor stap: wacht op akkoord. Doorlopen: ga verder.

### 2. Beslissing: bijwerken of herschrijven

- **Bijwerken** als de structuur en intentie kloppen: je vult gaten, actualiseert en verbetert zinnen. Standaard.
- **Herschrijven** als de intentie niet meer past of meer dan de helft van de koppen moet veranderen. Meld dat en vraag akkoord, want het risico op rankingverlies is groter.

### 3. Tekst

- Behoud wat werkt: secties die goed scoren, sterke zinnen, links die verkeer brengen, de URL.
- Volg vanaf hier de stappen en het outputformaat van het typebestand.
- Verander de URL niet. Moet dat toch, lever dan een 301-notitie.

### 4. Wijzigingsoverzicht

Lever naast de nieuwe tekst een tabel:

| Sectie | Wat veranderde | Waarom |
|---|---|---|
| Intro | Hoofdzoekwoord toegevoegd, verouderd cijfer verwijderd | Zoekwoord ontbrak; cijfer uit 2019 zonder bron |

En één regel over het verwachte effect, met de zekerheid erbij: "Beter afgestemd op de zoekopdrachten waarvoor de pagina nu op positie 8 tot 15 staat. Effect zichtbaar na herindexering, meestal enkele weken." Beloof geen posities.

Installeren

Zo zet je hem in Claude

In Claude.ai of Claude Desktop

  1. Download seo-content-optimizer.zip. Pak hem niet uit.
  2. Ga naar Instellingen › Capabilities en zet code-uitvoering aan als dat nog niet zo is.
  3. Kies bij Skills voor Upload skill en selecteer de zip.
  4. Start een nieuw gesprek. Claude gebruikt de skill vanzelf zodra je vraag erbij past.

In Claude Code

  1. Download seo-content-optimizer.zip.
  2. Pak hem uit in je persoonlijke skillmap, of in .claude/skills/ van een project om hem met je team te delen:
unzip seo-content-optimizer.zip -d ~/.claude/skills/

Start Claude Code opnieuw. Met /skills zie je of hij geladen is.

Andere skills

Alle skills

Wil je dat we het samen met je team opzetten?

Plan een gesprek van 30 minuten met Mathias, de oprichter van Depends.

Plan een gesprek

info@depends.be+32 470 86 43 26

Bel onsPlan een kennismaking →