Google Trends Scraper (timeseries + regions + related)
Pricing
from $2.50 / 1,000 results
Google Trends Scraper (timeseries + regions + related)
Scrape Google Trends for up to 20 keywords per run: interest over time, interest by region, related topics and related queries (top and rising, incl. Breakout). Flat rows tagged by kind, ready for Sheets, BI or AI agents. Any country or worldwide, 7 days to 5 years. No browser or API key.
Google Trends Scraper: Interest Over Time, Regions, Related Topics & Queries
Get all four Google Trends widgets for up to 20 keywords in one run: interest over time, interest by region, related topics and related queries. The Actor reads Google Trends' own JSON endpoints with a fresh session per keyword, so it needs no browser and returns clean, flat rows that drop straight into a spreadsheet, database or AI agent.
What data can you extract?
Every row has a kind field so you can filter the four data types:
kind | What each row is | Fields |
|---|---|---|
interest_over_time | One point on the trend line | label (date text), time (Unix timestamp), value (0-100) |
interest_by_region | One country or region with search interest | label (region name), value (0-100) |
related_topic | A topic people also search for (top or rising) | label, topic_type, value, trend (e.g. Breakout, +250%) |
related_query | A related search query (top or rising) | label, value, trend, link (Google Trends deep link) |
All rows also include keyword and geo (the region you searched, or worldwide).
How to use it
- Add up to 20 Keywords, for example
electric bikeorai agents. - Optionally set a Region code: a two-letter country code such as
US,AUorGB. Leave it empty for worldwide. - Pick a Time range: past 7 days, 30 days, 90 days, 12 months or 5 years.
- Click Start, then download the results as JSON, CSV, Excel or HTML, or fetch them with the Apify API.
Input example
{"keywords": ["electric bike", "e-scooter"],"geo": "AU","timeRange": "past_12_months"}
Output example
Illustrative rows showing the shape of each kind:
[{"keyword": "electric bike", "kind": "interest_over_time", "label": "Nov 2 - 8, 2025", "time": "1762041600", "value": 64, "geo": "AU"},{"keyword": "electric bike", "kind": "interest_by_region", "label": "Queensland", "value": 100, "geo": "AU"},{"keyword": "electric bike", "kind": "related_topic", "label": "Electric bicycle", "topic_type": "Topic", "value": 100, "trend": "100", "geo": "AU"},{"keyword": "electric bike", "kind": "related_query", "label": "electric bike near me", "value": 250, "trend": "+250%", "link": "https://trends.google.com/trends/explore?q=electric+bike+near+me&geo=AU", "geo": "AU"}]
Use cases
- SEO and content planning: find rising queries before competitors do.
- Market research and product validation: compare demand for products, brands or categories over time.
- Regional targeting: see which countries or states care most about a topic.
- Brand and trend monitoring: schedule daily or weekly runs and track changes.
- AI agents and dashboards: feed flat, typed rows into agents, BI tools or spreadsheets via the Apify API or MCP server.
Run it on a schedule
Use Apify Schedules to repeat the same keywords daily or weekly, and send results to Google Sheets, Slack, Make, Zapier or a webhook with Apify Integrations.
Pricing
Pay per result: each row in the output counts as one result. As a guide, one keyword searched worldwide over the past 12 months returned 167 rows in testing; a single-country search returns fewer region rows. Control cost with the number of keywords and the time range. See the Pricing tab for the current rate.
FAQ
Do I need a Google account or an API key? No. The Actor uses Google Trends' public endpoints.
Why are values between 0 and 100? Google Trends reports relative interest, not absolute search volume. 100 is the peak for the chosen keyword, region and time range.
What happens if one keyword fails? Each request gets up to three attempts with a short back-off. If a keyword still fails, it is skipped and the run continues with the rest.
Found a problem or need another option? Open an issue on the Issues tab and it will be looked at.