Vous passez trop de temps à analyser vos données SEO ? Ou pire : vous ne les consultez qu’une fois par mois, quand il est déjà trop tard pour réagir ?
Avec n8n et Google Search Console, vous pouvez automatiser entièrement le suivi de vos performances SEO, détecter en temps réel les pages qui chutent dans les résultats Google, et recevoir chaque semaine un rapport clair et exploitable.
Fini les tableaux à la main ou les exports CSV : voici comment mettre en place un workflow intelligent qui travaille pour vous.
Objectif de l’automatisation
L’objectif est simple :
- Identifier automatiquement les pages à faible trafic ou visibilité
- Récupérer les données depuis Google Search Console
- Générer un rapport hebdomadaire lisible
- L’envoyer directement par email, Slack, ou dans Notion
Prérequis
Avant de démarrer, vous aurez besoin :
- D’un compte Google Search Console actif
- D’un accès à n8n (cloud ou auto-hébergé)
- D’un projet dans Google Cloud Console avec l’API Search Console activée
- D’une connexion OAuth2 configurée dans n8n
Étapes du workflow dans n8n
1. Planification (trigger)
Créez un nœud Schedule :
- Tous les lundis à 8h du matin (par exemple)
- Déclenchement hebdomadaire pour suivre la performance de la semaine passée
2. Récupération des données GSC
Utilisez un nœud HTTP Request ou directement le connecteur Google Search Console (si dispo) :
- Méthode :
POST - Endpoint :
https://searchconsole.googleapis.com/webmasters/v3/sites/https://votre-site.com/searchAnalytics/query - Body JSON :
{
"startDate": "{{ $now.minus({ days: 7 }).format('YYYY-MM-DD') }}",
"endDate": "{{ $now.minus({ days: 1 }).format('YYYY-MM-DD') }}",
"dimensions": ["page"],
"rowLimit": 1000
}
3. Analyse des performances
Ajoutez un nœud Function pour filtrer les résultats :
const rows = items[0].json.rows || [];
const pages = rows
.filter(row => row.ctr < 0.01 || row.position > 20)
.map((row, i) =>
`${i + 1}. ${row.keys[0]} - Clicks: ${row.clicks}, CTR: ${(row.ctr * 100).toFixed(2)}%, Position: ${row.position.toFixed(2)}`
);
return [{
json: {
report: pages.join('\n')
}
}];
Ce code détecte les pages à faible CTR (< 1%) ou à position moyenne > 20.
4. Envoi du rapport
Choisissez votre canal préféré :
- Nœud SMTP ou Gmail
- Sujet :
Rapport SEO - Pages à optimiser - Corps :
{{$json["report"]}}
Slack
- Message envoyé dans un canal ou en privé
Notion ou Google Docs
- Créez une nouvelle entrée à chaque exécution pour historiser les résultats
Exemple de rapport reçu
Rapport SEO du 14 au 20 juillet :
1. /services/seo - Clicks: 4 - CTR: 0.88% - Pos: 23.1
2. /blog/guide-seo-2025 - Clicks: 1 - CTR: 0.52% - Pos: 27.4
3. /formations - Clicks: 7 - CTR: 0.95% - Pos: 21.6
➡ Ces pages nécessitent une optimisation SEO !
Grâce à ce rapport :
- Vous savez où concentrer vos efforts SEO
- Vous détectez les pages en perte de vitesse
- Vous évitez de subir une chute de trafic sans vous en rendre compte
A intégrer si besoin
- Générer un graphique avec l’API de Chart.js
- Ajouter une comparaison semaine N vs N-1
- Créer automatiquement une tâche SEO dans Notion, ClickUp ou Trello
- Archiver tous les rapports dans un dossier Google Drive
Bonus IA : analyse automatique des pages avec OpenAI
Et si votre rapport SEO ne se contentait pas de vous lister les pages en baisse… mais vous proposait directement des actions concrètes pour les améliorer ?
C’est possible en ajoutant OpenAI (ou un autre LLM comme Mistral, Claude, etc.) à votre workflow n8n. Voici comment :
Objectif
Utiliser l’IA pour générer automatiquement des recommandations SEO à partir des données de Google Search Console :
- Suggestions de nouveaux titres plus accrocheurs
- Idées de mots-clés à cibler
- Propositions d’optimisation du contenu ou des balises
Étapes à ajouter dans le workflow n8n
- Après avoir filtré les pages en faible performance, préparez un prompt :
const messages = items[0].json.report.split('\n').map((line, i) => {
return `Page ${i + 1} : ${line}`;
});
const prompt = `Voici une liste de pages dont le SEO est à améliorer. Pour chaque page, propose 1 idée d'amélioration du contenu ou du titre :\n\n${messages.join('\n')}`;
return [{ json: { prompt } }];
- Ajoutez un nœud OpenAI (ou autre LLM compatible) :
- Model :
gpt-4ougpt-3.5-turbo - Prompt : contenu généré précédemment
- Output : une analyse en langage naturel
- Ajoutez le résultat au rapport final :
- Ajoutez une section « Suggestions IA » dans votre mail ou Slack
- Exemple :
Suggestions IA :
- /formations : renommer le titre avec "Apprendre en ligne dès aujourd'hui"
- /guide-seo-2025 : ajouter une FAQ avec les questions fréquentes sur le SEO 2024
Résultat : un assistant SEO intelligent
Chaque lundi matin, vous recevez non seulement un rapport de performance, mais aussi des conseils personnalisés sur les pages à retravailler. Vous gagnez en :
- Pertinence
- Réactivité
- Créativité
