실시간 SEO 키워드 연구 도구
고급
이것은Market Research, Multimodal AI분야의자동화 워크플로우로, 37개의 노드를 포함합니다.주로 Set, Filter, SplitOut, HttpRequest, GoogleSheets 등의 노드를 사용하며. DataForSEO 및 Google 스프레드시트를 사용한 실시간 SEO 키워드 연구 자동화
사전 요구사항
- •대상 API의 인증 정보가 필요할 수 있음
- •Google Sheets API 인증 정보
워크플로우 미리보기
노드 연결 관계를 시각적으로 표시하며, 확대/축소 및 이동을 지원합니다
워크플로우 내보내기
다음 JSON 구성을 복사하여 n8n에 가져오면 이 워크플로우를 사용할 수 있습니다
{
"id": "sJuyUxOLyxGHNUei",
"meta": {
"instanceId": "ed6d846a2fce1f660ede2e7da800724cca01dc3d0685524a3c917881b7cfcfe9"
},
"name": "Live-time SEO Keyword Research Tool",
"tags": [],
"nodes": [
{
"id": "d42a41fc-2954-40da-aaf8-f3006c35f05c",
"name": "클릭 시 ‘Test workflow’",
"type": "n8n-nodes-base.manualTrigger",
"position": [
-1760,
240
],
"parameters": {},
"typeVersion": 1
},
{
"id": "ebdca890-b195-4a24-a373-52b4872126fd",
"name": "Add Related KWs",
"type": "n8n-nodes-base.googleSheets",
"position": [
-608,
-160
],
"parameters": {
"columns": {
"value": {
"CPC": "={{ $json.keyword_data.keyword_info.cpc }}",
"MSV": "={{ $json.keyword_data.keyword_info.search_volume }}",
"Type": "Related",
"Keyword": "={{ $json.keyword_data.keyword }}",
"Competition": "={{ $json.keyword_data.keyword_info.competition_level }}",
"Main Keyword": "={{ $('Get Main Keywords').item.json['Main Keyword'] }}",
"KW Difficulty": "={{ $json.keyword_data.keyword_properties.keyword_difficulty }}",
"Search Intent": "={{ $json.keyword_data.search_intent_info.main_intent }}"
},
"schema": [
{
"id": "Main Keyword",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Main Keyword",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Type",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Type",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Keyword",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Keyword",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "MSV",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "MSV",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Search Intent",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Search Intent",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "KW Difficulty",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "KW Difficulty",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Competition",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Competition",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "CPC",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "CPC",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "defineBelow",
"matchingColumns": [],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "append",
"sheetName": {
"__rl": true,
"mode": "list",
"value": 1366469942,
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1wZ8ZHh5AqR1yfK5lHLqGkvPu75liTKuehzuBnQKb_UM/edit#gid=1366469942",
"cachedResultName": "KW Related"
},
"documentId": {
"__rl": true,
"mode": "id",
"value": "={{ $('Set Sheet ID').item.json.id_sheet }}"
}
},
"credentials": {
"googleSheetsOAuth2Api": {
"id": "8zE9RGFuX38Olu4H",
"name": "Google Sheets account -hoanglt"
}
},
"typeVersion": 4.5
},
{
"id": "fbeb5071-5b36-45b6-9a91-7cc281f18335",
"name": "분할 출력 Related KW",
"type": "n8n-nodes-base.splitOut",
"position": [
-816,
-160
],
"parameters": {
"options": {},
"fieldToSplitOut": "tasks[0].result[0].items"
},
"typeVersion": 1
},
{
"id": "6a029bc6-1542-4d2b-966a-6e965cb34552",
"name": "Get Related KWs",
"type": "n8n-nodes-base.httpRequest",
"position": [
-1040,
-160
],
"parameters": {
"url": "https://api.dataforseo.com/v3/dataforseo_labs/google/related_keywords/live",
"method": "POST",
"options": {},
"jsonBody": "=[{\n \"keyword\": \"{{ $('Get Main Keywords').item.json['Main Keyword'] }}\",\n \"location_name\": \"{{ $('Get Main Keywords').item.json.Location }}\",\n \"language_name\": \"{{ $('Get Main Keywords').item.json.Language }}\",\n \"limit\": {{ $('Get Main Keywords').item.json.Limit }},\n \"include_serp_info\": true,\n \"include_seed_keyword\": true,\n \"depth\":2\n }]",
"sendBody": true,
"specifyBody": "json",
"authentication": "genericCredentialType",
"genericAuthType": "httpBasicAuth"
},
"credentials": {
"httpBasicAuth": {
"id": "PFQQALHynobpJlZ7",
"name": "dataforseo-hoanglt"
},
"httpHeaderAuth": {
"id": "58eNsmBVxa2hejdP",
"name": "Header Auth account - DataforSE"
}
},
"typeVersion": 4.2
},
{
"id": "c984898c-8358-4903-ad61-526c12a6748c",
"name": "Get SERPs",
"type": "n8n-nodes-base.httpRequest",
"position": [
-1040,
752
],
"parameters": {
"url": "https://api.dataforseo.com/v3/serp/google/organic/live/advanced",
"method": "POST",
"options": {},
"jsonBody": "=[\n {\n \"language_name\": \"{{ $json.Language }}\",\n \"location_name\": \"{{ $json.Location }}\",\n \"keyword\": \"{{ $json['Main Keyword'] }}\",\n \"depth\": 20,\n \"people_also_ask_click_depth\": 1\n }\n]",
"sendBody": true,
"specifyBody": "json",
"authentication": "genericCredentialType",
"genericAuthType": "httpBasicAuth"
},
"credentials": {
"httpBasicAuth": {
"id": "PFQQALHynobpJlZ7",
"name": "dataforseo-hoanglt"
},
"httpHeaderAuth": {
"id": "SIZyEwK4lEDa0PdZ",
"name": "Header Auth shotstack - toan.ngo"
}
},
"typeVersion": 4.2
},
{
"id": "37c8b946-b382-41a0-84cd-9d060b4d8d66",
"name": "Add SERPs",
"type": "n8n-nodes-base.googleSheets",
"position": [
-384,
640
],
"parameters": {
"columns": {
"value": {
"URL": "={{ $json.url }}",
"Type": "={{ $json.type }}",
"Title": "={{ $json.title }}",
"Domain": "={{ $json.domain }}",
"Description": "={{ $json.description }}",
"Main Keyword": "={{ $('Get Main Keywords').item.json['Main Keyword'] }}"
},
"schema": [
{
"id": "Main Keyword",
"type": "string",
"display": true,
"required": false,
"displayName": "Main Keyword",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Type",
"type": "string",
"display": true,
"required": false,
"displayName": "Type",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Domain",
"type": "string",
"display": true,
"required": false,
"displayName": "Domain",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "URL",
"type": "string",
"display": true,
"required": false,
"displayName": "URL",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Title",
"type": "string",
"display": true,
"required": false,
"displayName": "Title",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Description",
"type": "string",
"display": true,
"required": false,
"displayName": "Description",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "defineBelow",
"matchingColumns": [],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "append",
"sheetName": {
"__rl": true,
"mode": "list",
"value": 937131125,
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1wZ8ZHh5AqR1yfK5lHLqGkvPu75liTKuehzuBnQKb_UM/edit#gid=937131125",
"cachedResultName": "SERP"
},
"documentId": {
"__rl": true,
"mode": "id",
"value": "={{ $('Set Sheet ID').item.json.id_sheet }}"
}
},
"credentials": {
"googleSheetsOAuth2Api": {
"id": "8zE9RGFuX38Olu4H",
"name": "Google Sheets account -hoanglt"
}
},
"typeVersion": 4.5
},
{
"id": "9babbdbe-90ef-4201-9a41-414224ecfeaa",
"name": "메모",
"type": "n8n-nodes-base.stickyNote",
"position": [
-3344,
192
],
"parameters": {
"width": 660,
"height": 2060,
"content": "## [n8n Automation] Live-time SEO Keyword Research Tool - Try It Out!\n**This n8n template automates real-time SEO keyword research, delivering comprehensive keyword insights, autocomplete suggestions, subtopics, SERP analysis, and more, straight into your Google Sheet.**\n\nUse cases are many: This workflow is perfect for bloggers, SEO professionals, affiliate marketers, e-commerce teams, and content creators who need fresh, actionable keyword data for planning, optimization, and content expansion - without endless manual research.\n\n## How It Works\n### Phase 1: Set Google Sheet ID & Input Target Keywords\n- In n8n, enter the **Google Sheet ID** in the **Set Sheet ID** node. \n- In the connected Google Sheet, for the first tab **Main Keyword**, you manually add the main keywords that you want the tool to research and generate relevant keyword suggestions for. \n- Trigger the process by clicking **Test Workflow** or **Execute Workflow**.\n- The workflow automatically reads your main keywords from the **Main Keyword** tab in your linked Google Sheet, only those marked with the status **Ready** will be processed.\n\n### Phase 2: Automated Research & Data Collection\nFor your input main keyword (considering here you only set **Ready** for one main keyword in the connected Google Sheet), the workflow runs multiple automated queries in parallel:\n\n**1. Get Related Keywords:**\n\n- The workflow sends a **POST request** to the **DataForSEO API** endpoint to directly retrieve an array of related keywords.\n- Then, the array of related keywords is parsed out, preparing each keyword as a separate record for further processing.\n- It appends each extracted related keyword as a new row in the **Related KW** tab of your connected Google Sheet. The **Main Keyword** value from your input is included in **Column A** of the tab to maintain keyword context.\n- Additionally, the workflow appends the related keywords - along with the associated main keyword - to the **All Results** tab in your Google Sheet for consolidated tracking and future reference. This ensures you have both a dedicated list of related keywords and a master log of all research results in one place.\n\n\n**2. Get Keyword Suggestions:**\n\n- The workflow sends a **POST request** to the **DataForSEO API** endpoint to directly retrieve an array of keyword suggestions related to your main keyword.\n- This array of keyword suggestions is then parsed, splitting out each suggestion as an individual record for further processing.\n- Each extracted keyword suggestion is appended as a new row in the **KW Suggestion** tab of your connected Google Sheet. The original **Main Keyword** value from your input is included in Column A of the tab to maintain clear context.\n- Additionally, the workflow appends all keyword suggestions - along with the associated main keyword - to the **All Results** tab in your Google Sheet for consolidated tracking and future reference. This ensures you have both a dedicated list of keyword suggestions and a master log of all research results in one place.\n\n\n**3. Get Autocomplete Suggestions:**\n\n- The workflow sends a **POST request** to the **DataForSEO API** endpoint to retrieve Google autocomplete keyword suggestions for your main keyword.\n- The array of autocomplete keyword suggestions is parsed out as an individual record for processing.\n- Each extracted autocomplete keyword is appended as a new row in the **Autocomplete Suggestion** tab of your connected Google Sheet. The Main Keyword is included alongside each entry for proper tracking.\n- Additionally, the workflow appends all autocomplete keywords - along with the associated main keyword - to the **All Results** tab in your Google Sheet for consolidated tracking and future reference. This ensures you have both a dedicated list of autocomplete keywords and a master log of all research results in one place.\n\n\n**4. Get Content Ideas:**\n\n- The workflow sends a **POST request** to the DataForSEO API endpoint to retrieve content ideas and fresh topic suggestions based on your main keyword.\n- The array of content ideas is then parsed; each idea is extracted as a separate record for further use.\n- Every content idea is then appended as a new row in the **Content Idea** tab of your connected Google Sheet, with the Main Keyword included to provide context.\n- Additionally, the workflow appends all content ideas, along with their related main keyword, to the **All Results** tab in your sheet for consolidated tracking and easy access. This ensures you have both a dedicated list of content ideas for brainstorming and a central log of all keyword research outputs in one place.\n\n\n**5. Get SERPs:**\n\n- The workflow sends a **POST request** to the DataForSEO API endpoint, retrieving both the current Google SERP (Search Engine Results Page) data and People Also Ask (PAA) questions related to your main keyword.\n- Then, the data is split into two streams: one for standard SERP results and one for PAA questions.\n- For Standard SERPs:\n + The workflow filters the SERP data to keep only the most relevant results.\n + Each SERP entry is appended as a new row in the **SERP** tab of your connected Google Sheet, providing insights into top-ranking pages and their attributes.\n- For PAA (People Also Ask):\n + The PAA data is also filtered.\n + Each PAA question is split out and added as a new row in the **PAA** tab in your connected Google Sheet for focused tracking.\n + Additionally, all PAA questions are consolidated and appended, along with their related main keyword, to the **All Results** tab in your sheet for consolidated tracking and easy access. This ensures you have both a dedicated list of PAA questions for brainstorming and a central log of all research outputs in one place.\n\n\n\n"
},
"typeVersion": 1
},
{
"id": "d263f753-61cd-4554-82b3-40aae0c94906",
"name": "필터 SERPs",
"type": "n8n-nodes-base.filter",
"position": [
-608,
640
],
"parameters": {
"options": {},
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "fc1bef22-a996-4909-aac4-937b385bfbc0",
"operator": {
"name": "filter.operator.equals",
"type": "string",
"operation": "equals"
},
"leftValue": "={{ $json.type }}",
"rightValue": "organic"
}
]
}
},
"typeVersion": 2.2
},
{
"id": "8dbefb90-e4f8-49ae-87ca-51d67bb23ef7",
"name": "분할 출력 PAA",
"type": "n8n-nodes-base.splitOut",
"position": [
-384,
848
],
"parameters": {
"options": {},
"fieldToSplitOut": "items"
},
"typeVersion": 1
},
{
"id": "a3b8466f-6e34-4499-bff0-0c4c3d3a142d",
"name": "Save Related KWs to All Results",
"type": "n8n-nodes-base.googleSheets",
"position": [
-384,
-160
],
"parameters": {
"columns": {
"value": {
"CPC": "={{ $json.CPC }}",
"MSV": "={{ $json.MSV }}",
"Type": "={{ $json.Type }}",
"Keyword": "={{ $json.Keyword }}",
"Competition": "={{ $json.Competition }}",
"Main Keyword": "={{ $('Get Main Keywords').item.json['Main Keyword'] }}",
"KW Difficulty": "={{ $json['KW Difficulty'] }}",
"Search Intent": "={{ $json['Search Intent'] }}"
},
"schema": [
{
"id": "Main Keyword",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Main Keyword",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Type",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Type",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Keyword",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Keyword",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "MSV",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "MSV",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Search Intent",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Search Intent",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "KW Difficulty",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "KW Difficulty",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Competition",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Competition",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "CPC",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "CPC",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Answer",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Answer",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "defineBelow",
"matchingColumns": [],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "append",
"sheetName": {
"__rl": true,
"mode": "list",
"value": 2108933567,
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1wZ8ZHh5AqR1yfK5lHLqGkvPu75liTKuehzuBnQKb_UM/edit#gid=2108933567",
"cachedResultName": "Result All"
},
"documentId": {
"__rl": true,
"mode": "id",
"value": "={{ $('Set Sheet ID').item.json.id_sheet }}"
}
},
"credentials": {
"googleSheetsOAuth2Api": {
"id": "8zE9RGFuX38Olu4H",
"name": "Google Sheets account -hoanglt"
}
},
"typeVersion": 4.5
},
{
"id": "20239242-b7c0-4316-bc1c-40f3195574a7",
"name": "Get KW Suggestions",
"type": "n8n-nodes-base.httpRequest",
"position": [
-1040,
48
],
"parameters": {
"url": "https://api.dataforseo.com/v3/dataforseo_labs/google/keyword_suggestions/live",
"method": "POST",
"options": {},
"jsonBody": "=[{\n \"keyword\": \"{{ $json['Main Keyword'] }}\",\n \"location_name\": \"{{ $json.Location }}\",\n \"language_name\": \"{{ $json.Language }}\",\n \"include_serp_info\": true,\n \"include_seed_keyword\": false,\n \"limit\": {{ $json.Limit }},\n \"ignore_synonyms\": true\n }]\n",
"sendBody": true,
"specifyBody": "json",
"authentication": "genericCredentialType",
"genericAuthType": "httpBasicAuth"
},
"credentials": {
"httpBasicAuth": {
"id": "PFQQALHynobpJlZ7",
"name": "dataforseo-hoanglt"
},
"httpHeaderAuth": {
"id": "58eNsmBVxa2hejdP",
"name": "Header Auth account - DataforSE"
}
},
"typeVersion": 4.2
},
{
"id": "ee2884cb-3d0f-49a8-b34a-376ed19d46da",
"name": "분할 출력 KW Suggestions",
"type": "n8n-nodes-base.splitOut",
"position": [
-816,
48
],
"parameters": {
"options": {},
"fieldToSplitOut": "tasks[0].result[0].items"
},
"typeVersion": 1
},
{
"id": "b7dd1d5b-fde3-4a71-adee-ed15a9894dd4",
"name": "Add KW Suggestions",
"type": "n8n-nodes-base.googleSheets",
"position": [
-608,
48
],
"parameters": {
"columns": {
"value": {
"CPC": "={{ $json.keyword_info.cpc }}",
"MSV": "={{ $json.keyword_info.search_volume_trend.monthly }}",
"Type": "Suggestion",
"Keyword": "={{ $('Get Main Keywords').item.json['Main Keyword'] }}",
"Competition": "={{ $json.keyword_info.competition_level }}",
"Main Keyword": "={{ $('Get Main Keywords').item.json['Main Keyword'] }}",
"KW Difficulty": "={{ $json.keyword_properties.keyword_difficulty }}",
"Search Intent": "={{ $json.search_intent_info.main_intent }}"
},
"schema": [
{
"id": "Main Keyword",
"type": "string",
"display": true,
"required": false,
"displayName": "Main Keyword",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Type",
"type": "string",
"display": true,
"required": false,
"displayName": "Type",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Keyword",
"type": "string",
"display": true,
"required": false,
"displayName": "Keyword",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "MSV",
"type": "string",
"display": true,
"required": false,
"displayName": "MSV",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Search Intent",
"type": "string",
"display": true,
"required": false,
"displayName": "Search Intent",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "KW Difficulty",
"type": "string",
"display": true,
"required": false,
"displayName": "KW Difficulty",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Competition",
"type": "string",
"display": true,
"required": false,
"displayName": "Competition",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "CPC",
"type": "string",
"display": true,
"required": false,
"displayName": "CPC",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "defineBelow",
"matchingColumns": [],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "append",
"sheetName": {
"__rl": true,
"mode": "list",
"value": 1051280433,
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1wZ8ZHh5AqR1yfK5lHLqGkvPu75liTKuehzuBnQKb_UM/edit#gid=1051280433",
"cachedResultName": "KW Suggest"
},
"documentId": {
"__rl": true,
"mode": "id",
"value": "={{ $('Set Sheet ID').item.json.id_sheet }}"
}
},
"credentials": {
"googleSheetsOAuth2Api": {
"id": "8zE9RGFuX38Olu4H",
"name": "Google Sheets account -hoanglt"
}
},
"typeVersion": 4.5
},
{
"id": "2b81656f-f882-4bf2-bd3a-33555886c5ab",
"name": "Save KW Suggestions to All Results",
"type": "n8n-nodes-base.googleSheets",
"position": [
-384,
48
],
"parameters": {
"columns": {
"value": {
"CPC": "={{ $json.CPC }}",
"MSV": "={{ $json.MSV }}",
"Type": "={{ $json.Type }}",
"Keyword": "={{ $json.Keyword }}",
"Competition": "={{ $json.Competition }}",
"Main Keyword": "={{ $('Get Main Keywords').item.json['Main Keyword'] }}",
"KW Difficulty": "={{ $json['KW Difficulty'] }}",
"Search Intent": "={{ $json['Search Intent'] }}"
},
"schema": [
{
"id": "Main Keyword",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Main Keyword",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Type",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Type",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Keyword",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Keyword",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "MSV",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "MSV",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Search Intent",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Search Intent",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "KW Difficulty",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "KW Difficulty",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Competition",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Competition",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "CPC",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "CPC",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Answer",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Answer",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "defineBelow",
"matchingColumns": [],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "append",
"sheetName": {
"__rl": true,
"mode": "list",
"value": 2108933567,
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1wZ8ZHh5AqR1yfK5lHLqGkvPu75liTKuehzuBnQKb_UM/edit#gid=2108933567",
"cachedResultName": "Result All"
},
"documentId": {
"__rl": true,
"mode": "id",
"value": "={{ $('Set Sheet ID').item.json.id_sheet }}"
}
},
"credentials": {
"googleSheetsOAuth2Api": {
"id": "8zE9RGFuX38Olu4H",
"name": "Google Sheets account -hoanglt"
}
},
"typeVersion": 4.5
},
{
"id": "49af7591-cb7c-42e8-bf07-0111ce7948f8",
"name": "Get Autocomplete Suggestions",
"type": "n8n-nodes-base.httpRequest",
"position": [
-1040,
240
],
"parameters": {
"url": "https://api.dataforseo.com/v3/serp/google/autocomplete/live/advanced",
"method": "POST",
"options": {},
"jsonBody": "=[{\n \"keyword\": \"{{ $json['Main Keyword'] }}\",\n \"location_name\": \"{{ $json.Location }}\",\n \"language_name\": \"{{ $json.Language }}\",\n \"client\": \"gws-wiz-serp\"\n }]",
"sendBody": true,
"specifyBody": "json",
"authentication": "genericCredentialType",
"genericAuthType": "httpBasicAuth"
},
"credentials": {
"httpBasicAuth": {
"id": "PFQQALHynobpJlZ7",
"name": "dataforseo-hoanglt"
},
"httpHeaderAuth": {
"id": "58eNsmBVxa2hejdP",
"name": "Header Auth account - DataforSE"
}
},
"typeVersion": 4.2
},
{
"id": "a8d4b550-8817-40b1-a33b-9acfa1026778",
"name": "분할 출력 Autocomplete Suggestions",
"type": "n8n-nodes-base.splitOut",
"position": [
-816,
240
],
"parameters": {
"options": {},
"fieldToSplitOut": "tasks[0].result[0].items"
},
"typeVersion": 1
},
{
"id": "25f4b33a-b110-45a8-86a0-0a58099d6e6b",
"name": "Add Autocomplete Suggestions",
"type": "n8n-nodes-base.googleSheets",
"position": [
-608,
240
],
"parameters": {
"columns": {
"value": {
"Type": "Autocomplete",
"Autocomplete": "={{ $json.suggestion }}",
"Main Keyword": "={{ $('Get Main Keywords').item.json['Main Keyword'] }}"
},
"schema": [
{
"id": "Main Keyword",
"type": "string",
"display": true,
"required": false,
"displayName": "Main Keyword",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Type",
"type": "string",
"display": true,
"required": false,
"displayName": "Type",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Autocomplete",
"type": "string",
"display": true,
"required": false,
"displayName": "Autocomplete",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "MSV",
"type": "string",
"display": true,
"required": false,
"displayName": "MSV",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Search Intent",
"type": "string",
"display": true,
"required": false,
"displayName": "Search Intent",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "KW Difficulty",
"type": "string",
"display": true,
"required": false,
"displayName": "KW Difficulty",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Competition",
"type": "string",
"display": true,
"required": false,
"displayName": "Competition",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "CPC",
"type": "string",
"display": true,
"required": false,
"displayName": "CPC",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "PAA Answer",
"type": "string",
"display": true,
"required": false,
"displayName": "PAA Answer",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "defineBelow",
"matchingColumns": [],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "append",
"sheetName": {
"__rl": true,
"mode": "list",
"value": 381234465,
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1wZ8ZHh5AqR1yfK5lHLqGkvPu75liTKuehzuBnQKb_UM/edit#gid=381234465",
"cachedResultName": "Autocomplete"
},
"documentId": {
"__rl": true,
"mode": "id",
"value": "={{ $('Set Sheet ID').item.json.id_sheet }}"
}
},
"credentials": {
"googleSheetsOAuth2Api": {
"id": "8zE9RGFuX38Olu4H",
"name": "Google Sheets account -hoanglt"
}
},
"typeVersion": 4.5
},
{
"id": "3e4fa089-c969-4dfd-ab1f-e4d55767fff5",
"name": "Save Autocomplete Suggestions to All Results",
"type": "n8n-nodes-base.googleSheets",
"position": [
-384,
240
],
"parameters": {
"columns": {
"value": {
"Type": "={{ $json.Type }}",
"Keyword": "={{ $json.Autocomplete }}",
"Main Keyword": "={{ $('Get Main Keywords').item.json['Main Keyword'] }}"
},
"schema": [
{
"id": "Main Keyword",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Main Keyword",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Type",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Type",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Keyword",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Keyword",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "MSV",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "MSV",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Search Intent",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "Search Intent",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "KW Difficulty",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "KW Difficulty",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Competition",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "Competition",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "CPC",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "CPC",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Answer",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Answer",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "defineBelow",
"matchingColumns": [],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "append",
"sheetName": {
"__rl": true,
"mode": "list",
"value": 2108933567,
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1wZ8ZHh5AqR1yfK5lHLqGkvPu75liTKuehzuBnQKb_UM/edit#gid=2108933567",
"cachedResultName": "Result All"
},
"documentId": {
"__rl": true,
"mode": "id",
"value": "={{ $('Set Sheet ID').item.json.id_sheet }}"
}
},
"credentials": {
"googleSheetsOAuth2Api": {
"id": "8zE9RGFuX38Olu4H",
"name": "Google Sheets account -hoanglt"
}
},
"typeVersion": 4.5
},
{
"id": "8ba91c62-9158-4316-99b6-a07f5d5dc1e3",
"name": "Get Content Ideas",
"type": "n8n-nodes-base.httpRequest",
"position": [
-1040,
448
],
"parameters": {
"url": "https://api.dataforseo.com/v3/content_generation/generate_sub_topics/live",
"method": "POST",
"options": {},
"jsonBody": "=[{\n \"topic\": \"{{ $json['Main Keyword'] }}\"\n }]",
"sendBody": true,
"specifyBody": "json",
"authentication": "genericCredentialType",
"genericAuthType": "httpBasicAuth"
},
"credentials": {
"httpBasicAuth": {
"id": "PFQQALHynobpJlZ7",
"name": "dataforseo-hoanglt"
},
"httpHeaderAuth": {
"id": "58eNsmBVxa2hejdP",
"name": "Header Auth account - DataforSE"
}
},
"typeVersion": 4.2
},
{
"id": "d81b5aa9-87cd-4dac-a7d1-cbdc328c79d3",
"name": "분할 출력 Content Ideas",
"type": "n8n-nodes-base.splitOut",
"position": [
-816,
448
],
"parameters": {
"options": {},
"fieldToSplitOut": "tasks[0].result[0].sub_topics"
},
"typeVersion": 1
},
{
"id": "9c74b674-cbff-40fd-84c6-47e17e101618",
"name": "Add Content Ideas",
"type": "n8n-nodes-base.googleSheets",
"position": [
-608,
448
],
"parameters": {
"columns": {
"value": {
"Type": "=Subtopics",
"Subtopics": "={{ $json['tasks[0].result[0].sub_topics'] }}",
"Main Keyword": "={{ $('Get Main Keywords').item.json['Main Keyword'] }}"
},
"schema": [
{
"id": "Main Keyword",
"type": "string",
"display": true,
"required": false,
"displayName": "Main Keyword",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Type",
"type": "string",
"display": true,
"required": false,
"displayName": "Type",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Subtopics",
"type": "string",
"display": true,
"required": false,
"displayName": "Subtopics",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "MSV",
"type": "string",
"display": true,
"required": false,
"displayName": "MSV",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Search Intent",
"type": "string",
"display": true,
"required": false,
"displayName": "Search Intent",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "KW Difficulty",
"type": "string",
"display": true,
"required": false,
"displayName": "KW Difficulty",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Competition",
"type": "string",
"display": true,
"required": false,
"displayName": "Competition",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "CPC",
"type": "string",
"display": true,
"required": false,
"displayName": "CPC",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "PAA Answer",
"type": "string",
"display": true,
"required": false,
"displayName": "PAA Answer",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "defineBelow",
"matchingColumns": [],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "append",
"sheetName": {
"__rl": true,
"mode": "list",
"value": 1927743399,
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1uH1FF4txA3R0NIaKJJOBXSTHBqOZDgj4boxqSS_O3y0/edit#gid=1927743399",
"cachedResultName": "Subtopics"
},
"documentId": {
"__rl": true,
"mode": "id",
"value": "={{ $('Set Sheet ID').item.json.id_sheet }}"
}
},
"credentials": {
"googleSheetsOAuth2Api": {
"id": "8zE9RGFuX38Olu4H",
"name": "Google Sheets account -hoanglt"
}
},
"typeVersion": 4.5
},
{
"id": "1861a175-cf24-4d80-aa09-1bfdcb6c737e",
"name": "Add Content Ideas to All Results",
"type": "n8n-nodes-base.googleSheets",
"position": [
-384,
448
],
"parameters": {
"columns": {
"value": {
"CPC": "=",
"MSV": "=",
"Type": "={{ $json.Type }}",
"Answer": "=",
"Keyword": "={{ $json.Subtopics }}",
"Competition": "=",
"Main Keyword": "={{ $json['Main Keyword'] }}",
"KW Difficulty": "=",
"Search Intent": "="
},
"schema": [
{
"id": "Main Keyword",
"type": "string",
"display": true,
"required": false,
"displayName": "Main Keyword",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Type",
"type": "string",
"display": true,
"required": false,
"displayName": "Type",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Keyword",
"type": "string",
"display": true,
"required": false,
"displayName": "Keyword",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "MSV",
"type": "string",
"display": true,
"required": false,
"displayName": "MSV",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Search Intent",
"type": "string",
"display": true,
"required": false,
"displayName": "Search Intent",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "KW Difficulty",
"type": "string",
"display": true,
"required": false,
"displayName": "KW Difficulty",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Competition",
"type": "string",
"display": true,
"required": false,
"displayName": "Competition",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "CPC",
"type": "string",
"display": true,
"required": false,
"displayName": "CPC",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Answer",
"type": "string",
"display": true,
"required": false,
"displayName": "Answer",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "defineBelow",
"matchingColumns": []
},
"options": {},
"operation": "append",
"sheetName": {
"__rl": true,
"mode": "list",
"value": 2108933567,
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1wZ8ZHh5AqR1yfK5lHLqGkvPu75liTKuehzuBnQKb_UM/edit#gid=2108933567",
"cachedResultName": "Result All"
},
"documentId": {
"__rl": true,
"mode": "id",
"value": "={{ $('Set Sheet ID').item.json.id_sheet }}"
}
},
"credentials": {
"googleSheetsOAuth2Api": {
"id": "8zE9RGFuX38Olu4H",
"name": "Google Sheets account -hoanglt"
}
},
"typeVersion": 4.5
},
{
"id": "ca3e0fc2-64bd-4cb3-b519-cc4845d2403d",
"name": "메모1",
"type": "n8n-nodes-base.stickyNote",
"position": [
-4000,
192
],
"parameters": {
"color": 6,
"width": 620,
"height": 440,
"content": "## Result Types - Read It First!\n\n**Main Keyword**: Your original list of main keywords with status tracking.\n\n**All Results**: A master log of all relevant keyword and idea research outputs for easy review.\n\n**Related KW**: Lists of related keywords for each main keyword.\n\n**KW Suggestion**: Suggested keyword ideas for broader targeting.\n\n**Autocomplete Suggestion**: Google autocomplete keyword suggestions to capture real user queries.\n\n**Content Idea**: Keyword-related content ideas to build out your content clusters.\n\n**SERP**: top-ranking pages, including their URLs, page titles, and descriptions - perfect for quick competitor and content analysis.\n\n**PAA**: People Also Ask questions for intent research and content expansion.\n\n"
},
"typeVersion": 1
},
{
"id": "5856063e-723b-48d9-88e9-16f8818eb70e",
"name": "Get Main Keywords",
"type": "n8n-nodes-base.googleSheets",
"position": [
-1344,
240
],
"parameters": {
"options": {
"returnFirstMatch": true
},
"filtersUI": {
"values": [
{
"lookupValue": "Ready",
"lookupColumn": "Status"
}
]
},
"sheetName": {
"__rl": true,
"mode": "list",
"value": "gid=0",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1wZ8ZHh5AqR1yfK5lHLqGkvPu75liTKuehzuBnQKb_UM/edit#gid=0",
"cachedResultName": "Main Keyword"
},
"documentId": {
"__rl": true,
"mode": "id",
"value": "={{ $json.id_sheet }}"
}
},
"credentials": {
"googleSheetsOAuth2Api": {
"id": "pe6UD1A6MWIk2X91",
"name": "Google Sheets - toan.ngo"
}
},
"typeVersion": 4.5
},
{
"id": "c789d47d-ae7c-4daa-b49a-eed4b769dd6b",
"name": "필터 PAAs",
"type": "n8n-nodes-base.filter",
"position": [
-608,
848
],
"parameters": {
"options": {},
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "or",
"conditions": [
{
"id": "fc1bef22-a996-4909-aac4-937b385bfbc0",
"operator": {
"name": "filter.operator.equals",
"type": "string",
"operation": "equals"
},
"leftValue": "={{ $json.type }}",
"rightValue": "people_also_ask"
}
]
}
},
"typeVersion": 2.2
},
{
"id": "4fca497b-81b1-4eef-baad-16738057c087",
"name": "분할 출력 SERPs and PAAs",
"type": "n8n-nodes-base.splitOut",
"position": [
-816,
752
],
"parameters": {
"options": {},
"fieldToSplitOut": "tasks[0].result[0].items"
},
"typeVersion": 1
},
{
"id": "0625cdcd-05d1-4cad-85ad-351596142543",
"name": "Add PAAs",
"type": "n8n-nodes-base.googleSheets",
"position": [
-160,
848
],
"parameters": {
"columns": {
"value": {
"FAQ": "={{ $json.title }}",
"Type": "={{ $json.type }}",
"Main Keyword": "={{ $('Get Main Keywords').item.json['Main Keyword'] }}"
},
"schema": [
{
"id": "Main Keyword",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Main Keyword",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Type",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Type",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "FAQ",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "FAQ",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "MSV",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "MSV",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Search Intent",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Search Intent",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "KW Difficulty",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "KW Difficulty",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Competition",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Competition",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "CPC",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "CPC",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "PAA Answer",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "PAA Answer",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "defineBelow",
"matchingColumns": [],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "append",
"sheetName": {
"__rl": true,
"mode": "list",
"value": 1721013289,
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1wZ8ZHh5AqR1yfK5lHLqGkvPu75liTKuehzuBnQKb_UM/edit#gid=1721013289",
"cachedResultName": "FAQ"
},
"documentId": {
"__rl": true,
"mode": "id",
"value": "={{ $('Set Sheet ID').item.json.id_sheet }}"
}
},
"credentials": {
"googleSheetsOAuth2Api": {
"id": "8zE9RGFuX38Olu4H",
"name": "Google Sheets account -hoanglt"
}
},
"typeVersion": 4.5
},
{
"id": "ef182ebe-9cf7-4519-ab39-c59067911c8a",
"name": "Add PAAs to All Results",
"type": "n8n-nodes-base.googleSheets",
"position": [
64,
848
],
"parameters": {
"columns": {
"value": {
"Type": "={{ $json.Type }}",
"Keyword": "={{ $json.FAQ }}",
"Main Keyword": "={{ $json['Main Keyword'] }}"
},
"schema": [
{
"id": "Main Keyword",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Main Keyword",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Type",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Type",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Keyword",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Keyword",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "MSV",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "MSV",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Search Intent",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Search Intent",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "KW Difficulty",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "KW Difficulty",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Competition",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Competition",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "CPC",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "CPC",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Answer",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Answer",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "defineBelow",
"matchingColumns": [],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "append",
"sheetName": {
"__rl": true,
"mode": "list",
"value": 2108933567,
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1wZ8ZHh5AqR1yfK5lHLqGkvPu75liTKuehzuBnQKb_UM/edit#gid=2108933567",
"cachedResultName": "Result All"
},
"documentId": {
"__rl": true,
"mode": "id",
"value": "={{ $('Set Sheet ID').item.json.id_sheet }}"
}
},
"credentials": {
"googleSheetsOAuth2Api": {
"id": "8zE9RGFuX38Olu4H",
"name": "Google Sheets account -hoanglt"
}
},
"typeVersion": 4.5
},
{
"id": "b3ee7ec7-0f2e-423a-acd9-47d7273686b1",
"name": "메모2",
"type": "n8n-nodes-base.stickyNote",
"position": [
-2640,
192
],
"parameters": {
"width": 660,
"height": 1380,
"content": "## How To Set Up\n- Download the workflow package and import it into your n8n interface.\n- Duplicate the [**Keyword Research**](https://docs.google.com/spreadsheets/d/1QiaKcy5MwLwmBqD4FrBTd_m3GCK1Jjll9IsNi7q96QA/edit?gid=0#gid=0) Google Sheet template to your Google Sheets account.\n- Set up necessary credentials for tools access and usability:\n + For **Google Sheets** access, ensure each node is properly connected to the correct tab in your connected Google Sheet template: \n Node **Get Main Keywords** → connected to the **Main Keyword** tab\n Node **Add Related KWs** → connected to the **Related KW** tab\n Node **Save Related KWs to All Results** → connected to the **All Results** tab\n Node **Add KW Suggestions** → connected to the **KW Suggestion** tab\n Node **Save KW Suggestions to All Results** → connected to the **All Results** tab\n Node **Add Autocomplete Suggestions** → connected to the **Autocomplete Suggestion** tab\n Node **Save Autocomplete Suggestions to All Results** → connected to the **All Results** tab\n Node **Add Content Ideas** → connected to the **Content Idea** tab\n Node **Save Content Ideas to All Results** → connected to the **All Results** tab\n Node **Add SERPs** → connected to the **SERP** tab\n Node **Add PAAs** → connected to the **PAA** tab\n Node **Save PAAs to All Results** → connected to the **All Results** tab\n + For DataForSEO access, set up API credentials (Basic Auth) along with correct **POST URL** for each query in the following node:\nNode **Get Related KWs**\nNode **Get KW Suggestions**\nNode **Get Autocomplete Suggestions**\nNode **Get Content Ideas**\nNode **Get SERPs**\n- Enter your **Google Sheet ID** in the **Set Sheet ID** node to link the workflow to your connected Google Sheet.\n- Add your target keywords to **Column B** in the **Main Keyword** tab in the connected Google Sheet and set their status to **Ready**\n- Run the workflow by clicking **Test Workflow** or **Execute Workflow** in n8n.\n- Review the results across all output tabs in your connected Google Sheet.\n\n## Requirements\n- **n8n** instance (self-hosted or cloud).\n- Basic setup in **Google Cloud Console** (OAuth or API Key method enabled) with enabled access to **Google Sheets**.\n- **DataForSEO** API credentials.\n\n## How To Customize\n- **Add Extra Research Steps**: Expand the workflow by integrating additional research queries related to the main keywords - such as backlink analysis, competitor monitoring, or search trend tracking - to gather even more valuable insights alongside your keyword data.\n- **Automate Scheduling & Notifications**: Set up an automatic schedule in n8n so the workflow runs at your preferred intervals. Connect notification tools like Telegram, Slack, or a chatbox to receive alerts whenever the process finishes, keeping you instantly updated without manual checks.\n- **Personalize Data Mapping**: Tailor how the research results are saved to your Google Sheet by customizing column mapping and naming conventions. This lets you organize your data exactly how you want for easier analysis and reporting.\n\n## Need Help?\nIf you’d like this workflow customized to fit your tools and platforms availability, or if you’re looking to build a tailored AI Agent for your own business - please feel free to reach out to [**Agent Circle**](https://www.agentcircle.ai/). We’re always here to support and help you to bring automation ideas to life.\n\nJoin our community on different platforms for support, inspiration and tips from others.\nWebsite: https://www.agentcircle.ai/\nEtsy: https://www.etsy.com/shop/AgentCircle\nGumroad: http://agentcircle.gumroad.com/\nDiscord Global: https://discord.gg/d8SkCzKwnP\nFB Page Global: https://www.facebook.com/agentcircle/\nFB Group Global: https://www.facebook.com/groups/aiagentcircle/\nX: https://x.com/agent_circle\nYouTube: https://www.youtube.com/@agentcircle\nLinkedIn: https://www.linkedin.com/company/agentcircle"
},
"typeVersion": 1
},
{
"id": "67b2d673-080d-444c-a854-db8cba84384b",
"name": "메모3",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1840,
-48
],
"parameters": {
"color": 4,
"width": 720,
"height": 640,
"content": "## 1. Set Google Sheet ID & Input Target Keywords\n\n- In n8n, enter the **Google Sheet ID** in the **Set Sheet ID** node. \n- In the connected Google Sheet, for the first tab **Main Keyword**, you manually add the main keywords that you want the tool to research and generate relevant keyword suggestions for. \n- Trigger the process by clicking **Test Workflow** or **Execute Workflow**.\n- The workflow automatically reads your main keywords from the **Main Keyword** tab in your linked Google Sheet, only those marked with the status **Ready** will be processed.\n"
},
"typeVersion": 1
},
{
"id": "3e6bb7a8-c639-44c0-8ebf-45823f95c067",
"name": "설정 Sheet ID",
"type": "n8n-nodes-base.set",
"position": [
-1536,
240
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "1006d85e-8365-438e-82a9-8d77b510a851",
"name": "id_sheet",
"type": "string",
"value": "1QiaKcy5MwLwmBqD4FrBTd_m3GCK1Jjll9IsNi7q96QA"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "b9a45021-967b-4b04-85a0-2484c88feea7",
"name": "메모4",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1088,
-336
],
"parameters": {
"color": 4,
"width": 2160,
"height": 1420,
"content": "## 2. Automated Research & Data Collection"
},
"typeVersion": 1
},
{
"id": "41bdfdbb-edee-4bc3-abab-8e32e2dc9679",
"name": "메모5",
"type": "n8n-nodes-base.stickyNote",
"position": [
-160,
-224
],
"parameters": {
"color": 7,
"width": 1140,
"height": 200,
"content": "### 2.1. Get Related Keywords:\n- The workflow sends a **POST request** to the **DataForSEO API** endpoint to directly retrieve an array of related keywords.\n- Then, the array of related keywords is parsed out, preparing each keyword as a separate record for further processing.\n- It appends each extracted related keyword as a new row in the **Related KW** tab of your connected Google Sheet. The **Main Keyword** value from your input is included in **Column A** of the tab to maintain keyword context.\n- Additionally, the workflow appends the related keywords - along with the associated main keyword - to the **All Results** tab in your Google Sheet for consolidated tracking and future reference. This ensures you have both a dedicated list of related keywords and a master log of all research results in one place."
},
"typeVersion": 1
},
{
"id": "2a0efeaa-9c34-4521-a1d7-034b849cf953",
"name": "메모6",
"type": "n8n-nodes-base.stickyNote",
"position": [
-160,
0
],
"parameters": {
"color": 7,
"width": 1140,
"height": 200,
"content": "### 2.2. Get Keyword Suggestions\n- The workflow sends a **POST request** to the **DataForSEO API** endpoint to directly retrieve an array of keyword suggestions related to your main keyword.\n- This array of keyword suggestions is then parsed, splitting out each suggestion as an individual record for further processing.\n- Each extracted keyword suggestion is appended as a new row in the **KW Suggestion** tab of your connected Google Sheet. The original **Main Keyword** value from your input is included in Column A of the tab to maintain clear context.\n- Additionally, the workflow appends all keyword suggestions - along with the associated main keyword - to the **All Results** tab in your Google Sheet for consolidated tracking and future reference. This ensures you have both a dedicated list of keyword suggestions and a master log of all research results in one place."
},
"typeVersion": 1
},
{
"id": "040e0049-bfeb-414d-a20c-e4d003d2cae4",
"name": "메모7",
"type": "n8n-nodes-base.stickyNote",
"position": [
-160,
224
],
"parameters": {
"color": 7,
"width": 1140,
"height": 200,
"content": "### 2.3. Get Autocomplete Suggestions:\n- The workflow sends a **POST request** to the **DataForSEO API** endpoint to retrieve Google autocomplete keyword suggestions for your main keyword.\n- The array of autocomplete keyword suggestions is parsed out as an individual record for processing.\n- Each extracted autocomplete keyword is appended as a new row in the **Autocomplete Suggestion** tab of your connected Google Sheet. The Main Keyword is included alongside each entry for proper tracking.\n- Additionally, the workflow appends all autocomplete keywords - along with the associated main keyword - to the **All Results** tab in your Google Sheet for consolidated tracking and future reference. This ensures you have both a dedicated list of autocomplete keywords and a master log of all research results in one place."
},
"typeVersion": 1
},
{
"id": "b4cca1a9-38c5-4926-bbc4-78f1b909d8d3",
"name": "메모8",
"type": "n8n-nodes-base.stickyNote",
"position": [
-160,
448
],
"parameters": {
"color": 7,
"width": 1140,
"content": "### 2.4. Get Content Ideas:\n- The workflow sends a **POST request** to the DataForSEO API endpoint to retrieve content ideas and fresh topic suggestions based on your main keyword.\n- The array of content ideas is then parsed; each idea is extracted as a separate record for further use.\n- Every content idea is then appended as a new row in the **Content Idea** tab of your connected Google Sheet, with the Main Keyword included to provide context.\n- Additionally, the workflow appends all content ideas, along with their related main keyword, to the **All Results** tab in your sheet for consolidated tracking and easy access. This ensures you have both a dedicated list of content ideas for brainstorming and a central log of all keyword research outputs in one place."
},
"typeVersion": 1
},
{
"id": "86a01202-4a2e-4b6c-9295-98691daf4c3c",
"name": "메모9",
"type": "n8n-nodes-base.stickyNote",
"position": [
288,
640
],
"parameters": {
"color": 7,
"width": 700,
"height": 380,
"content": "### 2.5. Get SERPs & PAAs:\n- The workflow sends a **POST request** to the DataForSEO API endpoint, retrieving both the current Google SERP (Search Engine Results Page) data and People Also Ask (PAA) questions related to your main keyword.\n- Then, the data is split into two streams: one for standard SERP results and one for PAA questions.\n- For Standard SERPs:\n + The workflow filters the SERP data to keep only the most relevant results.\n + Each SERP entry is appended as a new row in the **SERP** tab of your connected Google Sheet, providing insights into top-ranking pages and their attributes.\n- For PAA (People Also Ask):\n + The PAA data is also filtered.\n + Each PAA question is split out and added as a new row in the **PAA** tab in your connected Google Sheet for focused tracking.\n + Additionally, all PAA questions are consolidated and appended, along with their related main keyword, to the **All Results** tab in your sheet for consolidated tracking and easy access. This ensures you have both a dedicated list of PAA questions for brainstorming and a central log of all research outputs in one place."
},
"typeVersion": 1
}
],
"active": false,
"pinData": {},
"settings": {
"executionOrder": "v1"
},
"versionId": "48b5bf54-370e-4657-b4b3-e2950d9e5315",
"connections": {
"0625cdcd-05d1-4cad-85ad-351596142543": {
"main": [
[
{
"node": "ef182ebe-9cf7-4519-ab39-c59067911c8a",
"type": "main",
"index": 0
}
]
]
},
"c984898c-8358-4903-ad61-526c12a6748c": {
"main": [
[
{
"node": "Split Out SERPs and PAAs",
"type": "main",
"index": 0
}
]
]
},
"Filter PAAs": {
"main": [
[
{
"node": "Split Out PAA",
"type": "main",
"index": 0
}
]
]
},
"Filter SERPs": {
"main": [
[
{
"node": "37c8b946-b382-41a0-84cd-9d060b4d8d66",
"type": "main",
"index": 0
}
]
]
},
"Set Sheet ID": {
"main": [
[
{
"node": "5856063e-723b-48d9-88e9-16f8818eb70e",
"type": "main",
"index": 0
}
]
]
},
"Split Out PAA": {
"main": [
[
{
"node": "0625cdcd-05d1-4cad-85ad-351596142543",
"type": "main",
"index": 0
}
]
]
},
"ebdca890-b195-4a24-a373-52b4872126fd": {
"main": [
[
{
"node": "a3b8466f-6e34-4499-bff0-0c4c3d3a142d",
"type": "main",
"index": 0
}
]
]
},
"6a029bc6-1542-4d2b-966a-6e965cb34552": {
"main": [
[
{
"node": "Split Out Related KW",
"type": "main",
"index": 0
}
]
]
},
"9c74b674-cbff-40fd-84c6-47e17e101618": {
"main": [
[
{
"node": "1861a175-cf24-4d80-aa09-1bfdcb6c737e",
"type": "main",
"index": 0
}
]
]
},
"8ba91c62-9158-4316-99b6-a07f5d5dc1e3": {
"main": [
[
{
"node": "Split Out Content Ideas",
"type": "main",
"index": 0
}
]
]
},
"5856063e-723b-48d9-88e9-16f8818eb70e": {
"main": [
[
{
"node": "6a029bc6-1542-4d2b-966a-6e965cb34552",
"type": "main",
"index": 0
},
{
"node": "20239242-b7c0-4316-bc1c-40f3195574a7",
"type": "main",
"index": 0
},
{
"node": "49af7591-cb7c-42e8-bf07-0111ce7948f8",
"type": "main",
"index": 0
},
{
"node": "8ba91c62-9158-4316-99b6-a07f5d5dc1e3",
"type": "main",
"index": 0
},
{
"node": "c984898c-8358-4903-ad61-526c12a6748c",
"type": "main",
"index": 0
}
]
]
},
"b7dd1d5b-fde3-4a71-adee-ed15a9894dd4": {
"main": [
[
{
"node": "2b81656f-f882-4bf2-bd3a-33555886c5ab",
"type": "main",
"index": 0
}
]
]
},
"20239242-b7c0-4316-bc1c-40f3195574a7": {
"main": [
[
{
"node": "Split Out KW Suggestions",
"type": "main",
"index": 0
}
]
]
},
"Split Out Related KW": {
"main": [
[
{
"node": "ebdca890-b195-4a24-a373-52b4872126fd",
"type": "main",
"index": 0
}
]
]
},
"Split Out Content Ideas": {
"main": [
[
{
"node": "9c74b674-cbff-40fd-84c6-47e17e101618",
"type": "main",
"index": 0
}
]
]
},
"Split Out KW Suggestions": {
"main": [
[
{
"node": "b7dd1d5b-fde3-4a71-adee-ed15a9894dd4",
"type": "main",
"index": 0
}
]
]
},
"Split Out SERPs and PAAs": {
"main": [
[
{
"node": "Filter SERPs",
"type": "main",
"index": 0
},
{
"node": "Filter PAAs",
"type": "main",
"index": 0
}
]
]
},
"25f4b33a-b110-45a8-86a0-0a58099d6e6b": {
"main": [
[
{
"node": "3e4fa089-c969-4dfd-ab1f-e4d55767fff5",
"type": "main",
"index": 0
}
]
]
},
"49af7591-cb7c-42e8-bf07-0111ce7948f8": {
"main": [
[
{
"node": "Split Out Autocomplete Suggestions",
"type": "main",
"index": 0
}
]
]
},
"When clicking ‘Test workflow’": {
"main": [
[
{
"node": "Set Sheet ID",
"type": "main",
"index": 0
}
]
]
},
"Split Out Autocomplete Suggestions": {
"main": [
[
{
"node": "25f4b33a-b110-45a8-86a0-0a58099d6e6b",
"type": "main",
"index": 0
}
]
]
}
}
}자주 묻는 질문
이 워크플로우를 어떻게 사용하나요?
위의 JSON 구성 코드를 복사하여 n8n 인스턴스에서 새 워크플로우를 생성하고 "JSON에서 가져오기"를 선택한 후, 구성을 붙여넣고 필요에 따라 인증 설정을 수정하세요.
이 워크플로우는 어떤 시나리오에 적합한가요?
고급 - 시장 조사, 멀티모달 AI
유료인가요?
이 워크플로우는 완전히 무료이며 직접 가져와 사용할 수 있습니다. 다만, 워크플로우에서 사용하는 타사 서비스(예: OpenAI API)는 사용자 직접 비용을 지불해야 할 수 있습니다.
관련 워크플로우 추천
구글 맵 - 키워드로 이메일 크롤링
Google 맵 검색 결과에서 비즈니스 이메일을 Google 스프레드시트에 추출
Set
Code
Filter
+
Set
Code
Filter
20 노드Agent Circle
리드 생성
YouTube 시청자 댓글 분석기
Gemini AI를 사용하여 YouTube 댓글 감성 분석 및 Google Sheets에 저장
If
Split Out
Http Request
+
If
Split Out
Http Request
17 노드Agent Circle
시장 조사
ApiFlash, Gemini Vision 및 Sheets에서 Telegram으로의 자동 기술 뉴스 리포트
통해ApiFlash、Gemini Vision및Sheets로Telegram의자동화科技新闻보고서
Set
Code
Limit
+
Set
Code
Limit
18 노드Cong Nguyen
시장 조사
얼굴 없는 비디오 생성기 - 아이디어를 자동으로 비디오로 변환
Gemini, ElevenLabs, Leonardo AI, 그리고 Shotstack을 사용하여 얼굴 없는 비디오를 생성하세요
Set
Wait
Merge
+
Set
Wait
Merge
37 노드Agent Circle
콘텐츠 제작
YouTube - 비디오 댓글 가져오기
YouTube 비디오 댓글 추출하고 Google Sheets에 저장
If
Split Out
Http Request
+
If
Split Out
Http Request
16 노드Agent Circle
시장 조사
Instagram 시각 분석: Apify 크롤링, OpenAI GPT-5와 Google 스프레드시트 통합
Apify를 통해 Instagram을 크롤링하고 OpenAI GPT-5를 분석하여 Google 스프레드시트에 Instagram 시각적 분석
Filter
Split Out
Http Request
+
Filter
Split Out
Http Request
13 노드Robert Breen
시장 조사
워크플로우 정보
난이도
고급
노드 수37
카테고리2
노드 유형7
저자
Agent Circle
@agentcircleAgent Circle - A growing marketplace of AI agents, workflows, and toolkits — built to help teams automate smarter and scale faster
외부 링크
n8n.io에서 보기 →
이 워크플로우 공유