Google Trends Scraper - Interest, Regions & Related Queries
Pricing
from $4.00 / 1,000 keyword trends
Google Trends Scraper - Interest, Regions & Related Queries
Scrape Google Trends for any keywords: interest over time, interest by region, top and rising related queries and topics. Compare up to 5 terms on one scale. Any country or state, 9 time ranges or custom dates, web, news, images, YouTube and Shopping. JSON/CSV. No API keys.
Pricing
from $4.00 / 1,000 keyword trends
Rating
0.0
(0)
Developer
Santhej Kallada
Maintained by CommunityActor stats
0
Bookmarked
10
Total users
2
Monthly active users
11 days ago
Last modified
Categories
Share
Google Trends Scraper — Interest Over Time, Regions & Related Queries
Scrape Google Trends for any keywords and get the real numbers behind the charts: interest over time, interest by region, and top and rising related queries and topics — one clean row per keyword, with up to five terms compared on one scale, for $5.00 per 1,000 keywords.
Google Trends has no export API, and its charts are built for looking, not for analysis. This Actor reads Google Trends for you and returns every number as structured data, ready for a spreadsheet, a dashboard, a scheduled report or an AI agent. No browser to manage, no proxies, no API keys.
What does Google Trends Scraper do?
For each keyword you give it, the Actor opens the same view you would open on trends.google.com — your country or region, your time range, your category, web search or another Google property — and returns what Google shows there:
- the interest-over-time chart as a dated series on Google's 0–100 scale, with average, peak and latest values worked out for you;
- interest by region — countries for a worldwide search, states or provinces inside a country, metro areas inside a US state;
- the top and rising related queries and related topics, including the "Breakout" terms.
Keywords are compared in groups of five, exactly as on Google Trends, so the terms in a group share one scale and can be compared directly. Switch comparing off and every keyword is looked up on its own instead.
Every row carries a trends_url: open it and you see the same chart on Google Trends.
What you get per keyword
| Field | What it tells you |
|---|---|
keyword | The search term (or topic id) this row is about |
average_interest | Average interest over the period, 0–100. In a comparison it is Google's own figure for the term |
peak_interest / peak_date | The highest point of the chart and when it happened |
latest_interest / latest_date | The most recent point of the chart that has a value, and its date |
is_partial_latest | true when that point covers a period that is not over yet (this week, today, this hour) — Google draws it as a dotted line |
latest_complete_interest | The most recent point that covers a finished period — the safe one for "is it rising?" checks |
series | The whole chart: [{ "date", "value" }] |
granularity | Spacing of the points: minute, 8_minutes, hour, day, week or month |
time_range | The period you asked for |
compared_with | The other keywords that share this row's scale; empty when the keyword was looked up alone |
interest_by_region | [{ "region", "region_code", "value" }] — where the keyword is searched most, 0–100 |
share_by_region | Comparisons only: [{ "region", "region_code", "share" }] — how each region's searches split between the compared keywords, in percent |
related_queries_top / related_queries_rising | [{ "query", "value" }] — rising entries also carry formatted_value such as +350% or Breakout |
related_topics_top / related_topics_rising | [{ "topic", "type", "topic_id", "value" }] |
location / geo / property / category | Exactly which Google Trends view the row came from |
has_data | false when Google Trends has too little search volume for the keyword (such rows are not charged) |
trends_url | Link to the same chart on Google Trends |
checked_at | When Google Trends was read (UTC) |
A run summary is saved alongside the data with the keyword counts, the settings used and the billing breakdown.
Use cases
- Content and SEO timing — publish while a topic is climbing, not after it peaks; pull the rising queries as next week's briefs.
- Product and market validation — check that demand is growing, and in which states or countries, before you invest.
- Seasonality and inventory planning — five years of weekly data shows every recurring peak.
- Brand and competitor tracking — compare your brand with up to four rivals on one scale, region by region.
- Trading and research signals — hourly and per-minute interest for tickers, coins and events.
- AI agents and dashboards — schedule it and feed clean trend data to n8n, Make, Zapier, Google Sheets or an LLM.
How to use
- Enter your Keywords — up to 100 per run.
- Leave Compare keywords on to compare them in groups of five, or switch it off to look each one up on its own.
- Pick a Time range (past hour to all time) or a custom start and end date.
- Choose a Country, or type a Region code such as
US-CA; leave both blank for worldwide. - Optionally pick a Trends property (web, images, news, Shopping, YouTube) and a Category.
- Click Start, then export the dataset as JSON, CSV or Excel, or read it through the Apify API.
Schedule the Actor to run daily or weekly and you have a trend monitor.
Example input
{"keywords": ["chatgpt", "gemini", "claude", "perplexity", "copilot"],"timeRange": "past_12_months","locationCode": "2840","trendType": "web"}
Input configuration
| Field | Type | Default | Description |
|---|---|---|---|
keywords | array of strings | — (required) | Search terms, 1–100 per run. Duplicates are removed. |
compareKeywords | boolean | true | true: every five consecutive keywords share one 0–100 scale. false: each keyword is looked up alone and peaks at 100. |
timeRange | string | past_12_months | past_hour, past_4_hours, past_day, past_7_days, past_30_days, past_90_days, past_12_months, past_5_years, 2004_present. |
dateFrom / dateTo | string | — | Custom range as YYYY-MM-DD. Replaces timeRange when set; dateTo defaults to today. |
locationCode | string | "" (worldwide) | Country, chosen from the list in the form (2840 United States, 2826 United Kingdom, 2356 India, …). |
geo | string | — | A Google Trends geo code instead of a country: US, GB, US-CA, GB-ENG, DE-BY. Replaces locationCode when set. |
trendType | string | web | web, images, news, froogle (Google Shopping) or youtube. |
category | string | 0 (all) | One of Google Trends' 25 categories, chosen from the list in the form. |
languageCode | string | en | Language of topic and region names: en, es, de, fr, pt-BR, ja, … |
includeRegions | boolean | true | Add interest by region. |
relatedData | string | auto | Related queries and topics: auto (for every keyword looked up on its own), always (also for each keyword inside a comparison — one extra lookup per keyword) or off. |
Example output
A real row from the example input above — claude, compared with the other four in the United States over 12 months (series and region lists shortened):
{"keyword": "claude","average_interest": 19,"peak_interest": 33,"latest_interest": 18,"time_range": "past_12_months","series": [{ "date": "2025-10-12", "value": 6 },{ "date": "2025-10-19", "value": 6 },{ "date": "2026-09-27", "value": 22 },{ "date": "2026-10-04", "value": 23 },{ "date": "2026-10-11", "value": 18 }],"has_data": true,"peak_date": "2026-03-01","latest_date": "2026-10-11","latest_complete_interest": 23,"is_partial_latest": true,"granularity": "week","compared_with": ["chatgpt", "gemini", "perplexity", "copilot"],"location": "United States","geo": "US","property": "web","category": "All categories","interest_by_region": [{ "region": "District of Columbia", "region_code": "US-DC", "value": 100 },{ "region": "Wyoming", "region_code": "US-WY", "value": 92 },{ "region": "California", "region_code": "US-CA", "value": 84 }],"share_by_region": [{ "region": "District of Columbia", "region_code": "US-DC", "share": 22 },{ "region": "Wyoming", "region_code": "US-WY", "share": 20 },{ "region": "Washington", "region_code": "US-WA", "share": 20 }],"related_queries_top": null,"related_queries_rising": null,"related_topics_top": null,"related_topics_rising": null,"trends_url": "https://trends.google.com/trends/explore?hl=en&geo=US&date=today%2012-m&q=chatgpt,gemini,claude,perplexity,copilot","checked_at": "2026-10-12T08:07:14.000Z"}
In the same run chatgpt averaged 79, gemini 29, copilot 6 and perplexity 3. The five share one scale, so these numbers are directly comparable — and they are the averages Google Trends itself shows for this comparison.
A keyword looked up on its own also carries its related queries and topics. Real values from a run of {"keywords": ["bitcoin"], "locationCode": "2840"} (lists shortened, the other fields are as above):
{"keyword": "bitcoin","related_queries_top": [{ "query": "bitcoin price", "value": 100 },{ "query": "bitcoin today", "value": 19 },{ "query": "bitcoin stock", "value": 18 }],"related_queries_rising": [{ "query": "spcx stock", "value": 14000, "formatted_value": "Breakout" },{ "query": "spcx stock price", "value": 12950, "formatted_value": "Breakout" },{ "query": "sandisk stock", "value": 4100, "formatted_value": "+4,100%" }],"related_topics_top": [{ "topic": "Bitcoin", "type": "Cryptocurrency", "topic_id": "/m/05p0rrx", "value": 100 },{ "topic": "Price", "type": "Topic", "topic_id": "/m/01d_1l", "value": 55 },{ "topic": "Stock", "type": "Topic", "topic_id": "/m/077mq", "value": 9 }],"related_topics_rising": [{ "topic": "NASDAQ:SPCX", "type": "Topic", "topic_id": "/g/11qpvmz8dc", "value": 13900, "formatted_value": "Breakout" },{ "topic": "Reuters", "type": "Topic", "topic_id": "/g/11bc5zy143", "value": 2950, "formatted_value": "+2,950%" },{ "topic": "Reuters", "type": "News agency company", "topic_id": "/m/0ps53", "value": 2800, "formatted_value": "+2,800%" }]}
How much does it cost to scrape Google Trends?
Pay per event. No monthly fee, no setup fee, and you never pay for a keyword that failed or that Google Trends has no data for.
| Event | Price (Free and Bronze plans) |
|---|---|
| Actor start | $0.001 per run |
| Keyword trend | $0.005 per keyword — $5.00 per 1,000 |
Apify Silver plans get 10% off these prices, Gold plans and above 20% off.
- Five keywords compared (one lookup): $0.001 + 5 × $0.005 = $0.026.
- Twenty keywords in four comparisons: $0.001 + 20 × $0.005 = $0.101.
- One hundred keywords in twenty comparisons: $0.001 + 100 × $0.005 = $0.501.
Minimum charge. The Actor works in lookups: one comparison of up to five keywords is one lookup, and so is one keyword looked up on its own. Each lookup has a fixed cost of its own, so a run is never billed less than about 3.4 keyword units per lookup — four units for a single lookup. In practice:
| Run | Lookups | Billed |
|---|---|---|
| 4 or 5 keywords compared | 1 | 4 or 5 units — the plain per-keyword price |
| 1, 2 or 3 keywords compared | 1 | 4 units — $0.021 |
10 keywords, one by one (compareKeywords off) | 10 | 34 units — $0.171 |
5 keywords compared, related queries and topics for each (relatedData: always) | 6 | 21 units — $0.106 |
Any units added this way are shown in the run summary as minimum_charge_units_added, so the bill is never a surprise. To pay the plain per-keyword price, compare keywords in full groups of four or five.
FAQ
Is this real Google Trends data? Yes. Every run reads Google Trends itself, and each row links to the same chart in trends_url. Google Trends works on a sample of searches, so two readings of the same chart can differ by a point or two; the shape, the peaks and the order of the terms do not.
Do I need an API key, a proxy or a Google account? No. Add your keywords and run — everything else is handled for you.
Why did I get fewer results than I asked for? Google Trends only reports what has enough search volume. A keyword it has too little data for comes back with has_data: false and is not charged; regions with too little data are left out of interest_by_region; and related lists hold what Google shows — up to 25 entries, often fewer for niche terms or short time ranges.
What is the difference between comparing keywords and looking them up one by one? In a comparison the terms share one scale: 100 is the highest point of the strongest term, and a small term may sit at 2 or 3 all year. Looked up alone, every keyword is scaled to its own peak, which shows its seasonality clearly but cannot be compared with another keyword's numbers.
Why is the last value sometimes much lower or higher than the one before? The newest point usually covers a period that is still running — the current week, day or hour. is_partial_latest tells you so, and latest_complete_interest gives you the last finished point.
What do the rising values mean? A rising query or topic is one whose searches grew compared with the previous period; value is the growth in percent. Google labels growth above 5,000% as "Breakout", and formatted_value carries that wording.
What does a 0 or an empty value in the series mean? 0 is interest too low to register against the peak. An empty value (null) is a point Google Trends has no data for at all — for example the months before a product existed.
Can I get state, province or city-level data? Choose a country to get its states or provinces in interest_by_region. Type a region code in Region code (US-CA, GB-ENG, DE-BY) to measure interest inside that region; for a US state the breakdown is then by metro area. City-level lists are not available.
Can I look up a topic instead of a search term? Yes. Use the topic's id as the keyword — for example /m/05p0rrx for the Bitcoin topic. Topic ids are returned in related_topics_top.
How long does a run take? Typically 10 to 70 seconds. The lookups of a run are made side by side, so more keywords add little time.
Can I run it on a schedule or from my own code? Yes. Use Apify schedules for recurring runs, or call the Actor through the Apify API, n8n, Make or Zapier.
More search and SERP tools
- Google News Scraper — the articles behind a spike in interest, with publisher and publish time.
- Google SERP API — organic results, People Also Ask and AI Overview for any query.
- People Also Ask Scraper — the questions Google shows for a keyword.
- Google Images Scraper — image results with direct image and source-page URLs.
Tags: google trends scraper, google trends api, google trends data, interest over time, interest by region, related queries, rising queries, trending searches, keyword trends, search demand, seasonality, trend analysis, seo research, market research, google trends export