About this workflow
SEO Keyword Generation Workflow with Google Ads API
This n8n workflow template, titled "Generate New Keywords with Search Volumes", is a powerful automation tool designed for digital marketers, SEO specialists, and growth teams who want to discover high-potential keywords enriched with critical metrics such as average monthly search volume, competition level, and bid estimates—directly from the Google Ads API. Built around best practices in SEO research and campaign planning, this workflow streamlines keyword ideation by leveraging Google's official advertising infrastructure.
What the Workflow Does
The workflow takes a list of seed keywords (e.g., "workflow automation software") and uses them to generate hundreds of related keyword suggestions via Google’s Keyword Ideas API (generateKeywordIdeas). It retrieves rich data including search volumes, competition levels, and cost-per-click (CPC) ranges, then processes and stores the results—making it ideal for building SEO strategies, optimizing content calendars, or fueling paid ad campaigns.
All generated keywords are extracted, reformatted into clean fields, and automatically upserted into a Google Sheet for easy access and reporting.
Key Features and Capabilities
- ✅ Automated Keyword Research: Leverages Google Ads’ official API to fetch real-time keyword ideas based on input seeds.
- ✅ Search Volume & Competition Data: Extracts
avgMonthlySearches,competition,competitionIndex, and CPC estimates (lowTopOfPageBidMicros,highTopOfPageBidMicros). - ✅ Data Transformation: Converts micro-value bids (in cents) into readable dollar amounts using JavaScript expressions.
- ✅ Structured Output: Maps complex JSON responses into flat, usable fields like
keyword,avgMonthlySearches, etc. - ✅ Google Sheets Integration: Automatically appends processed keyword data to a predefined Google Sheet for long-term tracking.
- ✅ Scalable Input Handling: Accepts multiple seed keywords at once and processes each through batching logic.
- ✅ Well-Documented Setup: Includes detailed sticky notes guiding users through configuration, authentication, and troubleshooting.
Main Nodes and Their Purposes
| Node Name | Type | Purpose |
|---|---|---|
| Trigger | executeWorkflowTrigger |
Starts the workflow manually; serves as entry point for test runs or integration triggers (can be replaced with webhook). |
| Set Keywords | set |
Extracts the array of input keywords (sent via trigger) into a structured format accessible by downstream nodes. |
| Generate new keywords | httpRequest |
Calls the Google Ads generateKeywordIdeas endpoint with proper headers and payload, authenticating via OAuth2. Sends seed keywords and location/language targeting parameters. |
| Split Out | splitOut |
Splits the array of returned keyword ideas (results) so that each suggestion is processed individually. |
| Edit Fields | set |
Reformats raw API response into user-friendly fields: converts bid micros → dollars, extracts text, competition, and search volume. |
| Upsert | googleSheets |
Appends cleaned keyword data to a specific tab in a Google Sheet named “SEO DOCTOR: Keyword Tool”. Uses auto-mapping to align fields. |
| Sticky Notes (x5) | stickyNote |
Provide documentation within the canvas: usage instructions, setup steps, troubleshooting tips, and context about data flow. |
Use Cases and Benefits
Ideal For:
- 📈 SEO Strategists: Discover untapped long-tail keywords with actual search demand.
- 💬 Content Marketers: Build topic clusters and blog outlines backed by data.
- 🔍 PPC Managers: Evaluate keyword viability before launching Google Ads campaigns.
- 🛠️ Automation Consultants: Reuse this template across clients for scalable keyword analysis.
Business Benefits:
- ⏱️ Saves Time: Eliminates manual scraping or use of third-party tools with limited accuracy.
- 💡 Improves Accuracy: Uses Google’s own data source instead of estimations.
- 🧩 Flexible & Extensible: Can be integrated into larger workflows (e.g., CMS publishing, rank tracking, competitor analysis).
- 🗃️ Centralized Reporting: All output lands in Google Sheets—easy to share, visualize, and collaborate on.
Step-by-Step Workflow Logic
-
Start the Workflow
- The Trigger node initiates execution. In the example, it has pinned test data containing 20 seed keywords like
"n8n workflow automation"and"hr process automation".
- The Trigger node initiates execution. In the example, it has pinned test data containing 20 seed keywords like
-
Extract Seed Keywords
- The Set Keywords node maps the incoming
.query.Keywordarray into a field calledKeyword, making it available for the HTTP request.
- The Set Keywords node maps the incoming
-
Call Google Ads API
- The Generate new keywords node sends a POST request to:
https://googleads.googleapis.com/v18/customers/{customer-id}:generateKeywordIdeas - Request body includes:
- Target country:
geoTargetConstants/2840(United States) - Language:
languageConstants/1000(English) - Network:
GOOGLE_SEARCH - Seed keywords from the previous step
- Target country:
- Authentication uses stored OAuth2 credentials and required headers:
developer-tokenlogin-customer-idcontent-type: application/json
- The Generate new keywords node sends a POST request to:
-
Process Results Array
- The API returns a list of keyword ideas under
results. The Split Out node breaks this array into individual items so each keyword can be handled separately.
- The API returns a list of keyword ideas under
-
Clean and Format Data
- The Edit Fields node creates simplified output fields:
keyword: The suggested keyword textavgMonthlySearches: Average number of monthly searchescompetition: High/Medium/Low competition indicatorcompetitionIndex: Numeric index of competitivenesslowTopOfPageBidMicros/highTopOfPageBidMicros: Converted from micros to USD (divided by 1,000,000)
- The Edit Fields node creates simplified output fields:
-
Store Results in Google Sheets
- The Upsert node writes each formatted keyword record into a Google Sheet titled "SEO DOCTOR: Keyword Tool", specifically the sheet with GID
1475484115labeled "Keyword". - Field mapping is automatic based on column names.
- The Upsert node writes each formatted keyword record into a Google Sheet titled "SEO DOCTOR: Keyword Tool", specifically the sheet with GID
-
Review and Iterate
- Users can review results directly in Google Sheets.
- Sticky notes guide reconfiguration for different geos, languages, customer IDs, or alternative triggers (like webhooks).
💡 Pro Tip: Replace the default trigger with a Webhook node to allow external systems (like CRM, forms, or dashboards) to send keyword requests dynamically.
This workflow exemplifies how n8n enables no-code/low-code access to enterprise-grade APIs—turning complex SEO operations into repeatable, automated pipelines. With minimal setup, teams can generate actionable insights faster than ever before.
How to use: download the JSON, then in n8n choose “Import from File”.