Google Trends Scraper
Pricing
$3.00 / 1,000 keyword results
Google Trends Scraper
Google Trends as clean JSON: interest over time, interest by region and related queries (top and rising) for any keyword, country and time range. Fast JSON API, no browser, retried on residential IPs.
Pricing
$3.00 / 1,000 keyword results
Rating
0.0
(0)
Developer
Santiago Morera
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
14 days ago
Last modified
Categories
Share
Google Trends data as clean JSON: interest over time, interest by region and related queries (top and rising) for any keyword, country and time range. It calls the same JSON endpoints the Trends site uses, with no browser, so runs are fast and cheap. Each keyword is retried on a fresh residential IP if Google rate-limits it.
What you get
One record per keyword:
interestOverTime: the 0-100 series with one point per day, week or month depending on the range.interestByRegion: every country or sub-region with data, scored 0-100.relatedQueries:topandrisinglists. Rising queries with a huge jump are labelledBreakout.
Input
| Field | Type | Description |
|---|---|---|
keywords | string[] | Terms to look up. Each one is queried on its own, so every series is scaled 0-100 by itself. |
geo | string | Country or sub-region code (US, GB, AR, US-CA). Empty = worldwide. |
timeRange | string | now 1-H, now 4-H, now 1-d, now 7-d, today 1-m, today 3-m, today 12-m (default), today 5-y or all. |
property | string | Empty = web search, or images, news, youtube, froogle (Shopping). |
category | integer | Google Trends category id. 0 = all (default). |
language | string | Labels language, for example en-US (default) or es-AR. |
Example:
{"keywords": ["bitcoin", "ethereum"],"geo": "US","timeRange": "today 12-m"}
Output
Real excerpt from a run with keywords: ["bitcoin"], geo: "US", timeRange: "today 12-m" (lists shortened here):
{"keyword": "bitcoin","geo": "US","timeRange": "today 12-m","interestOverTime": [{ "date": "2025-10-05", "label": "Oct 5 – 11, 2025", "value": 38, "hasData": true, "isPartial": false },{ "date": "2025-10-12", "label": "Oct 12 – 18, 2025", "value": 39, "hasData": true, "isPartial": false }],"interestByRegion": [{ "geoCode": "US-WY", "geoName": "Wyoming", "value": 100 },{ "geoCode": "US-NV", "geoName": "Nevada", "value": 49 }],"relatedQueries": {"top": [{ "query": "bitcoin price", "value": 100, "label": "100" }],"rising": [{ "query": "spcx stock", "value": 14150, "label": "Breakout" }]}}
isPartial is true for the last, still-open period.
Notes
- Pricing is per keyword with data. A keyword Google has no data for (very rare terms) returns nothing and is not charged. Keywords that fail after 5 attempts are not charged either.
- Values are Google's relative popularity index (0-100), not search volumes.
- Related topics are not included: Google returns them empty for plain search terms.
- Only data that Google Trends shows publicly is collected.
Pricing
Pay per event: USD 0.003 per keyword with data (USD 3 per 1,000 keywords). The default input (2 keywords) costs about USD 0.006. Apify platform usage is included in the price, you only pay for delivered keywords.
Use cases
- Keyword and SEO research: compare seasonality and rising queries before writing content.
- Market and product research: track interest by country or region over time.
- Trend monitoring: schedule the actor daily or weekly and send results to Google Sheets, a database or a webhook.
- Data for dashboards and reports: export the series as JSON, CSV or Excel.
FAQ
Do I need a Google account, API key or proxy? No. Everything runs on Apify, you only provide keywords.
Is this a pytrends alternative? Yes, it returns the same kinds of data without you maintaining code or dealing with 429 errors.
How many keywords per run? There is no fixed limit. Each keyword is its own request, so very large lists simply take longer.
Can I call it from my own code? Yes, through the Apify API or the official Python and JavaScript clients, and with integrations such as Make, Zapier or n8n.