DMM #98 | De 📈 ‘SEO Research & Concurrentie analyse’ Automation

Automatiseer je concurrentieanalyse in 5 minuten

Hi Marketing Multispecialisten!

Het is weer vrijdag! En dat betekend…..

Er staat weer een gloednieuwe AI-automation, inclusief uitleg, voor jullie klaar!

Maar eerst... tijd om te stemmen op de automation voor volgende week! 🗳️👇

Wil jij de AI-boot niet missen? Dan heb ik wat voor je!

Elke maand breng ik je team in 90 minuten volledig op de hoogte van het laatste nieuws en de nieuwste AI-ontwikkelingen.

Geen hype, alleen praktische inzichten die je direct kunt benutten — zodat je geen enkele kans mist en altijd een stap voor blijft op de concurrentie.

Wees er snel bij: de plekken zijn beperkt. Meer weten? Plan hier een introductiecall in of reageer direct op deze mail.

Stem op de automation voor volgende week:

Welke automation willen jullie volgende week?

Klik om te stemmen

Login or Subscribe to participate in polls.

Kleine toelichting per idee:

📨 Nieuwsbrieven Weekoverzicht: Ontvang wekelijks een samenvatting van al je nieuwsbrieven, zodat je alleen de essentie leest.

CC Mail Dagoverzicht: Krijg dagelijks een samenvatting van de belangrijkste informatie uit je CC-mails.

🏆 Feedly Nieuws Prioriteren: Laat AI je nieuwsfeed filteren en alleen de belangrijkste updates doorsturen.

Trustpilot Sentiment Analyse: Analyseer automatisch de sentimenten in Trustpilot-reviews van jou of je concurrenten.

📢 Brand Mentions: Monitor online vermeldingen van je merk met de DataForSEO API.

📊 Fair Share Maandrapport: Automatiseer zoekvolume-analyse en houd je fair share-rapportage up-to-date.

💡 Content Ideeën uit Recent Nieuws: Zet trending nieuws om in drie kant-en-klare social media content ideeën.

Heb jij een verzoek? Reageer even op deze mail, dan staat die volgende week tussen de opties die gekozen kunnen worden.

Deze week: 📈 ‘SEO Research & Concurrentie analyse’ automation

Geen zin meer in urenlange SEO-checks? 🕵️‍♂️
Automatiseer je concurrentieanalyse in 5 minuten

Het toffe van automation is dat je bouwblokken kunt combineren. Dat deed ik ook met deze SEO flow.

Deze workflow knoopt mijn eerdere automation aan die van DataforSEO. Je krijgt nu:
Alle on-page SEO-data volledig automatisch verzameld
De top 10 concurrenten voor jouw zoekwoord
Een AI-rapport dat zelfs je baas snapt (en indruk maakt!)

Zo simpel is het:
1️⃣ URL en zoekwoord invoeren
2️⃣ Koffie pakken terwijl de workflow draait
3️⃣ Inzichten bekijken die direct bruikbaar zijn

🎯 Je resultaat: Een compleet beeld van je concurrentiepositie zonder urenlang handwerk.

En dit is pas het begin! Je kunt deze automation nog veel verder uitbouwen:
- Voeg extra metrics toe zoals crawlfouten of woordenaantal
- Verfijn de AI-prompt voor nog specifiekere inzichten
- Maak aangepaste rapporten voor nog beter advies

Blueprint en benodigdheden:

De Bleuprint kan je hier vinden, inclusief instructies hoe te beginnen met Make.com

Tools die we gebruiken:

  • Make.com voor de automation

  • DataforSEO: Dit is een tool waar je betaald op basis van gebruik, met deze link krijg je $1.00 in gratis credits wat genoeg is om aan de slag te gaan en een keer te testen. Hiermee gaan we het zoekvolume en CPCs ophalen.

  • Google sheets template: [10] SEO Research automation - Template Maak een kopie van dit bestand en zet deze op je eigen drive.

Stap-voor-stap handleiding

Hieronder vind je de gedetailleerde uitleg van alle stappen in de ‘SEO Research & Concurrentieanalyse’-automation. Het idee: we halen jouw URL en zoekwoord uit Google Sheets, laten DataForSEO een on-page analyse uitvoeren én genereren een AI-rapport met concrete verbetersuggesties. Vervolgens zie je in één oogopslag op welke zoekwoorden jouw pagina rankt en wie jouw belangrijkste concurrenten zijn (in de top 10 van Google).

Bij het importeren van het scenario in Make.com zouden de meeste velden al automatisch ingevuld moeten zijn. Toch leggen we stap voor stap uit waar elk veld voor dient en hoe je het kunt aanpassen. Zo kun je gemakkelijk controleren of alles naar wens is ingesteld, of het scenario verder uitbreiden met extra metrics.

Zet voordat je begint een kopie van het bijbehorende Google Sheet template klaar in je eigen drive.

Stap 1: Google Sheets - Search Rows

Wat doet deze stap?
Deze module (ID 7) haalt de meest recente invoer op uit het tabblad “URL EN ZOEKWOORD” in je Google Sheet. Zo krijgen we de URL, locatie, taal en het zoekwoord waarmee we in de rest van de flow aan de slag gaan.

In te stellen:

  • Connection: Jouw Google Sheets-verbinding.

  • Search Method: Select from My Drive (of de door jou gewenste methode om het bestand te selecteren).

  • Spreadsheet ID: Kies het Google Sheet [10] SEO Research automation - Template.

  • Sheet Name: URL EN ZOEKWOORD.

  • Table contains headers: Yes.

  • Column range: A1:Z1 (zodat alle relevante kolommen meegenomen worden).

  • Limit: 1 (we pakken slechts één rij, jouw meest actuele invoer).

Toelichting:
Deze stap zorgt dat je slechts één rij uit je tabblad krijgt, namelijk die waar jij je URL, locatie, taal en zoekwoord hebt ingevuld. Heb je meerdere rijen, dan zal de module er maar eentje oppakken (de bovenste die aan de filterinstelling voldoet). Wil je er meer? Zet dan de Limit op bijvoorbeeld 2.

Stap 2: DataForSEO – Onsite Page Audit

Wat doet deze stap?
Hiermee voer je een on-page audit uit op de URL die je in Stap 1 uit de spreadsheet hebt opgehaald. DataForSEO scant direct de pagina en retourneert diverse SEO-onderdelen (titletag, meta description, checks als https, favicon, etc.).

In te stellen:

  • Connection: Jouw DataForSEO-verbinding.

  • URL: Vul de dynamische waarde in: {{7. URL (A)}} (dit is de URL uit de vorige stap).

  • Load resources, Enable Javascript, etc.: Allemaal false (standaard uit in deze blueprint).

  • Store Raw HTML, Check Spell: Ook false, tenzij je die data extra wilt opslaan.

Toelichting:
Standaard is het genoeg om alleen de URL mee te geven. Wil je de audit uitgebreider (bijv. met afbeeldingen, JS, of microdata-validatie), kun je deze velden later op true zetten.

Stap 3: OpenAI (Create Chat Completion)

Wat doet deze stap?
In deze stap (ID 35) laat je een AI-rapport genereren over de on-page SEO-resultaten. De prompt is vrij uitgebreid en focust zich op het samenstellen van concrete SEO-tips, zoals title, meta description, headings en laadsnelheid.

In te stellen:

  • Connection: Jouw OpenAI-verbinding.

  • Select Method: chat (we gebruiken GPT-chat).

  • Model: chatgpt-4o-latest.

  • Max tokens: 2048 (hiermee geef je ChatGPT genoeg ruimte om te reageren).

  • Messages:

    • System-role: (al ingevuld) de “expert in on-site SEO”-instructie.

    • User-role: (al ingevuld) hier worden de on-page data uit de vorige stap meegestuurd.

Toelichting:
Deze prompt is zo geschreven dat je een mooi gestructureerd HTML-rapport terugkrijgt. OpenAI zal per auditonderdeel (title tag, headings, SSL, etc.) verbeterpunten opsommen.

Stap 4: Google Docs – Create a Document

Wat doet deze stap?
Hier (ID 32) zet je de AI-output in een Google Docs-document. Daardoor heb je een mooi rapport van je on-page audit.

In te stellen:

  • Connection: Jouw Google-verbinding.

  • Name: {{7. URL(A)}} On Page Audit Analysis. (Zo gebruik je de URL-naam in de bestandsnaam.)

  • Content: {{35.result}} (dit is de volledige HTML/tekst van de AI-module).

  • Destination: My Drive (of een andere drive als je wilt).

  • Folder ID: / (Standaard in de root. Pas aan als je hem in een map wilt).

Toelichting:
Na deze stap ontstaat er in je Google Drive automatisch een nieuw Document met de SEO-analyse in tekst/HTML-opmaak.

Stap 5: Google Sheets – Add Row

Wat doet deze stap?
We voegen nu belangrijke on-page resultaten toe aan het tabblad “OnPage” in je Google Sheet. Zo krijg je in één oogopslag de score, laadtijd, of er H1’s ontbreken, etc.

In te stellen:

  • Connection: Jouw Google Sheets-verbinding.

  • Search Method: Search by path

  • Spreadsheet ID: [10] SEO Research automation - Template

  • Sheet Name: OnPage

  • Table contains headers: Yes

  • Values (let vooral op de mapping):

    • A: {{7.URL(A)}} (URL)

    • B: {{9.tasks[].result[].items[].onpage_score}} (OnPage Score)

    • C: {{9.tasks[].result[].items[].meta.title}} (Title)

    • D: {{9.tasks[].result[].items[].meta.description}} (Meta Description)

    • E: {{9.tasks[].result[].items[].checks.no_h1_tag}} (H1?)

    • F: {{9.tasks[].result[].items[].checks.is_https}} (SSL?)

    • G: {{9.time}} (Laadtijd)

    • H: {{9.tasks[].result[].items[].meta.internal_links_count}} (Interne links)

    • I: {{9.tasks[].result[].items[].meta.external_links_count}} (Externe links)

    • J: {{formatNumber(9.tasks[].result[].items[].meta.content.flesch_kincaid_readability_index; 3)}} (Leesbaarheid)

    • K: {{9.tasks[].result[].items[].checks.no_favicon}} (Favicon?)

    • L: {{9.tasks[].result[].items[].checks.no_image_alt}} (Alt tags?)

    • M: {{9.tasks[].result[].items[].checks.no_image_title}} (Image titles?)

    • N: {{32.webViewLink}} (Link naar het Google Doc rapport)

Toelichting:
Deze mapping zorgt ervoor dat je elk stukje info van DataForSEO en het net aangemaakte Google Doc-rapport in de sheet krijgt. Zo kun je later snel terugvinden waar je verbeterpunten zijn en waar je het AI-rapport kunt bekijken.

Stap 6: DataForSEO – Get Ranked Keywords

Wat doet deze stap?
Nu vragen we DataForSEO: “Voor deze URL, haal de woorden op waarop deze pagina al rankt?” Zo krijg je een lijst met zoekwoorden, posities, zoekvolumes en moeilijkheidsgraad.

In te stellen:

  • Connection: Jouw DataForSEO-verbinding.

  • Location_name: {{7.Locatie(B)}} (De locatie uit de sheet, bv. “Netherlands” of “United States”).

  • Language_name: {{7.Taal(C)}} (De taal, bv. “Dutch”).

  • Target: {{7.URL(A)}} (De URL).

  • Limit: {{7.Hoeveel Zoekwoorden?(E)}} (Hoeveel zoekwoorden wil je hebben?).

  • Ignore Synonyms: true (zodat je voornamelijk de exacte keywords krijgt).

Tip: In de blueprint zie je ook item_types: [“organic”, “featured_snippet”, “local_pack”]. Dit betekent dat DataForSEO zowel organische posities als featured snippets/local pack-resultaten meeneemt.

Stap 7: Iterator

Wat doet deze stap?
Deze module (ID 13) neemt het array van zoekwoorden uit stap 6 (de “items” van Ranked Keywords) en maakt daar bundels van. Zo kun je die bundels vervolgens één voor één doorsturen naar de volgende stap.

In te stellen:

  • Array: {{4.tasks[].result[].items}} (de zoekwoordresultaten).

Toelichting:
Dit is eigenlijk alleen nodig als je elke gevonden keyword-rij afzonderlijk in Sheets wilt zetten. De Basic Feeder splitst de hele array in aparte bundles.

Stap 8: Google Sheets – Add Row (Ranking Keywords)

Wat doet deze stap?
Hier voeg je elke gevonden keyword-rij toe aan het tabblad “Ranking Keywords” in je Google Sheet. Zo bouw je een lijst op van alle zoekwoorden, hun zoekvolume en de keyword difficulty.

In te stellen:

  • Connection: Jouw Google Sheets-verbinding.

  • Spreadsheet ID: [10] SEO Research automation - Template

  • Sheet Name: Ranking Keywords

  • Table contains headers: Yes

  • Search Method: Search by path

  • Values (mapping):

    • A: {{7. URL (A)}} (De URL)

    • B: {{13.keyword_data.keyword}} (Zoekwoord)

    • C: {{13.keyword_data.keyword_info.monthly_searches[].search_volume}} (Maandelijks zoekvolume)

    • D: {{13.keyword_data.keyword_properties.keyword_difficulty}} (Moeilijkheid)

Toelichting:
Zo krijg je een handig overzicht van alle keywords die deze pagina al rankt, inclusief volume en hoe moeilijk het is om hoger te komen.

Stap 9: Array Aggregator

Wat doet deze stap?
De aggregator (ID 37) zorgt ervoor dat we wachten totdat alle data uit stap 6 is verwerkt. Als je een lijst met keywords hebt, worden die eerst allemaal verwerkt in de feeder en in de spreadsheet geschreven. Pas daarna gaat de flow verder.

In te stellen:

  • Feeder: Ranked Keywords - Get Ranked Keywords [4] (zoals in de blueprint staat ingesteld).

Toelichting:
Eigenlijk regelt de aggregator de ‘samenvoeging’ van alle bundels voordat je naar de volgende stap gaat.

Stap 10: DataForSEO – Get Parsed SERP

Wat doet deze stap?
Nu laten we DataForSEO kijken naar de top 10 (depth=10) zoekresultaten voor het hoofdzoekwoord (de kolom “Zoekwoord” uit stap 1). Zo krijg je inzage in de concurrenten die in Google op datzelfde zoekwoord ranken.

In te stellen:

  • Connection: Jouw DataForSEO-verbinding.

  • Keyword: {{7.Zoekwoord}} (Het zoekwoord uit de sheet).

  • Location_name: {{7.Locatie}}

  • Language_name: {{7.Taal}}

  • Device: desktop

  • Depth: 10 (we halen de top 10 resultaten op).

Toelichting:
Wil je meer resultaten uit Google? Zet de depth op 20, 50 of 100. Let wel: hoe hoger de depth, hoe meer credits/DataForSEO-call dit kan kosten.

Stap 11: Iterator

Wat doet deze stap?
Deze module (ID 21) neemt de array van SERP-resultaten (de “items” uit stap 10) en splitst deze in afzonderlijke bundles, zodat elke concurrent in een eigen set data komt.

In te stellen:

  • Array: {{16.tasks[].result[].items}} (de top 10 SERP-resultaten).

Stap 12: Google Sheets – Add Row (Concurrenten)

Wat doet deze stap?
Tot slot worden de concurrenten die in de top 10 SERP staan, weggeschreven in het tabblad “Concurrenten” van je Google Sheet. Zo zie je per zoekwoord wie de dominante spelers in Google zijn, inclusief title, description en de exacte URL.

In te stellen:

  • Connection: Jouw Google-verbinding.

  • Spreadsheet ID: [10] SEO Research automation - Template

  • Sheet Name: Concurrenten

  • Table contains headers: Yes

  • Search Method: Select from all (of Search by path; staat in de blueprint)

  • Values (mapping):

    • A: {{7.Zoekwoord}} (Keyword)

    • B: {{7.Locatie}} (Location)

    • C: {{21.rank_absolute}} (Absolute Rank)

    • D: {{21.domain}} (Domain)

    • E: {{21.title}} (Title)

    • F: {{21.description}} (Description)

    • G: {{21.url}} (URL)

Toelichting:
Als je hier meerdere zoekwoorden hebt, kun je deze stap meerdere keren laten lopen (met depth 10). De BasicFeeder splitst elk resultaat, en elke concurrent komt als aparte rij in de sheet.

Dan sluit ik af met twee vragen:

Deze nieuwsbrief draait om waarde en jullie actief helpen pragmatische met AI en Automation aan de slag te laten gaan.

Is deze uitgeschreven variant voldoende of willen jullie meer begeleiding?

Is deze uitgewerkte variant voldoende, of willen jullie meer gedetailleerde informatie en begeleiding?

Login or Subscribe to participate in polls.

En dan nog de vraag waarmee we altijd afsluiten:

Wat vond jij van deze editie?

Stem hieronder om ons te helpen de nieuwsbrief voor jou te verbeteren.

Login or Subscribe to participate in polls.

Tot maandag! Dan staat het laatste AI nieuws weer voor jullie klaar.

Mathieu

Reply

or to participate.