Google Trends Scraper & Keyword Ideas: Interest, Trending
Pricing
from $0.80 / 1,000 keyword trend rows
Google Trends Scraper & Keyword Ideas: Interest, Trending
Google Trends at scale: one rich row per keyword with interest over time, average and peak, regions, US metros, top and rising related queries, plus full Trending Now and autocomplete keyword ideas. Compare 25+ terms. Rows without data are never charged. No login.
Pricing
from $0.80 / 1,000 keyword trend rows
Rating
0.0
(0)
Developer
Oswaldo Carabano
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
7 days ago
Last modified
Categories
Share
Google Trends Scraper & Keyword Ideas
Extract Google Trends data at scale: one rich row per keyword with interest over time, average, peak and its date, interest by country or region, US metro areas (DMA), top and rising related queries, plus the full Trending Now list of any country and autocomplete keyword ideas. Compare more than 5 terms on one scale. Keywords without data are delivered free — you only pay for rows with data.
No login, no browser, no cookies of yours. Works for any country, time range, category and Google property (web, images, news, YouTube, Shopping).
What you get
| Output type | One row per | Main fields |
|---|---|---|
keyword-trend | keyword | timeline (0-100 per date), average, peak, peakDate, latestValue, regions, dmas, cities, relatedTop, relatedRising, hasData |
comparison-set | comparison (up to 25 terms) | averages and timeline.values on one shared scale, regionShares, relatedTopByTerm, relatedRisingByTerm, anchor, normalizedBy |
trending-item | trending search | title, volume and volumeLabel ("2M+"), growthPct, startedAt, endedAt, isActive, relatedQueries, categoryIds, articleCount |
keyword-idea | unique autocomplete idea | idea, seed, query, modifier, modifierType, position, containsSeed, language, country |
ideas-then-trends | idea of each seed | a full keyword-trend row for each autocomplete idea, with seed and idea |
One row type per run, so every export (JSON, CSV, Excel) has clean, consistent columns. Every field is always present (null when empty).
Why this Actor
Competitors: public stats, pricing and output schema read through the Apify API on 13 Oct 2026 (no third-party Actor was run, and none publishes a sample of its data, so for them we show the most their own output schema allows). This Actor: 50 private test runs on Apify, 13–14 Oct 2026.
| This Actor | Most-used Google Trends Actor | Typical alternatives | |
|---|---|---|---|
| Runs that succeed | 50 of 50 test runs (5 output types, 14 countries and worldwide, 10 time ranges, 5 search types, invalid inputs) | 56.6 % of 22,991 runs in 30 days (4,965 timed out) | 92.8–99.5 % |
| Data per keyword | 1 row: series + average + peak + regions + metros + top & rising queries (median 53 points, 51 regions, 25 top and 15 rising queries; n = 518 rows) | 1 item, no output schema | ~150 thin rows per keyword (one per point, region or query) |
| Filled fields per row | 21.9 on average (518 keyword rows); 16.8 per trending row (4,357); 12.0 per idea row (2,630) | not declared | at most 12 per trend row and 13 per trending row by their own schema; 9 per autocomplete row |
| Charged = rows with data | 7,518 of 7,518 in 50 runs, 0 duplicates | every row, with or without data | every row |
| Price for a keyword with data | $0.0028 | $0.003 | $0.005 per thin row, or $0.002 + $0.025 per run |
| Price for a keyword without data | $0 | $0.003 | charged |
| Start fee | $0.00001 (platform minimum) | none | up to $0.025–$0.09 per run |
| Keywords per run | up to 500 | many | often 1 |
| Compare more than 5 terms (Google's limit is 5) | yes, merged through a shared anchor | not in its input | not in their input |
| Full Trending Now | yes, every item (487 in US / 24 h; 3,172 in US / 7 days) | no | some |
| Autocomplete ideas + trends in one run | yes | no | no |
| Output schema (Output tab) | yes | no | rarely |
Measured in testing (13 Oct 2026): 320 keywords across 10 locations, 6 time ranges, 4 search types and 3 categories → 98.4 % complete rows; the rest had their time series and regions but not their related queries, and were delivered without charge. From inside Apify with 8 keywords in parallel: 33–58 complete keywords per minute, and after an automatic retry when Google throttled, 100 % of keywords recovered on the primary connection and 91.7 % on the backup one (24 keywords each).
How much data to expect
Google Trends is relative (0-100) and some combinations simply have little data. Measured fill rates on 315 complete rows (13 Oct 2026):
| Rows (n) | Has data | Regions | Top queries | Rising queries |
|---|---|---|---|---|
| Past 12 months, any search type (53) | 98.1 % | 100 % | 98.1 % | 96.2 % |
| Web search, any range (159) | 97.5 % | 98.7 % | 96.2 % | 92.5 % |
| YouTube search (53) | 98.1 % | 100 % | 94.3 % | 94.3 % |
| Image search (52) | 88.5 % | 82.7 % | 71.2 % | 67.3 % |
| News search (51) | 76.5 % | 62.7 % | 35.3 % | 29.4 % |
Past day, now 1-d (53) | 83.0 % | 73.6 % | 52.8 % | 45.3 % |
Rows with hasData: false are still delivered (so you know the term was checked) and are never charged. US metro areas: 209 of 210 with data for a popular term. Cities: Google returns city data for few terms (27 of 216 rows had at least one city), so includeCities is off by default.
Input examples
Trend of several keywords in the US (this is the prefilled example):
{"outputType": "keyword-trend","keywords": ["seo", "web scraping", "chatgpt"],"geo": "US","timeRange": "today 12-m"}
Compare 7 AI assistants on one scale (first term is the anchor):
{"outputType": "comparison-set","keywords": ["chatgpt", "gemini", "perplexity", "copilot", "deepseek", "grok", "meta ai"],"geo": "US","timeRange": "today 3-m"}
Everything trending in Mexico and Spain in the past 24 hours:
{ "outputType": "trending-item", "trendingGeos": ["MX", "ES"], "trendingHours": "24" }
Keyword ideas, then the trend of the 10 best ideas of each seed:
{ "outputType": "ideas-then-trends", "seeds": ["crm software"], "maxIdeasPerSeed": 10, "geo": "US" }
An empty input returns the worldwide trend of "seo" for the past 12 months in a few seconds.
Output example (keyword-trend, shortened)
{"outputType": "keyword-trend","keyword": "seo","geo": "US","timeRange": "today 12-m","hasData": true,"points": 53,"average": 57.9,"peak": 100,"peakDate": "2026-07-05","latestValue": 32,"timeline": [{ "date": "2025-10-12", "time": 1760227200, "value": 38, "isPartial": false }],"regionResolution": "REGION","regions": [{ "geoCode": "US-WY", "geoName": "Wyoming", "value": 100, "hasData": true }],"dmas": [{ "geoCode": "759", "geoName": "Cheyenne WY-Scottsbluff NE", "value": 100 }],"relatedTop": [{ "query": "seo company", "value": 100, "formattedValue": "100" }],"relatedRising": [{ "query": "regalseo", "value": 36700, "formattedValue": "Breakout", "isBreakout": true }],"sampled": true,"error": null}
Pricing
Pay per event — you pay for rows with data, never for empty, partial or failed rows.
| Event | Price (free plan) | Gold plan |
|---|---|---|
Keyword trend row (keyword-trend, also each idea in ideas-then-trends) | $0.0028 ($2.80 per 1,000) | $0.0008 |
Comparison batch (comparison-set, per batch of up to 5 terms) | $0.004 | $0.002 |
Trending search row (trending-item) | $0.0005 | $0.0002 |
Keyword idea row (keyword-idea) | $0.0003 | $0.0001 |
| Actor start | $0.00001 | $0.00001 |
maxItems is a hard cap on charged rows, and the run stops cleanly when your maximum cost per run is reached. Duplicates are removed within a run and never charged twice.
Good to know
- Google Trends samples searches. A value can differ by a few points between two runs (measured: up to 3 points out of 100). Values within one row are consistent.
- Related topics are not included. Google returns them empty to every automated client; this Actor does not pretend otherwise.
- Trending articles: you get how many news articles Google links to each trend (
articleCount), not their titles or URLs. - No absolute search volumes. Trends is relative; the trending list gives volume buckets ("200K+"), exactly as Google shows them.
- When Google throttles, the Actor switches connection, retries later and, if a row still cannot be fetched, delivers an error row that explains why — never charged. All error rows are also listed in the
ERRORSrecord of the run. - Invalid input (an unknown country code, a bad date range) ends the run in green with an error row that says what to fix, and nothing is charged.
FAQ
Can I use topics instead of search terms? Yes: put a Knowledge Graph id such as /m/019qb_ in keywords.
Which time ranges are supported? Past hour, 4 hours, day, 7 days, 30 days, 90 days, 12 months, 5 years, since 2004, or custom dates (customTimeRange: "2025-01-01 2025-06-30").
How do I filter trending searches by category? Put Google Trends category ids in trendingCategories. Google's own trending list ignores the category, so the Actor filters it for you, and filtered-out items are not charged.
Why are some keywords marked partial? Their time series arrived but an optional block (regions or related queries) did not after every retry. Partial rows are delivered free.