Workflow-Vorlage für Domain-Analyse
Fortgeschritten
Dies ist ein Market Research-Bereich Automatisierungsworkflow mit 12 Nodes. Hauptsächlich werden Code, McpClient, GoogleSheets, ManualTrigger, SplitInBatches und andere Nodes verwendet. Automatisierung der mehrdomänen-SEO-Analyse mit Ahrefs und Google Sheets
Voraussetzungen
- •Google Sheets API-Anmeldedaten
Verwendete Nodes (12)
Kategorie
Workflow-Vorschau
Visualisierung der Node-Verbindungen, mit Zoom und Pan
Workflow exportieren
Kopieren Sie die folgende JSON-Konfiguration und importieren Sie sie in n8n
{
"id": "62lxnDVx4b47ql6P",
"meta": {
"instanceId": "3d4f6f82ad714311bb383a0cddf651da8753530e5575f46d078b9a29d27557e0"
},
"name": "Domain Analyzer Workflow Template",
"nodes": [
{
"id": "d4d19da7-a633-4090-8449-0d51556b6f36",
"name": "Bei Klick auf 'Workflow ausführen'",
"type": "n8n-nodes-base.manualTrigger",
"position": [
-1024,
144
],
"parameters": {},
"typeVersion": 1
},
{
"id": "6297f8b6-b592-48e0-80ea-799e7ba02e95",
"name": "Über Elemente iterieren",
"type": "n8n-nodes-base.splitInBatches",
"position": [
-560,
144
],
"parameters": {
"options": {}
},
"typeVersion": 3
},
{
"id": "8e2c22fa-bd52-4ef2-b998-f88b073eab71",
"name": "Parse JSON",
"type": "n8n-nodes-base.code",
"position": [
-160,
-240
],
"parameters": {
"jsCode": "// Input: Stringified JSON with escaped characters like \\n, \\\", etc.\nconst inputString = $input.first().json.result.content[0].text\n\n// Parse the string into a real object\nconst parsedJson = JSON.parse(inputString);\n\nreturn [\n {\n json: parsedJson\n }\n];"
},
"typeVersion": 2
},
{
"id": "5c3fa80f-a116-4d1c-8b3f-872dab147dba",
"name": "Verkehrsdaten zu Sheet hinzufügen",
"type": "n8n-nodes-base.googleSheets",
"position": [
16,
-240
],
"parameters": {
"columns": {
"value": {
"Domain": "={{ $('Get Domains in sheet').item.json.Domain }}",
"top_pages": "={{ $json.top_pages }}",
"top_keywords": "={{ $json.top_keywords }}",
"costMontlyAvg": "={{ $json.traffic.costMontlyAvg }}",
"top_countries": "={{ $json.top_countries }}",
"traffic_history": "={{ $json.traffic_history }}",
"trafficMonthlyAvg": "={{ $json.traffic.trafficMonthlyAvg }}"
},
"schema": [
{
"id": "Domain",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Domain",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "trafficMonthlyAvg",
"type": "string",
"display": true,
"required": false,
"displayName": "trafficMonthlyAvg",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "costMontlyAvg",
"type": "string",
"display": true,
"required": false,
"displayName": "costMontlyAvg",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "traffic_history",
"type": "string",
"display": true,
"required": false,
"displayName": "traffic_history",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "top_pages",
"type": "string",
"display": true,
"required": false,
"displayName": "top_pages",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "top_keywords",
"type": "string",
"display": true,
"required": false,
"displayName": "top_keywords",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "top_countries",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "top_countries",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "domainRating",
"type": "string",
"display": true,
"required": false,
"displayName": "domainRating",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "urlRating",
"type": "string",
"display": true,
"required": false,
"displayName": "urlRating",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "backlinksCount",
"type": "string",
"display": true,
"required": false,
"displayName": "backlinksCount",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "referringDomains",
"type": "string",
"display": true,
"required": false,
"displayName": "referringDomains",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "dofollowBacklinksPercentage",
"type": "string",
"display": true,
"required": false,
"displayName": "dofollowBacklinksPercentage",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "dofollowRefdomainsPercentage",
"type": "string",
"display": true,
"required": false,
"displayName": "dofollowRefdomainsPercentage",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "row_number",
"type": "number",
"display": true,
"removed": true,
"readOnly": true,
"required": false,
"displayName": "row_number",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "defineBelow",
"matchingColumns": [
"Domain"
],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "update",
"sheetName": {
"__rl": true,
"mode": "list",
"value": "gid=0",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1hqDbgAfqxH7y79TO1Brt8lIXupGkQ7WSf1mnQiiw7Oo/edit#gid=0",
"cachedResultName": "Domains"
},
"documentId": {
"__rl": true,
"mode": "list",
"value": "1oBQqboIT9ubDmMIvvZveAneUHpuNV60egXsIU3hyuy0",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1oBQqboIT9ubDmMIvvZveAneUHpuNV60egXsIU3hyuy0/edit?usp=drivesdk",
"cachedResultName": "Example: Domain Analyzer Workflow"
},
"authentication": "serviceAccount"
},
"credentials": {
"googleApi": {
"id": "CEWCuoGMaP93jgCn",
"name": "GCP Service account"
}
},
"typeVersion": 4.6
},
{
"id": "67be72c9-3fb1-43a5-a720-5cdb42c87129",
"name": "JSON1 parsen",
"type": "n8n-nodes-base.code",
"position": [
-176,
416
],
"parameters": {
"jsCode": "// Input: Stringified JSON with escaped characters like \\n, \\\", etc.\nconst inputString = $input.first().json.result.content[0].text\n\n// Parse the string into a real object\nconst parsedJson = JSON.parse(inputString);\n\nreturn [\n {\n json: parsedJson\n }\n];"
},
"typeVersion": 2
},
{
"id": "ee24bf73-35c9-4f29-b577-6f2901ddf70d",
"name": "Domain-SEO-Daten zu Sheet hinzufügen",
"type": "n8n-nodes-base.googleSheets",
"position": [
0,
416
],
"parameters": {
"columns": {
"value": {
"Domain": "={{ $('Get Domains in sheet').item.json.Domain }}",
"urlRating": "={{ $json.overview.urlRating }}",
"domainRating": "={{ $json.overview.domainRating }}",
"backlinksCount": "={{ $json.overview.backlinks }}",
"referringDomains": "={{ $json.overview.refdomains }}",
"dofollowBacklinksPercentage": "={{ $json.overview.dofollowBacklinks }}",
"dofollowRefdomainsPercentage": "={{ $json.overview.dofollowRefdomains }}"
},
"schema": [
{
"id": "Domain",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Domain",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "trafficMonthlyAvg",
"type": "string",
"display": true,
"required": false,
"displayName": "trafficMonthlyAvg",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "costMontlyAvg",
"type": "string",
"display": true,
"required": false,
"displayName": "costMontlyAvg",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "traffic_history",
"type": "string",
"display": true,
"required": false,
"displayName": "traffic_history",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "top_pages",
"type": "string",
"display": true,
"required": false,
"displayName": "top_pages",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "top_keywords",
"type": "string",
"display": true,
"required": false,
"displayName": "top_keywords",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "top_countries",
"type": "string",
"display": true,
"required": false,
"displayName": "top_countries",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "domainRating",
"type": "string",
"display": true,
"required": false,
"displayName": "domainRating",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "urlRating",
"type": "string",
"display": true,
"required": false,
"displayName": "urlRating",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "backlinksCount",
"type": "string",
"display": true,
"required": false,
"displayName": "backlinksCount",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "referringDomains",
"type": "string",
"display": true,
"required": false,
"displayName": "referringDomains",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "dofollowBacklinksPercentage",
"type": "string",
"display": true,
"required": false,
"displayName": "dofollowBacklinksPercentage",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "dofollowRefdomainsPercentage",
"type": "string",
"display": true,
"required": false,
"displayName": "dofollowRefdomainsPercentage",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "row_number",
"type": "number",
"display": true,
"removed": true,
"readOnly": true,
"required": false,
"displayName": "row_number",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "defineBelow",
"matchingColumns": [
"Domain"
],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "update",
"sheetName": {
"__rl": true,
"mode": "list",
"value": "gid=0",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1hqDbgAfqxH7y79TO1Brt8lIXupGkQ7WSf1mnQiiw7Oo/edit#gid=0",
"cachedResultName": "Domains"
},
"documentId": {
"__rl": true,
"mode": "list",
"value": "1oBQqboIT9ubDmMIvvZveAneUHpuNV60egXsIU3hyuy0",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1oBQqboIT9ubDmMIvvZveAneUHpuNV60egXsIU3hyuy0/edit?usp=drivesdk",
"cachedResultName": "Example: Domain Analyzer Workflow"
},
"authentication": "serviceAccount"
},
"credentials": {
"googleApi": {
"id": "CEWCuoGMaP93jgCn",
"name": "GCP Service account"
}
},
"typeVersion": 4.6
},
{
"id": "53a605a3-dbca-43f9-9dca-ab3e3aa46fd0",
"name": "Domains in Sheet abrufen",
"type": "n8n-nodes-base.googleSheets",
"position": [
-800,
144
],
"parameters": {
"options": {},
"sheetName": {
"__rl": true,
"mode": "list",
"value": "gid=0",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1oBQqboIT9ubDmMIvvZveAneUHpuNV60egXsIU3hyuy0/edit#gid=0",
"cachedResultName": "Domains"
},
"documentId": {
"__rl": true,
"mode": "list",
"value": "1oBQqboIT9ubDmMIvvZveAneUHpuNV60egXsIU3hyuy0",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1oBQqboIT9ubDmMIvvZveAneUHpuNV60egXsIU3hyuy0/edit?usp=drivesdk",
"cachedResultName": "Example: Domain Analyzer Workflow"
},
"authentication": "serviceAccount"
},
"credentials": {
"googleApi": {
"id": "CEWCuoGMaP93jgCn",
"name": "GCP Service account"
}
},
"typeVersion": 4.6
},
{
"id": "56dea17f-3c6d-4cd3-9aa8-87462ff28786",
"name": "SEO-Statistiken abrufen",
"type": "n8n-nodes-mcp.mcpClient",
"position": [
-352,
416
],
"parameters": {
"toolName": "get_backlinks_list",
"operation": "executeTool",
"toolParameters": "={\n \"domain\": \"{{ $json.Domain }}\"\n}"
},
"credentials": {
"mcpClientApi": {
"id": "IHt3R0V5d8rgP6MK",
"name": "SEO-MCP Client (STDIO)"
}
},
"typeVersion": 1
},
{
"id": "f160163e-c900-47d5-b60e-0bbe6029e28a",
"name": "Verkehrsdaten abrufen",
"type": "n8n-nodes-mcp.mcpClient",
"position": [
-336,
-240
],
"parameters": {
"toolName": "get_traffic",
"operation": "executeTool",
"toolParameters": "={\n \"domain_or_url\": \"{{ $json.Domain }}\"\n}"
},
"credentials": {
"mcpClientApi": {
"id": "IHt3R0V5d8rgP6MK",
"name": "SEO-MCP Client (STDIO)"
}
},
"typeVersion": 1
},
{
"id": "248f15ae-bbab-476c-9956-cafc2c0029e1",
"name": "Haftnotiz6",
"type": "n8n-nodes-base.stickyNote",
"position": [
-400,
-400
],
"parameters": {
"color": 7,
"width": 680,
"height": 460,
"content": "## 1. Get Domain Traffic information\n\nRetrieve traffic, top pages and keyword information from ahrefs.com for each domain"
},
"typeVersion": 1
},
{
"id": "223ef12a-7cb6-4c66-8cf0-88d8554b86f5",
"name": "Haftnotiz",
"type": "n8n-nodes-base.stickyNote",
"position": [
-400,
288
],
"parameters": {
"color": 7,
"width": 680,
"height": 460,
"content": "## 2. Get Domain SEO information\n\nRetrieve ranking and backlink information from ahrefs.com for each domain"
},
"typeVersion": 1
},
{
"id": "1277a143-0010-4e82-8a0e-e34eacbe9424",
"name": "Haftnotiz7",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1584,
-112
],
"parameters": {
"width": 460,
"height": 752,
"content": "## Domain Analyzer Workflow\n### This n8n template fetches SEO and traffic information from ahref for a list of domains in a Google Sheet. This is great for marketing research and SEO workflow optimizations and saves tons of time.\n\n### How it works\n* We'll import domains from the Google sheet\n* We use an SEO MCP server to fetch data from ahref free tooling\n* The fetched data is stored in the Google sheet\n\n### How to use\n* Make a copy of [this](https://docs.google.com/spreadsheets/d/1oBQqboIT9ubDmMIvvZveAneUHpuNV60egXsIU3hyuy0/edit?gid=456214435#gid=456214435) Google Sheet and add it in all Google Sheet nodes\n* Make sure that n8n has read & write permissions for your Google sheet. For my self-hosted n8n instance I was using a [Google Service Account](https://docs.n8n.io/integrations/builtin/credentials/google/service-account/)\n* Add your list of domains in the first column in the Domain sheet\n* Add MCP credentials for [seo-mcp](https://github.com/cnych/seo-mcp). Make sure you set the environments correctly:\n```json\n\"command\": \"uvx\",\n\"args\": [\"--python\", \"3.10\", \"seo-mcp\"],\n\"env\": {\n \"CAPSOLVER_API_KEY\": \"CAP-xxxxxx\"\n}\n```\n* Execute workflow :)\n\n### Requirements\n* CapSolver account and API key ([register here](https://dashboard.capsolver.com/passport/register?inviteCode=p-4Y_DjQymvt)) to use [seo-mcp](https://github.com/cnych/seo-mcp)\n* Google Drive account"
},
"typeVersion": 1
}
],
"active": false,
"pinData": {},
"settings": {
"executionOrder": "v1"
},
"versionId": "86b5106a-5d48-43f0-bf5b-b684b68d05a4",
"connections": {
"8e2c22fa-bd52-4ef2-b998-f88b073eab71": {
"main": [
[
{
"node": "5c3fa80f-a116-4d1c-8b3f-872dab147dba",
"type": "main",
"index": 0
}
]
]
},
"f160163e-c900-47d5-b60e-0bbe6029e28a": {
"main": [
[
{
"node": "8e2c22fa-bd52-4ef2-b998-f88b073eab71",
"type": "main",
"index": 0
}
]
]
},
"67be72c9-3fb1-43a5-a720-5cdb42c87129": {
"main": [
[
{
"node": "ee24bf73-35c9-4f29-b577-6f2901ddf70d",
"type": "main",
"index": 0
}
]
]
},
"56dea17f-3c6d-4cd3-9aa8-87462ff28786": {
"main": [
[
{
"node": "67be72c9-3fb1-43a5-a720-5cdb42c87129",
"type": "main",
"index": 0
}
]
]
},
"6297f8b6-b592-48e0-80ea-799e7ba02e95": {
"main": [
[],
[
{
"node": "56dea17f-3c6d-4cd3-9aa8-87462ff28786",
"type": "main",
"index": 0
},
{
"node": "f160163e-c900-47d5-b60e-0bbe6029e28a",
"type": "main",
"index": 0
}
]
]
},
"53a605a3-dbca-43f9-9dca-ab3e3aa46fd0": {
"main": [
[
{
"node": "6297f8b6-b592-48e0-80ea-799e7ba02e95",
"type": "main",
"index": 0
}
]
]
},
"5c3fa80f-a116-4d1c-8b3f-872dab147dba": {
"main": [
[
{
"node": "6297f8b6-b592-48e0-80ea-799e7ba02e95",
"type": "main",
"index": 0
}
]
]
},
"ee24bf73-35c9-4f29-b577-6f2901ddf70d": {
"main": [
[
{
"node": "6297f8b6-b592-48e0-80ea-799e7ba02e95",
"type": "main",
"index": 0
}
]
]
},
"d4d19da7-a633-4090-8449-0d51556b6f36": {
"main": [
[
{
"node": "53a605a3-dbca-43f9-9dca-ab3e3aa46fd0",
"type": "main",
"index": 0
}
]
]
}
}
}Häufig gestellte Fragen
Wie verwende ich diesen Workflow?
Kopieren Sie den obigen JSON-Code, erstellen Sie einen neuen Workflow in Ihrer n8n-Instanz und wählen Sie "Aus JSON importieren". Fügen Sie die Konfiguration ein und passen Sie die Anmeldedaten nach Bedarf an.
Für welche Szenarien ist dieser Workflow geeignet?
Fortgeschritten - Marktforschung
Ist es kostenpflichtig?
Dieser Workflow ist völlig kostenlos. Beachten Sie jedoch, dass Drittanbieterdienste (wie OpenAI API), die im Workflow verwendet werden, möglicherweise kostenpflichtig sind.
Verwandte Workflows
Vorlagen für Keyword-Recherche zu Zielgruppenfragen
Workflow für die Keyword-Recherche bei Zielgruppenfragen mit OpenAI, Ahrefs und Google Sheets
If
Set
Code
+
If
Set
Code
17 NodesMichael Muenzer
Marktforschung
YouTube-Kanal mit GPT-4o-mini und Gmail analysieren und Performance-Bericht senden
GPT-4o-mini und Gmail zur Analyse eines YouTube-Kanals und zur Sendingung von Leistungsberichten verwenden
Code
Email Send
Http Request
+
Code
Email Send
Http Request
20 NodesRahul Joshi
Marktforschung
Vorlage v08/02 - Facebook-Ad-Bibliothek zu Amazon-Spider
Automatische Suche nach Facebook-Werbeprodukten auf Amazon mit einem Apify-Spider
If
Set
Code
+
If
Set
Code
24 NodesRichard Besier
Marktforschung
Automatisches Taggen und Analysieren von Kundenfeedback in Google Sheets mit OpenAI
Massenverarbeitung von Kundenfeedback in Google Sheets mit Sentiment- und Emotionsanalyse
Set
Code
Merge
+
Set
Code
Merge
24 NodesParhum Khoshbakht
Marktforschung
Google Maps-Bewertungen mit Google Tabellen synchronisieren
Google Maps Bewertungen zu Google Tabellen Synchronisierung mit SerpApi
If
Set
Code
+
If
Set
Code
22 NodesSerpApi
Marktforschung
Google Maps-Unternehmens-Scraping und Lead-Anreicherung mit Bright Data und Google Gemini
Google Maps-Unternehmens-Scraping und Lead-Anreicherung mit Bright Data und Google Gemini
Set
Code
Wait
+
Set
Code
Wait
29 NodesRanjan Dailata
Lead-Generierung
Workflow-Informationen
Schwierigkeitsgrad
Fortgeschritten
Anzahl der Nodes12
Kategorie1
Node-Typen6
Autor
Michael Muenzer
@michaelmuenzerExterne Links
Auf n8n.io ansehen →
Diesen Workflow teilen