RapidAPI to Google Sheets, keyword research logged
Keyword research falls apart in the unglamorous places. Copying suggestions into a sheet, hunting down difficulty scores, pasting SERP results, then realizing you forgot the country filter. Again.
SEO managers feel it when reporting is due. A content strategist feels it when briefs have to be consistent across writers. And an agency owner feels it when “quick keyword research” quietly eats the morning. This RapidAPI Sheets automation puts keyword ideas, difficulty, and SERP notes into Google Sheets automatically so you can work from one trusted place.
You’ll see exactly what the workflow does, what results you can expect, and how to get it running without turning your process into a science project.
How This Automation Works
The full n8n workflow, from trigger to final output:
n8n Workflow Template: RapidAPI to Google Sheets, keyword research logged
flowchart LR
subgraph sg0["On form submission Flow"]
direction LR
n0["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/form.svg' width='40' height='40' /></div><br/>On form submission"]
n1@{ icon: "mdi:swap-vertical", form: "rounded", label: "Global Storage", pos: "b", h: 48 }
n2["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/code.svg' width='40' height='40' /></div><br/>Re-Format"]
n3["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/code.svg' width='40' height='40' /></div><br/>Re-Format 2"]
n4["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/code.svg' width='40' height='40' /></div><br/>Re -Format 5"]
n5@{ icon: "mdi:database", form: "rounded", label: "Keyword Insights ", pos: "b", h: 48 }
n6["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/httprequest.dark.svg' width='40' height='40' /></div><br/>Keyword Insights Request "]
n7["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/httprequest.dark.svg' width='40' height='40' /></div><br/>KeyWord Difficulty Request"]
n8@{ icon: "mdi:database", form: "rounded", label: "KeyWord Difficulty", pos: "b", h: 48 }
n9@{ icon: "mdi:database", form: "rounded", label: "SERP Result", pos: "b", h: 48 }
n2 --> n5
n3 --> n8
n4 --> n9
n1 --> n6
n1 --> n7
n0 --> n1
n6 --> n2
n7 --> n3
n7 --> n4
end
%% Styling
classDef trigger fill:#e8f5e9,stroke:#388e3c,stroke-width:2px
classDef ai fill:#e3f2fd,stroke:#1976d2,stroke-width:2px
classDef aiModel fill:#e8eaf6,stroke:#3f51b5,stroke-width:2px
classDef decision fill:#fff8e1,stroke:#f9a825,stroke-width:2px
classDef database fill:#fce4ec,stroke:#c2185b,stroke-width:2px
classDef api fill:#fff3e0,stroke:#e65100,stroke-width:2px
classDef code fill:#f3e5f5,stroke:#7b1fa2,stroke-width:2px
classDef disabled stroke-dasharray: 5 5,opacity: 0.5
class n0 trigger
class n5,n8,n9 database
class n6,n7 api
class n2,n3,n4 code
classDef customIcon fill:none,stroke:none
class n0,n2,n3,n4,n6,n7 customIcon
The Problem: Keyword Research Data Becomes Untrustworthy Fast
Manual keyword research isn’t just “a bit tedious.” It creates messy, inconsistent inputs, which means messy outputs. One person logs broad match ideas in a doc, another dumps difficulty scores into a spreadsheet, and SERP notes live in screenshots and Slack threads. Then someone asks, “Are these the latest numbers for the right country?” and you can’t answer with confidence. The real cost is context switching: you bounce between tools, repeat the same API calls, and still end up with gaps that make briefs harder to trust.
The friction compounds. Here’s where it breaks down in real teams.
- Keyword suggestions get copied over inconsistently, so two briefs for the same topic don’t match.
- Difficulty scores are easy to skip when you’re rushing, which leads to unrealistic content priorities.
- SERP notes are rarely captured in a structured way, so competitive context disappears by the time you write.
- When you need to redo the research for a new country, you basically start over.
The Solution: RapidAPI Keyword + SERP Data Logged to Sheets
This n8n workflow turns keyword research into a repeatable intake-and-log system. It starts with a simple form where you enter a target keyword and the country you care about. n8n stores those values once, then uses them to run two API requests through RapidAPI’s SEO On-Page API. The first request pulls broad match keyword ideas, then the workflow reformats the response so only the useful fields get appended into a dedicated “Keyword Insights” tab in Google Sheets. The second request pulls keyword difficulty and SERP data, parses the difficulty index into its own sheet, and appends structured SERP results into a “Serp Analytics” tab so you can review what’s ranking without digging through raw JSON.
It begins at form submission. Two API calls run in parallel off the same input, then three clean outputs land in Google Sheets: suggestions, difficulty, and SERP analytics. After that, you’re working from a sheet you can filter, share, and report from.
What You Get: Automation vs. Results
| What This Workflow Automates | Results You’ll Get |
|---|---|
|
|
Example: What This Looks Like
Say you research 20 keywords for a new content cluster. Manually, it’s easy to spend about 5 minutes per keyword grabbing suggestions, another 5 minutes checking difficulty, and maybe 5 minutes copying SERP notes into a usable format. That’s roughly 5 hours, and it still isn’t clean. With this workflow: you submit the keyword and country in under a minute, wait a minute or two for the API calls, and the data lands in three organized tabs. You still review and decide, but the copying part disappears.
What You’ll Need
- n8n instance (try n8n Cloud free)
- Self-hosting option if you prefer (Hostinger works well)
- Google Sheets for logging keyword insights and SERP data.
- RapidAPI (SEO On-Page API) to fetch keyword and SERP metrics.
- RapidAPI key (get it from your RapidAPI dashboard).
Skill level: Beginner. You’ll connect accounts, paste an API key, and confirm the target spreadsheet tabs.
Don’t want to set this up yourself? Talk to an automation expert (free 15-minute consultation).
How It Works
Form submission triggers the run. You enter a keyword and pick a country once, then n8n captures both values so they can be reused across the workflow.
Those inputs are stored and reused. A “set values” step holds the keyword and country, which prevents mismatched parameters and makes the run predictable every time.
Two RapidAPI requests pull the research data. One call returns broad match keyword suggestions, and the other returns the difficulty index plus SERP result data for the same keyword and location.
Google Sheets is updated in three places. Suggestions go to a “Keyword Insights” tab, the difficulty score goes to a “KeyWord Difficulty” sheet, and the SERP rows land in “Serp Analytics” so you can scan competitors quickly.
You can easily modify the sheet names and captured fields to match your reporting format based on your needs. See the full implementation guide below for customization options.
Step-by-Step Implementation Guide
Step 1: Configure the Form Trigger
Set up the intake form that starts the workflow and collects the keyword inputs.
- Add and open Form Intake Trigger.
- Set Form Title to
OnPage SEO ( Keyword). - Set Form Description to
OnPage SEO ( Keyword). - Under Form Fields, add two required fields labeled keyword and country.
Step 2: Map and Store Input Values
Normalize the form data so downstream API calls use consistent field names.
- Open Store Input Values.
- Add a string assignment for keyword with value
={{ $json.keyword }}. - Add a string assignment for country with value
={{ $json.country }}. - Confirm the execution flow: Form Intake Trigger → Store Input Values.
Store Input Values outputs to both Keyword Insight API Call and Difficulty API Call in parallel.
Step 3: Configure the SEO API Requests
Set up both API calls that fetch keyword insights and difficulty data.
- Open Keyword Insight API Call and set URL to
https://seo-on-page.p.rapidapi.com/keyword-tool.phpand Method toPOST. - Enable Send Body and set Content Type to
multipart-form-data. - Add body parameters: keyword =
={{ $json.keyword }}and country =={{ $json.country }}. - Enable Send Headers and set x-rapidapi-host to
seo-on-page.p.rapidapi.comand x-rapidapi-key to[CONFIGURE_YOUR_API_KEY]. - Open Difficulty API Call and set URL to
https://seo-on-page.p.rapidapi.com/keywordDifficulty.phpand Method toPOST. - Set the same body parameters as above, and headers with x-rapidapi-host =
=seo-on-page.p.rapidapi.comand x-rapidapi-key =[CONFIGURE_YOUR_API_KEY].
Difficulty API Call outputs to both Parse Difficulty Index and Extract SERP Data in parallel.
[CONFIGURE_YOUR_API_KEY] with your RapidAPI key in both API nodes, or the requests will fail.Step 4: Parse API Responses and Prepare Data
Transform the API responses into the exact structures needed for the spreadsheet outputs.
- Open Extract Broad Keywords and set JavaScript Code to
return $input.first().json.data.semrushAPI.broadMatchKeywords;. - Open Parse Difficulty Index and set JavaScript Code to
return $input.first().json.data.semrushAPI.keywordDifficulty[0];. - Open Extract SERP Data and set JavaScript Code to
return $input.first().json.data.semrushAPI.serpResults;. - Verify the paths: Keyword Insight API Call → Extract Broad Keywords and Difficulty API Call → Parse Difficulty Index / Extract SERP Data.
Step 5: Configure Google Sheets Outputs
Append the parsed data into three sheets for insights, difficulty, and SERP analytics.
- Open Append Insight Sheet and set Operation to
append, Authentication toserviceAccount, Document ID to[YOUR_ID], and Sheet Name toKeyword Insights(gid=0). - Credential Required: Connect your googleApi credentials in Append Insight Sheet.
- Open Append Difficulty Sheet and set Operation to
append, Authentication toserviceAccount, Document ID to[YOUR_ID], and Sheet Name toKeyWord Difficulty. - Credential Required: Connect your googleApi credentials in Append Difficulty Sheet.
- Open Append SERP Sheet and set Operation to
append, Authentication toserviceAccount, Document ID to[YOUR_ID], and Sheet Name toSerp Analytics. - Credential Required: Connect your googleApi credentials in Append SERP Sheet.
[YOUR_ID]) for all three append nodes to keep reporting centralized.Step 6: Test and Activate Your Workflow
Run a manual test to confirm each branch writes data to the correct sheet, then activate the workflow.
- Click Execute Workflow and submit the Form Intake Trigger with a sample keyword and country.
- Verify that Append Insight Sheet, Append Difficulty Sheet, and Append SERP Sheet each append new rows.
- Confirm that both parallel branches complete: the insight data from Keyword Insight API Call and the difficulty/SERP data from Difficulty API Call.
- When results look correct, switch the workflow to Active for production use.
Common Gotchas
- RapidAPI credentials can expire or be restricted by plan limits. If things break, check your RapidAPI dashboard key status and quota usage first.
- If you’re using Wait nodes or external rendering, processing times vary. Bump up the wait duration if downstream nodes fail on empty responses.
- Default prompts in AI nodes are generic. Add your brand voice early or you’ll be editing outputs forever.
Frequently Asked Questions
About 30 minutes if your RapidAPI key and Google Sheet are ready.
No. You will connect accounts, paste your API key, and choose the right Google Sheets tabs.
Yes. n8n has a free self-hosted option and a free trial on n8n Cloud. Cloud plans start at $20/month for higher volume. You’ll also need to factor in RapidAPI usage costs based on the SEO On-Page API endpoints you call.
Two options: n8n Cloud (managed, easiest setup) or self-hosting on a VPS. For self-hosting, Hostinger VPS is affordable and handles n8n well. Self-hosting gives you unlimited executions but requires basic server management.
Yes, and it’s a common tweak. You can change the three Google Sheets “append” nodes to point to your own tab names, then update the field-mapping steps (the code nodes that extract broad keywords, the difficulty index, and SERP rows) to include the columns you care about, like search intent or a campaign label. Some teams also add an If node to skip SERP logging when they only need suggestions.
Most of the time it’s a bad or expired RapidAPI key, or the key wasn’t updated in both HTTP Request nodes. It can also be a plan quota issue, which shows up as a 429-style rate limit response. Double-check the country parameter too, because invalid values can return empty datasets that look like “the workflow broke” when it didn’t.
Plenty for normal research cycles. On n8n Cloud, the practical limit is your monthly executions and RapidAPI quota, because each keyword run triggers two API calls plus three Google Sheets writes. If you self-host, you remove execution limits and mostly just watch API limits and Google Sheets throughput, which can slow down if you push hundreds of rows at once.
Often, yes, because you can parse and reshape API responses more flexibly in n8n. This workflow relies on extracting arrays and specific fields (broad match keywords, difficulty index, SERP rows), and n8n handles that kind of transformation without awkward workarounds. Self-hosting is another advantage if you run research at scale, since you aren’t paying per task the same way. Zapier or Make can still be fine for a very lightweight version, like “call one endpoint and log one row,” but most teams outgrow that fast. If you want a second opinion, Talk to an automation expert and we’ll help you choose based on volume and complexity.
Once this is in place, keyword research stops being a copy-paste chore and becomes a reliable intake pipeline. The workflow handles the repetitive stuff, and your sheet stays ready for decisions.
Need Help Setting This Up?
Our automation experts can build and customize this workflow for your specific needs. Free 15-minute consultation—no commitment required.