Manually checking Google Trends and copying keywords into a spreadsheet is slow, repetitive work — exactly the kind of task automation was made for. With n8n, you can build a workflow that pulls trending keywords on a schedule, scrapes the top related articles into clean text, and appends everything to a Google Sheet automatically. This guide rebuilds the popular “Google Trends to Google Sheets” workflow step by step, so you end up with a hands-free content-research engine.
What this workflow does
The automation follows a simple chain: on a schedule, it fetches trending searches from Google Trends, cleans and filters them, scrapes the linked articles for context using Jina AI, runs a data-quality check, and saves the structured results to Google Sheets. The payoff: every few hours your sheet quietly fills with fresh trending topics and summaries — a ready-made editorial and SEO research feed without you lifting a finger. It’s one of the most useful beginner-to-intermediate n8n builds because every node has a clear, practical job.
What you’ll need
| Tool | Role | Cost |
|---|---|---|
| n8n | Runs and orchestrates the workflow | Free self-hosted / paid Cloud |
| Google Trends RSS | Source of trending keywords | Free, no API key |
| Jina AI Reader | Scrapes articles into clean text | Free tier / paid for scale |
| Google Sheets | Stores the structured results | Free |
Notably, you can run this entirely free: self-hosted n8n, the keyless Trends RSS feed, Jina’s free Reader tier, and Google Sheets. Costs only appear if you add a paid AI summarizer or a premium trends API later.
Build it, step by step
Set up n8n and your accounts
You need a running n8n instance (self-hosted free, or n8n Cloud), a Google account for Sheets, and optionally a free Jina AI key for higher scraping limits. In n8n, connect your Google Sheets credential first (Google Cloud OAuth) so it’s ready when you reach the final node.
Add the schedule trigger
Start the workflow with a Schedule Trigger node — this is the “Trigger” box in the diagram. Set it to run on your preferred interval (e.g., every few hours, or once daily). This is what makes the automation hands-free; it fires on its own and runs the whole chain.
Fetch Google Trends via RSS
Google Trends has no official API, so the simplest free method is its RSS feed. Use an RSS Read node (or an HTTP Request node) pointed at the trending RSS URL for your region. This returns the current trending searches plus links to related news articles — no API key required.
Step 3 — Google Trends RSS feed URL (free, no API key)
https://trends.google.com/trending/rss?geo=US # Change geo= to your country code: GB, IN, DE, etc. # Use this as the URL in an RSS Read node (or HTTP Request node).
Convert XML to JSON and filter
RSS comes as XML, so add an XML node to convert it to JSON your other nodes can read (the “Convert to JSON” box in the diagram). Then a Code or Filter node trims the data — keep only the fields you want (keyword, traffic, article link) and drop items with no article. This is the “Build Dataset” stage.
Step 4 — filter keywords in a Code node (JavaScript)
// Keep only items that have at least one related article link,
// and trim to the fields you care about.
return items
.filter(i => i.json.link || (i.json.news_item && i.json.news_item.length))
.map(i => ({
json: {
keyword: i.json.title,
traffic: i.json.approx_traffic || "",
article_url: i.json.link || i.json.news_item?.[0]?.news_item_url
}
}));
Scrape the articles with Jina AI
This is the “Scraping” row in the diagram. For each trending keyword, you have an article URL but not its content. Loop over the items (n8n does this automatically) and send each URL to Jina AI’s Reader by prepending https://r.jina.ai/ to the article URL in an HTTP Request node. Jina strips the HTML, ads, and menus and returns clean, readable text — a free, powerful way to get past the RSS snippet limit.
Step 5 — scrape each article with Jina AI (HTTP Request node)
Method: GET
URL: https://r.jina.ai/{{ $json.article_url }}
# Optional: add a header for higher rate limits
# Authorization: Bearer YOUR_JINA_API_KEY
#
# Jina returns clean, readable text (Markdown) instead of raw HTML.
# Map the response into a "summary" or "content" field for the sheet.
Map the data
Add a Set (Edit Fields) node — the “Data Mapping” boxes in the diagram — to assemble each row exactly as your sheet expects: keyword, traffic, article URL, and the clean summary from Jina. Mapping here keeps your spreadsheet tidy and consistent.
Save to Google Sheets with a data check
Before saving, add an IF node (the “Data Check” diamond): only continue if at least one valid result exists, so you never write empty rows. On true, a Google Sheets node appends the new records; on false, the workflow skips saving. Point the node at your prepared sheet and map the columns — done.
The workflow at a glance
Ways to extend it
Once the core pipeline works, it becomes a foundation you can build on:
- Add an AI summary. Pass the Jina text through an LLM node to generate a one-line takeaway or content angle per keyword.
- Filter by your niche. Add a keyword filter so only trends relevant to your site get saved.
- Auto-draft content. Chain the output into a blog-draft or social-post workflow. (Trending keywords make great article topics.)
- Switch the source. For richer query-level data, swap the RSS node for a SerpAPI or Bright Data trends node.
- Send alerts. Add a Slack or email node to ping you when a high-traffic trend appears.
Troubleshooting
- No data from RSS? Check your
geo=country code and that the RSS URL is reachable; trends vary by region and availability. - Jina returns errors or rate limits? Add a free Jina API key as an HTTP header, and space out requests if you scrape many articles.
- Empty rows in the sheet? Your IF/data-check node isn’t filtering correctly — confirm it only passes items with a valid result.
- Google Sheets node fails? Re-check the OAuth credential and that the column names in your Set node exactly match the sheet headers.
- Workflow runs but nothing appends? Make sure the Google Sheets node is set to Append and points to the correct sheet tab.
Frequently asked questions
Can you connect Google Trends to Google Sheets automatically?
Does Google Trends have an API for n8n?
What is Jina AI used for in this workflow?
Is this n8n workflow free to run?
Further Reading
- How to Automate Social Media Posting With AI (2026 No-Code Guide)
- How to Automate Meta Ads With Claude AI and Supermetrics (2026 Guide)
- Best AI Tools to Automate Your Social Media in 2026 (Compared)
- Why Do 85% of AI Projects Fail? (2026 Data + How to Be in the 15%)
- How to Build a WhatsApp AI Booking Bot With No Code (2026 Guide)
