Google Trends Scraper & API with Search Volume
Pricing
from $10.00 / 1,000 keyword reports
Google Trends Scraper & API with Search Volume
Google Trends scraper that adds estimated absolute searches per day, week or month to the 0-100 index (Trends x Google Ads volume). Interest over time, by region, related queries and topics (rising + top), compare up to 5 keywords and batch thousands. Web, YouTube, News, Images and Shopping.
Pricing
from $10.00 / 1,000 keyword reports
Rating
0.0
(0)
Developer
vncntlabs Labs
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
19 hours ago
Last modified
Categories
Share
A Google Trends scraper that tells you how many people actually searched. Google Trends only shows a relative 0-100 index; this Actor scales each keyword's Trends curve to its Google Ads monthly volume, so you get 'about 152,000 searches in the week of 12 April' instead of '100'. Get interest over time, interest by region, rising and top related queries and topics, and compare up to 5 keywords, for one keyword or thousands, on Web, YouTube, News, Images or Shopping search.
Each keyword report has:
- Interest over time: Google's 0-100 index for every point, plus
estimatedSearchesfor that hour, day, week or month. - Totals and averages:
estimatedTotalSearchesfor the periodestimatedMonthlySearches(average per month)- peak, latest value, change % and the last month's Google Ads volume
- Interest by region: states or regions (or countries for Worldwide), ranked 0-100.
- Related queries and related topics, top and rising, with a Breakout flag.
- Comparisons: put 2-5 keywords on one line separated by commas, e.g.
pickleball, padel, tennis. You get Google's comparison chart and region winners. When every keyword has an estimate, you also get its absolute searches and a share of search %. - Any location: countries, states and regions (
US-CA), or Worldwide. Timeframes from the past hour to 2004-present, or custom dates. - Search types: web, YouTube, News, Images and Google Shopping. Optional Trends category.
- Batches: up to 500 keywords x 10 locations per run.
Data comes through DataForSEO's licensed Google Trends API, so there are no proxies, captchas or blocks. A run usually takes 1-3 minutes, because requests go through a queue.
Input example
{"keywords": ["pickleball, padel, tennis", "golf"],"locations": ["United States", "United Kingdom"],"timeframe": "past_12_months"}
Output example (keyword report, shortened)
{"type": "keyword", "keyword": "pickleball", "location": "United States", "timeframe": "past_12_months","granularity": "week", "status": "ok","estimatedMonthlySearches": 681568, "estimatedTotalSearches": 8150829, "estimateConfidence": "high","googleAdsMonthlyVolume": 673000, "googleAdsMonth": "2026-09","averageInterest": 68.85, "peakInterest": 100, "peakDate": "2026-04-12", "latestInterest": 57, "changePct": 11.5,"interestOverTime": [{"date": "2025-10-12", "dateTo": "2025-10-18", "value": 54, "estimatedSearches": 120668,"isPartial": false}],"estimate": {"method": "direct", "scalePerIndexPoint": 9896.05, "calibrationMonths": ["2025-11", "...", "2026-09"],"fitErrorPct": 8.6, "confidence": "high", "volumeSource": "google_ads_via_dataforseo_labs"},"interestByRegion": [{"geoId": "US-WY", "geoName": "Wyoming", "value": 100}],"relatedQueries": {"top": [{"query": "pickleball paddle", "value": 100}],"rising": [{"query": "pilla pickleball glasses", "growthPct": 3550, "isBreakout": false}]},"relatedTopics": {"top": [{"topicId": "/m/063wkj", "title": "Pickleball", "topicType": "Sports", "value": 100}]},"trendsUrl": "https://trends.google.com/trends/explore?hl=en&geo=US&date=today%2012-m&q=pickleball"}
Use the Keyword reports and Comparisons views for tables. Turn on one row per data point to get flat rows (keyword, date, value, estimatedSearches) for spreadsheets and charts.
How the estimates work
-
Google Trends gives each keyword a relative index. 100 is the busiest point in the chart.
-
Google Ads gives the exact keyword's absolute monthly searches. We fetch about 7 years of monthly volumes for countries, or 4 years for Worldwide and regions.
-
For each keyword we take the latest 12 complete months that both sources cover and compute:
scale = sum of Google Ads monthly volumes ÷ sum of monthly average Trends indexThis is the number of monthly searches per index point.
-
Each point becomes searches for its own period. Every day in the point adds
scale × index ÷ days in that month, so a weekly point is the sum of its 7 days. -
Short timeframes (7, 30 or 90 days, or custom ranges under 4 months) don't cover enough whole months to calibrate directly. They are bridged:
- a 270-day daily series of the same keyword is calibrated as above;
- the short series is then matched to it over the complete days both series cover.
-
Disagreeing months are left out. Sometimes Google Trends shows a spike that Google Ads does not, for example a viral moment. When a month's index-to-volume ratio is more than 2.5x away from the median ratio, it is not used for the scale. It is listed in
estimate.outlierMonths, with a note, and confidence is lowered. -
Quality signals, so you can judge every estimate:
fitErrorPctis the average difference between our monthly fit and Google Ads. About 10% is typical, because Google Ads volumes are rounded buckets.confidenceis high, medium or low. It is lowered for short (bridged) timeframes, for category filters, and when fewer than 6 months could be calibrated.estimate.calibrationlists the month-by-month fit.
Limits:
- Estimates are for web search only, because Google Ads measures web searches. YouTube, News, Images and Shopping return the index only.
- Timeframes under 7 days return the index only.
- Keywords too rare for Google Ads, and periods before Google Ads history, return the index only, with a note.
- Keywords for which Google Ads withholds volumes return the index only. Google reports 0 for some topics, such as crypto (e.g. "bitcoin").
- Trends counts searches containing the term, while Google Ads counts the exact keyword. The scale absorbs this difference, but a strong shift in how people phrase searches can bias older periods.
- With a category filter, the level is still anchored to all searches for the keyword.
Pricing (pay per event)
| Event | When it is charged |
|---|---|
| Actor start | once per run |
keyword-trend | one keyword × location report with Trends data. It includes interest over time, absolute estimates, regions and related queries/topics. |
comparison | one comparison chart (2-5 keywords) × location |
volume-lookup | one Google Ads volume lookup for a country (up to 700 keywords), only when used for estimates |
volume-lookup-live | one live Google Ads lookup for Worldwide or a region (up to 1,000 keywords), only when used for estimates |
You are not charged for:
- keywords with no Trends data;
- failed requests;
- skipped inputs;
- flat data-point rows;
- anything beyond your run's maximum charge. The run stops cleanly and lists what it didn't process.
Apify free plan: up to 3 keywords, 1 location and 1 comparison per run. Absolute estimates are available for countries only on the free plan.
Use from AI agents (MCP)
AI assistants such as Claude, ChatGPT and Cursor can run this Actor through Apify's MCP server (https://mcp.apify.com). The agent can look up the Actor, read its input schema, run it and read the results. Runs use your own Apify account and are charged at the prices on this page.
- Actor name:
vncntlabs/google-trends-search-volume - Server URL with only this tool:
https://mcp.apify.com?tools=vncntlabs/google-trends-search-volume. The defaulthttps://mcp.apify.comalso works; the agent can then search Apify Store and call the Actor by name. - Claude (desktop app or claude.ai): Settings > Connectors > Add custom connector, paste the server URL, then sign in to Apify.
- ChatGPT: turn on Developer mode, then Settings > Apps & Connectors > Create, paste the server URL and choose OAuth.
- Cursor: run
/add-plugin apifyin Cursor chat and connect the Apify MCP server under Cursor Settings > Tools & MCPs, or add the server tomcp.json:
{ "mcpServers": { "apify": { "url": "https://mcp.apify.com?tools=vncntlabs/google-trends-search-volume" } } }
Example prompt: "Use the Apify Actor vncntlabs/google-trends-search-volume to compare pickleball, padel and tennis in the United States over the past 12 months and tell me which one is growing fastest."
To cap the cost of an agent's run, it can pass maxTotalChargeUsd in the run options.
FAQ
Why do numbers differ from trends.google.com? Google samples Trends data, so two requests can differ slightly. The Actor returns exactly what Google returned for that request; trendsUrl opens the same chart.
Why are comparison values small for some keywords? In a comparison, every keyword shares one scale, set by the biggest keyword's peak. Each keyword's own report uses its own 0-100 scale and has full resolution. The absolute estimates come from those per-keyword reports.
Is this the official Google Trends API? No. Google's Trends API is still a closed alpha. This Actor uses DataForSEO's licensed API. It is not affiliated with or endorsed by Google.