#14 : Comment se créer un outil d'analyse de mots-clés
Si toi aussi tu trouves que SEMRush est hors de prix
Introduction
Hey 👋
Cette semaine je te propose mon scénario avec le plus de modules jamais créé sur cette newsletter : 39 modules
Il m’a pris pas mal de temps dans sa conception, j’espère que tu l’apprécieras !
Si tu ne souhaites pas prendre l’abonnement payant mais que tu souhaites tout de même soutenir cette newsletter, tu peux :
Petit rappel pour les nouveaux lecteurs, Make est l’outil d’automatisation qui me permet :
De développer des outils et assistants
D’être plus efficace (automatisation des tâches répétitives)
D’exploiter à 100% l’intelligence artificielle
Cette newsletter a pour but de te donner, chaque semaine, des idées d’automatisation t’apportant un maximum de valeur ajoutée.
Cette semaine, on va automatiser la remontée de client inactif et générer un argumentaire unique en fonction de leur historique.
👁️ Présentation du scénario
✅ Quel est l’objectif du scénario ?
L’objectif de ce scénario est de te faire gagner du temps sur ta recherche et analyse de mot-clé.
Tu souhaites lancer un blog, optimiser ton contenu ou même savoir si un mot clé est intéressant pour ton entreprise ?
Tu le renseignes sur le Google Sheets fourni avec ce scénario et il te ressort :
Le volume de recherche du mot clé
La présence ou non de Google Ads
Le top 10 des résultats de la SERP : Qui et quel contenu se rankent sur ce mot clé
Le top 10 des recherches associées : Pas mal pour te donner des idées d’alternatives à ranker
Le top 10 des questions autour du mot-clé
10 idées d’articles basés sur ton mot-clé et les 10 premiers résultats de la SERP
Je te propose un Mini SEMRush qui ne te coûtera pas grand chose.
⚙️ Comment fonctionne ce scénario ?
Il détecte le mot clé renseigné dans le Google Sheets
Réalise plusieurs appels API à différents services
Une nouvelle feuille Sheets se créé à partir d’un Template
La feuille se remplie avec les réponses fournies par les différents services appelés
🥇 Quelle est la valeur ajoutée du scénario ?
Le scénario te donne les armes pour constituer ta stratégie SEO.
T’es un site e-commerce de vente de vélo ?
Tu n’as qu’à renseigner un premier mot clé comme “Achat vélo” et appuyer sur Lancer l’analyse.
En 1 minute, tu te retrouveras avec un Sheets détaillé renseignant qui sont tes concurrents et te donnant beaucoup d’idées de contenu à rédiger.
Rien ne t’empêche aussi de récupérer la recherche associée “vélo vtt” lié à “Achat vélo” et lancer une deuxième analyse.
A manipuler avec modération sous peine de tomber dans les méandres du SEO 😅
🛠️ Quelles applications sont nécessaires à ce scénario ?
Google Sheets
C’est le point central de notre scénario, il servira d’interface pour lancer et récupérer l’analyse
OpenAI
On fait appel à l’API OpenAI pour enrichir les informations SEO récupérées
💰 Quel est le coût estimé du scénario ?
Comme toujours, ce scénario nécessite d’avoir un compte Make.
Tu as également besoin d’un compte OpenAI pour faire les appels API.
Ici on sera inférieur au centime par analyse lancée.
Exemple du scénario en action
🧑🏫 Etapes pour créer ce scénario
L’abonnement payant te donne accès :
Aux différentes étapes de création de ce scénario
A mon template Google Sheets
Aux prompts OpenAI
Aux prochains scénarios publiés (1 par semaine)
Aux précédents scénarios publiés (13 à l’heure où sort celui-ci)
Tu souhaites soumettre une idée de scénario ? Tu peux le faire ici !
Etape 1 : Récupère le template Google Sheets
Il servira de base à ce scénario, tu peux le récupérer ici : Lien
Tu n’as plus qu’à en faire une copie dans ton espace Google. Pour cela, il te suffit de cliquer sur “Fichier” → “Créer une copie”
Etape 2 : Création du webhook
Le Trigger Make est déclenché par le bouton “Lancer l’analyse” présent dans le Google Sheets.
Afin de personnaliser celui-ci, c’est très simple.
Crée un nouveau scénario Make puis choisis le module “Webhooks” → “Custom webhook”
Create a webhook → Donne lui le nom que tu souhaites dans “Webhook name” puis “Save”
Clique sur “Copy address to clipboard” pour copier l’url du webhook (l’adresse en bleu sur l’image)
Ensuite rendez-vous sur le Google Sheets que tu viens de récupérer.
Clique sur “Extensions” puis “Apps Script”
Puis remplace le début de Hook surligner par ton webhook
Pour info, le reste du script permet de créer une nouvelle feuille nommée “Analyse + ton mot clé renseigné en D6” en dupliquant la feuille “Template” ⚠️ Attention à ne pas la supprimer du coup.
Etape 3 : Récupérer ton mot-clé à analyser
Pour cela on ajoute le module “Google Sheets - Get a Cell”
On récupère le mot-clé basé en D6, cela sera indispensable dans la suite du scénario.
Etape 4 : Création d’un compte SERP API
J’ai découvert cet outil et je le trouve super :
https://serpapi.com/
Il te permet de te connecter en API à Google Search, il faut que tu crées un compte
T’aura 100 recherches API / mois offertes, c’est déjà bien.
Tu récupères ta Clé API
Que tu vas directement insérer dans le module “HTTP - Make a request” en le paramétrant de la manière suivante :
Il est important que tu insères bien la valeur de la cellule récupérée dans le module précédent “Get a Cell” juste après le “?q=” : https://serpapi.com/search.json?q=[INSERE TA VALEUR]&hl=fr&gl=fr
Renseigne bien ta clé API dans le champ “Value” après api_key”.
Etape 5 : Fais dodo
On ajoute un module “Tools - Sleep” afin d’ajouter un léger délai de 5 secondes le temps que le script Google Sheets s’exécute et qu’il crée bien la nouvelle feuille.
Etape 6 : Volume de recherche et Google Ads
Nos deux prochains modules Googles Sheets vont servir à renseigner ces deux cellules :
Voici le paramétrage pour le volume de recherche :
Ici on va chercher le nombre de résultat total pour notre requête dans le module HTTP.
Et voici le paramétrage pour la cellule Google Ads :
Ici l’idée est de voir si le retour de donnée fourni par SERP API contient un résultat d’Ads. Si oui, on fait remonter qu’il y a des Ads, sinon cela rempli “False”.
Etape 7 : 4way
Maintenant qu’on a récupéré les informations, on va les organiser dans notre nouvelle feuille. Pour cela on ajoute un “Router” qui aura pour objectif d’alimenter 4 routes distinctes.
Etape 8 : Voie 1 - Résultat SERP
Notre première voie, celle du haut va renseigner les résultats organiques récupérés.
Le premier module “Iterator” va nous permettre d’exploiter le bloc “organic_results” du module HTTP.
Afin de le transformer en Bundle comme sur le screenshot suivant
L’objectif ensuite est d’ajouter les résultats dans la nouvelle feuille Google Sheets.
Pour cela on ajoute le module “Tools - Increment function”
L’iterator va tourner autant de fois qu’il y a de résultats dans “Organic Results”, si SERP API fait ressortir 10 résultats, le module Iterator va se lancer 10 fois et écraser les informations qu’il renseigne dans le Google Sheets.
C’est pourquoi il est important de mettre ce module Tools qui va mettre une variable +1 à chaque fois que le module est activé.
Si c’est complexe, cela va s’éclaircir avec le module suivant : “Google Sheets - Update a Row”.
Lors de la première activation on souhaite mettre à jour la ligne 12.
On paramètre donc dans “Row number” la ligne 11 + le résultat du module précédent. Celui-ci aura comme valeur “1” puis “2” puis “3”, etc.
On va l’utiliser pour mettre à jour autant de lignes que nous avons de résultats.
Ensuite on map les bonnes colonnes avec les bonnes données. J’ai choisi ceux-là mais tu peux ajouter d’autres données.
Etape 9 : Voie 2 - Recherches associées
Pour cette voie, le fonctionnement est exactement le même que ce qu’on vient de faire. On récupère juste des données différentes. Au lieu des “organic_results” ce sera les “related_searches”
On ajoute donc un nouvel Iterator
Puis le module “Tools - Increment Function”
Et enfin le module “Google Sheets - Update a Row”
Cette fois on met à jour à partir de la ligne 26 et on cherche à compléter la requête associée.
Etape 10 : Voie 3 - Questions associées
Pour cette remontée d’information, on va s’appuyer sur ChatGPT afin qu’il nous suggère 10 questions en rapport avec le mot-clé à analyser.
Pour cela on ajoute le module “OpenAI - Create a Chat Completion”
On va s’appuyer sur le dernier modèle sorti par OpenAI : gpt-4-turbo-2024-04-09
On commence par lui renseigner ce prompt :
T'es un expert SEO reconnu, tu sais parfaitement comment ranker des mots clés.
Pour cela tu t'appuis sur tes années d'expérience et ta connaissance.
A partir d'un mot clé que je vais te fournir, je veux que tu proposes 10 questions pertinentes incluant le mot clé.
Pour cela tu dois te mettre dans la tête d'une personne tapant le mot clé afin de deviner son intention de recherche et proposer 10 questions qu'il aurait pu poser sur Google.
Pour te donner un exemple, avec le mot clé "prospection LinkedIn", nous pouvons imaginer les questions suivantes :
- Comment faire de la prospection LinkedIn ?
- Comment automatiser sa prospection sur LinkedIn ?
- Comment cibler ses prospects sur LinkedIn ?
- Quels sont les meilleurs outils pour faire de la prospection LinkedIn ?
etc
J'attends ta réponse sous forme de JSON de la manière suivante :
{
"Question1":"Ta réponse",
"Question2":"Ta réponse"
}
Il s’agira ici du prompt “System”
Et voici le prompt user
Pense à bien cocher JSON Object en Response Format (dans les paramétrages avancés).
Cela te donnera une meilleure fiabilité dans les réponses fourni par ChatGPT en JSON.
On ajoute ensuite le module “JSON - Parse JSON” afin de parser la réponse de ChatGPT et la rendre exploitable dans le reste du scénario.
Ensuite vient la partie un peu laborieuse du scénario, affecter chacune des questions à la bonne cellule de notre nouvelle feuille Sheets.
Cela va se faire avec 10 modules “Google Sheets - Update a Cell”
Voici le paramétrage du premier module. Il ne te restera ensuite plus qu’à cloner le module et modifier “B40” par “B41” puis “Question1” par “Question2” et ainsi de suite jusqu’à la question 10 et la cellule B49.
Etape 11 : Voie 4 - 10 idées d’Articles
Le concept va être très semblable pour cette dernière branche.
Ce qui va différer se situera au début, on va alimenter ChatGPT avec les 10 meilleurs résultats de la SERP. Cela va lui donner du contexte supplémentaire pour nous fournir de meilleurs résultats.
Pour cela on commence par le module “Google Sheets - Get Range Values” afin de récupérer nos 10 premiers résultats.
Afin de les rendre exploitable par ChatGPT on ajoute le module “Tools - Table Aggregator”
Ce module permet de transformer le résultat pour le rendre comme cela
On va ensuite fournir la donnée brute à ChatGPT.
Il y a sûrement une manière plus propre de traiter la donnée mais par manque de temps je suis allé au plus rapide.
J’ajoute ensuite le module “ChatGPT - Create a Chat Completion”
Je modifie légèrement mon prompt system :
T'es un expert SEO reconnu, tu sais parfaitement comment ranker des mots clés.
Pour cela tu t'appuis sur tes années d'expérience et ta connaissance.
A partir d'un mot clé que je vais te fournir, je veux que tu proposes 10 idées d'articles pertinentes incluant le mot clé.
Pour cela tu vas t'appuyer sur trois éléments :
- Je vais te donner la liste des 10 meilleurs résultats sur Google, cela te servira de base pour proposer des idées d'articles
- Appuis toi sur ton expertise du SEO pour détecter quelle est l'intention de recherche afin de proposer des articles
J'attends ta réponse sous forme de JSON de la manière suivante :
{
"Article1":"Ta réponse",
"Article2":"Ta réponse"
}
Et mon prompt User :
Comme pour l’autre module ChatGPT, pense bien à cocher “JSON Object”
Enfin le procédé est le même que pour la branche précédente, on parse le JSON retourné par ChatGPT et on met à jour les cellules qui vont bien.
🏁 Félicitations le scénario est prêt !! 🏁
Tu n’as plus qu’à sauvegarder et l’activer.
Maintenant, dès que tu renseignera un mot-clé dans ton Google Sheets et que tu appuieras sur “Lancer l’analyse” le scénario te fera automatiquement remonter :
Les 10 meilleurs résultats de la SERP
Les recherches associées
10 idées de question en rapport avec ton mot-clé
10 idées d’article basées sur ton mot-clé et sur les pages qui rankent dans le top 10
N’hésite pas à me faire tes retours en commentaire sur ce scénario.
➡️ Tu préfères un format vidéo pour expliquer le scénario ?
➡️ Tu as des critiques constructives à faire ?