Google Trends Scraper: Explore, Compare, Trending Now
Pricing
from $1.50 / 1,000 trend reports
Google Trends Scraper: Explore, Compare, Trending Now
Google Trends API without a browser: interest over time, by region/city/metro, related & rising queries, compare 5+ terms on one scale, daily data for 5 years, Trending Now with news, change alerts. Same input as apify/google-trends-scraper. Never pay for empty results.
Pricing
from $1.50 / 1,000 trend reports
Rating
0.0
(0)
Developer
Nat | Data Tools
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
Get Google Trends data as clean JSON, CSV or Excel: interest over time, interest by country / region / city / metro, top and rising related queries, comparisons of any number of terms on one scale, daily data for multi-year ranges, and everything Trending Now with search volumes and news. No browser, no login, no proxies to set up.
You never pay for a failed or empty result. If Google blocks a request or has no data for your term, it costs nothing.
Why this Google Trends scraper
| This Actor | Typical Google Trends actors | |
|---|---|---|
| Engine | Plain HTTP calls to the same JSON endpoints trends.google.com uses. Fast and light (256 MB). | Headless browser that breaks whenever Google redesigns the page (as on 2 Sep 2026). |
| Failed / blocked runs | Fail within minutes with a clear reason. Not charged. | Hang for hours, then "succeed" with 0 results while you pay for compute. |
| Empty results | Terms with no search interest are delivered free, flagged no-interest. | Charged like any other result. |
| Platform usage | Included in the price. No start fee, no compute or proxy bill on top. | Often billed on top (4 GB × run time) or as a per-run start fee. |
| Compare terms | Up to 5 natively, any number with an anchor term, all on one 0–100 scale. | 5 at most, or each term scraped separately on its own scale. |
| Long ranges | Optional daily points for up to 5+ years (stitched windows). | Weekly or monthly points only. |
| Trending Now | Full list (hundreds to thousands of trends), volume, % increase, start/end, active flag, categories, related searches, plus news articles for Google's featured trends. | Top 10 from RSS, or no Trending Now at all. |
| Geos & categories | All 3,681 Google geos (countries, states, US metros), all ~1,100 categories, by code or name, many geos per run. | One geo per run, a short category list. |
| Monitoring | Change alerts: deliver only new rising/breakout queries, spikes and new trends since the last run. | Re-download everything every time. |
| AI agents | Lenient input: "us", "Germany", "7d", "12m" all work. Arrays instead of hidden flags. | Strict enums that reject lowercase codes. |
| Compatibility | Accepts the same input as apify/google-trends-scraper and returns the same field names. | — |
What you can do
- Keyword research and SEO: see which queries are rising before your competitors do; find Breakout queries (+5,000% growth).
- Content and news teams: watch Trending Now in several countries every hour, with the news stories behind the featured trends.
- Market and product research: compare brands, products or features in any number of countries on one scale.
- Data science and finance: build daily search-interest series for 5 years for nowcasting and forecasting models.
- Alerts: schedule the Actor and get only what changed: new rising queries, spikes above your threshold, new trends.
- AI agents: call it from Claude, ChatGPT or Cursor through Apify's AI integrations.
- Your own stack: run it from the Apify API, the Python or JavaScript client, Make, Zapier, n8n, Google Sheets, Slack, webhooks or a schedule; export JSON, CSV or Excel.
Quick start
1. One trend report per term
{"searchTerms": ["web scraping", "ai agents"],"geos": ["US", "GB", "Germany"],"timeRange": "today 12-m"}
→ 6 reports (2 terms × 3 geos), each with interest over time, interest by sub-region, and top + rising related queries.
2. Compare terms on one scale
{ "compareGroups": [["iphone", "pixel", "galaxy"]], "geos": [""] }
Comma style works too (same as apify/google-trends-scraper): "searchTerms": ["iphone, pixel, galaxy"], "isMultiple": true.
More than 5 terms: add "compareAnchor": "iphone". The Actor runs batches of the anchor plus 4 other terms and rescales each batch by the anchor, so all 12, 20 or 50 terms share one scale.
3. Daily data for 5 years
{ "searchTerms": ["bitcoin"], "timeRange": "today 5-y", "dailyResolution": true, "outputFormat": "wide" }
4. Trending Now in several countries
{ "trendingGeos": ["US", "GB", "IN"], "trendingHours": "24", "trendingMaxPerGeo": 200, "trendingCategories": [17, 18] }
5. Scheduled monitoring (alerts)
{"searchTerms": ["your brand", "competitor brand"],"geos": ["US"],"timeRange": "now 7-d","trendingGeos": ["US"],"onlyChanges": true,"monitorName": "brand-watch","spikeThreshold": 50}
Schedule it hourly or daily and connect a webhook, Slack or email integration: each run delivers only new rising queries, spikes and new trends.
Migrating from apify/google-trends-scraper
Paste your existing input. searchTerms, isMultiple, timeRange (including ""), geo, category, customTimeRange, startUrls and maxItems (0 = unlimited) work as before, and the output keeps inputUrlOrTerm, searchTerm, interestOverTime_timelineData, interestOverTime_averages, interestBy, interestBySubregion, interestByCity, interestByMetro, relatedQueries_top, relatedQueries_rising, relatedTopics_top and relatedTopics_rising. viewedFrom is accepted but has no effect on Google Trends data. Links from both the classic /trends/explore page and the new /explore page are supported.
Output
Trend report (outputFormat: "report")
{"searchTerm": "coffee","terms": ["coffee"],"geo": "US","geoName": "United States","timeRange": "today 12-m","timeRangeResolved": "2025-10-17 2026-10-17","resolution": "WEEK","category": 0,"categoryName": "All categories","property": "web","dataStatus": { "timeline": "ok", "regions": "ok", "relatedQueries": "ok", "relatedTopics": "unavailable" },"interestOverTime_timelineData": [{ "time": "1760227200", "formattedTime": "Oct 12 – 18, 2025", "value": [63], "hasData": [true] }],"interestOverTime_summary": {"term": "coffee", "average": 64.3, "peak": 100, "peakDate": "2025-12-21T00:00:00.000Z","latest": 61, "latestDate": "2026-10-04T00:00:00.000Z","changePercent": -4.2, "spikePercent": -5.1, "direction": "stable"},"interestBy": [{ "geoCode": "US-WY", "geoName": "Wyoming", "value": [100] }],"interestBySubregion": [{ "geoCode": "US-WY", "geoName": "Wyoming", "value": [100] }],"relatedQueries_top": [{ "query": "coffee near me", "value": 100, "formattedValue": "100", "rank": 1, "link": "https://trends.google.com/trends/explore?q=coffee+near+me&date=today+12-m&geo=US" }],"relatedQueries_rising": [{ "query": "…", "value": 5000, "formattedValue": "Breakout", "isBreakout": true, "rank": 1 }],"relatedTopics_top": [],"relatedTopics_rising": [],"exploreUrl": "https://trends.google.com/trends/explore?q=coffee&date=today+12-m&hl=en-US&geo=US","scrapedAt": "2026-10-17T12:00:00.000Z"}
dataStatus tells you, per section, whether the data is ok, empty (Google had nothing), no-interest, partial, failed, unavailable or not-requested, so an empty list is never a mystery.
Trending Now row
{"type": "trending","rank": 1,"title": "norte fire","geo": "US","searchVolume": 100000,"searchVolumeFormatted": "100K+","increasePercent": 1000,"isActive": true,"startedAt": "2026-10-17T07:30:00.000Z","endedAt": null,"durationHours": 5.5,"categories": ["Other"],"relatedSearches": ["norte fire", "san clemente fire", "norte fire map"],"news": [{ "title": "…", "url": "https://…", "source": "…", "picture": "https://…" }],"exploreUrl": "https://trends.google.com/trends/explore?q=norte%20fire&geo=US&date=now%207-d"}
Rows and wide formats
rows: { term, geo, date, formattedTime, value, isPartial, … }, one row per term per date. wide: { date, formattedTime, geo, "iphone": 71, "pixel": 12, isPartial }, one row per date. Both open directly in Excel or Google Sheets.
Pricing
Pay per event. Platform usage and proxies are included: no start fee and no compute bill on top.
| Event | What it is | Price |
|---|---|---|
| Trend report | One term (or comparison of up to 5 terms) in one geo: timeline + regions + related queries | $2.50 / 1,000 ($0.0025) |
| Extra query | One additional Google query: a daily-stitching window, or an extra anchor batch | $1.00 / 1,000 |
| Monitor check | Monitoring mode: checked, nothing changed, nothing delivered | $1.50 / 1,000 |
| Trending snapshot | Everything trending in one country or region (up to thousands of rows, news included) | $0.005 per country |
Lower rates apply automatically on higher Apify plans (trend reports down to $1.50 / 1,000). Never charged: failed or blocked terms, terms with no search interest, Trending Now news, and monitoring runs that find no new trends.
Examples: 100 keywords × 3 countries = 300 reports = $0.75. A daily 5-year series for one keyword ≈ $0.0025 + 9 × $0.001 = $0.0115. All of today's trends in the US, UK and India (≈1,200 rows) = 3 snapshots = $0.015. Hourly Trending Now monitoring of one country for a month ≈ 720 snapshots = at most $3.60, less when nothing new appears.
The Actor checks your run's maximum cost before each report and stops cleanly when it is reached, so you never pay more than you set.
Free Apify plan: up to 10 trend reports and 50 Trending Now rows per run (a limit set by the developer, not by Apify). Any paid plan removes it.
Good to know
- Values are relative. Google scales every request to 0–100, where 100 is the peak of that request. Compare terms only inside one comparison, or with
compareAnchor. - Related topics. Google sends related topics only to browsers that pass its reCAPTCHA check. This Actor never solves or bypasses CAPTCHAs, so related topics appear only when Google includes them;
dataStatus.relatedTopicssaysunavailableotherwise. Related queries are not affected. - Rate limits. Google throttles heavy use per IP address. The Actor rotates residential IPs, paces itself and retries for you; a term that still fails is listed in the run's
STATISTICSrecord with the reason, and isn't charged. - Rising queries are Google's own list. Google sometimes includes broad unrelated searches among rising queries; they are passed through unchanged.
- Metros (DMA) exist only for the United States.
Is it legal to scrape Google Trends?
This Actor reads publicly available, aggregated and anonymous Google Trends statistics, the same data anyone sees on trends.google.com without signing in. It does not log in, does not use accounts, does not solve or bypass CAPTCHAs, respects Google's rate limits by pacing and backing off, and collects no personal data. Check Google's terms for your own use case; for commercial redistribution, consult a lawyer.
FAQ
How is this different from pytrends? pytrends was archived in April 2025 and its Trending Now functions return 404. This Actor is maintained, handles Google's 2025–2026 cookie and rate-limit changes, and runs in the cloud on a schedule.
How does it compare with SerpApi? SerpApi bills each data type as a separate search (about $25 per 1,000 at the entry plan), so one full report costs 4–5 searches. Here a full report is one event at $2.50 per 1,000.
Can I use it from Claude, ChatGPT or Cursor? Yes, through Apify's AI integrations. The input accepts natural values like "us", "Germany", "past 7 days" or "5y".
Does it work for YouTube, News, Images or Shopping trends? Yes: set property to youtube, news, images or shopping.
What happens when Google changes something? Each run reports per-section status and fails loudly instead of returning silent empties, so changes are caught and fixed fast. Open an issue in the Issues tab; it's answered within 24 hours.