8
n8n 한국어amn8n.com

도메인 분석기 워크플로 템플릿

중급

이것은Market Research분야의자동화 워크플로우로, 12개의 노드를 포함합니다.주로 Code, McpClient, GoogleSheets, ManualTrigger, SplitInBatches 등의 노드를 사용하며. Ahrefs 및 Google 스프레드시트를 사용한 다중 도메인 SEO 분석 자동화

사전 요구사항
  • Google Sheets API 인증 정보

카테고리

워크플로우 미리보기
노드 연결 관계를 시각적으로 표시하며, 확대/축소 및 이동을 지원합니다
워크플로우 내보내기
다음 JSON 구성을 복사하여 n8n에 가져오면 이 워크플로우를 사용할 수 있습니다
{
  "id": "62lxnDVx4b47ql6P",
  "meta": {
    "instanceId": "3d4f6f82ad714311bb383a0cddf651da8753530e5575f46d078b9a29d27557e0"
  },
  "name": "Domain Analyzer Workflow Template",
  "nodes": [
    {
      "id": "d4d19da7-a633-4090-8449-0d51556b6f36",
      "name": "워크플로우 '실행' 클릭 시",
      "type": "n8n-nodes-base.manualTrigger",
      "position": [
        -1024,
        144
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "6297f8b6-b592-48e0-80ea-799e7ba02e95",
      "name": "항목 루프 처리",
      "type": "n8n-nodes-base.splitInBatches",
      "position": [
        -560,
        144
      ],
      "parameters": {
        "options": {}
      },
      "typeVersion": 3
    },
    {
      "id": "8e2c22fa-bd52-4ef2-b998-f88b073eab71",
      "name": "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": "트래픽 데이터를 시트에 추가",
      "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 파싱",
      "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": "도메인 SEO 데이터를 시트에 추가",
      "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": "시트 내 도메인 가져오기",
      "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 통계 가져오기",
      "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": "트래픽 가져오기",
      "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": "스티커 노트6",
      "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": "스티커 노트",
      "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": "스티커 노트7",
      "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
          }
        ]
      ]
    }
  }
}
자주 묻는 질문

이 워크플로우를 어떻게 사용하나요?

위의 JSON 구성 코드를 복사하여 n8n 인스턴스에서 새 워크플로우를 생성하고 "JSON에서 가져오기"를 선택한 후, 구성을 붙여넣고 필요에 따라 인증 설정을 수정하세요.

이 워크플로우는 어떤 시나리오에 적합한가요?

중급 - 시장 조사

유료인가요?

이 워크플로우는 완전히 무료이며 직접 가져와 사용할 수 있습니다. 다만, 워크플로우에서 사용하는 타사 서비스(예: OpenAI API)는 사용자 직접 비용을 지불해야 할 수 있습니다.

워크플로우 정보
난이도
중급
노드 수12
카테고리1
노드 유형6
난이도 설명

일정 경험을 가진 사용자를 위한 6-15개 노드의 중간 복잡도 워크플로우

외부 링크
n8n.io에서 보기

이 워크플로우 공유

카테고리

카테고리: 34