Google Trends API & Scraper
Pricing
from $1.50 / 1,000 keywords
Google Trends API & Scraper
Find out what people search for, and when. For any keywords: growth, seasonal peaks and the date to publish by, breakout queries and top regions, compared on one scale. Plus Trending Now: every search trending in any country, with volume and related searches. Export to Excel or API.
Pricing
from $1.50 / 1,000 keywords
Rating
0.0
(0)
Developer
Kwerix
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
7 hours ago
Last modified
Categories
Share
Google Trends API
Find out what people search for, and when. For any list of keywords, this Google Trends API gives you interest over time, interest by region, rising and breakout queries and a comparison of any number of keywords on one scale, plus a ready-made summary for every keyword: is it growing, is it seasonal, when is the next peak and when should you publish.
π₯ New: Trending Now. Get every search trending in a country right now (about 300 in the US for the last 24 hours, 1,900 for the last 7 days) with search volume, increase, categories and related searches.
π‘ Try it free: Apify's monthly free credit covers about 3,300 keywords or 10,000 trending searches. After that you pay $1.50 per 1,000 keywords or $0.50 per 1,000 trends, with no start fee, no browser and no Google account needed.
π What is Google Trends API?
Google Trends API is an Apify Actor that turns Google Trends into clean, structured data. Give it keywords, a location and a time range, and it returns one row per keyword in JSON, CSV or Excel with:
| π Interest over time | πΊοΈ Interest by country, region or US metro |
| π Rising and breakout queries | π Top related queries |
| βοΈ Any number of keywords on one scale | ποΈ Seasonality: peak months and next peak |
| π Publish-by date for seasonal content | π Trend per year and year-over-year change |
| π Web, YouTube, News, Images and Shopping search | π Any country, time range and category |
| π₯ Trending Now: what is trending today, by country | π Paste Google Trends URLs as input |
π€ Why use this Google Trends API?
β An API that works today. Google's official Trends API is an alpha with access by application only, and pytrends was archived in April 2025. This Actor handles Google's rate limiting (HTTP 429) for you and switches to residential proxies only when needed.
βοΈ More than 5 keywords on one scale. Google compares at most 5 terms at a time. Turn on Compare all keywords and every keyword is batched with a shared anchor term and rescaled to one 0β100 scale, so you can rank 50 or 500 keywords by relative popularity.
π§ Answers, not just timelines. Each row already tells you whether the keyword is seasonal, which months peak, when the next peak is, how fast it is growing and which queries are breaking out right now.
π€ Built for pipelines, spreadsheets and AI agents. One compact row per keyword, stable field names and table views in the Console. The full timeline is one switch away.
π― What can you do with Google Trends data?
ποΈ Plan an SEO content calendar. Publish seasonal content 45 days before demand peaks, so pages collect rankings and user signals before the peak.
π Find new topics early. Rising and breakout queries show new subtopics before keyword tools report any volume.
π₯ Catch trends while they happen. Trending Now lists what a country is searching for right now, so you can publish or react while demand is peaking.
βοΈ Prioritize keywords. Rank a long keyword list by relative popularity on one scale.
π Target the right places. Find the countries, regions or US metros where a topic is searched most.
ποΈ Research products and markets. Growth trend and year-over-year change for products, brands and categories, across web, YouTube, News, Images and Google Shopping search.
π How do I use Google Trends API?
- Create a free Apify account.
- Open Google Trends API & Scraper and click Try for free.
- Pick a mode: Keyword analysis (your keywords, or Google Trends URLs) or Trending Now (countries and a time window).
- Switch on what you need: related queries, interest by region, comparison on one scale or the full timeline.
- Click Start and download the results as JSON, CSV or Excel, or read them via API.
π° How much does it cost?
| Mode | Price | Example |
|---|---|---|
| Keyword analysis | $1.50 per 1,000 keywords | 100 keywords = $0.15 |
| Trending Now | $0.50 per 1,000 trends | US, last 24 hours (β300 trends) β $0.15 |
One charge per result row, whatever data you switch on. There is no charge per run start, and keywords that fail are never charged (they are listed in the FAILED_KEYWORDS record of the run's key-value store).
Apify's free plan includes $5 of credit every month, enough for about 3,300 keywords or 10,000 trends.
β¬οΈ Input example
{"keywords": ["sunscreen", "retinol", "niacinamide", "azelaic acid"],"geo": "US","timeRange": "today 5-y","includeRelatedQueries": true,"includeInterestByRegion": true,"compareKeywords": true,"anchorKeyword": "retinol"}
timeRange accepts the Trends presets (now 7-d, today 12-m, today 5-y, all...) or a custom customTimeRange like 2020-01-01 2024-12-31. Seasonality and year-over-year need at least 2 years.
You can also paste Google Trends URLs: each keyword in the URL is analyzed with the URL's own location, time range, search type and category.
{ "trendsUrls": ["https://trends.google.com/trends/explore?q=sunscreen,retinol&geo=US&date=today%205-y"] }
For Trending Now:
{ "mode": "trending", "trendingGeos": ["US", "GB", "ES"], "trendingHours": "24", "trendingCategories": ["Sports", "Technology"] }
β¬οΈ Output example
{"keyword": "sunscreen","geo": "US","timeRange": "today 5-y","averageInterest": 26.3,"trendSlopePctPerYear": 21.6,"yoyChangePct": 55.9,"seasonality": {"isSeasonal": true,"peakMonths": ["Jun", "May", "Apr"],"nextPeakDate": "2027-06-08","publishBy": "2027-04-24","publishWindowOpen": true},"breakoutQueries": ["beauty of joseon", "beauty of joseon sunscreen", "joseon sunscreen", "anua sunscreen"],"interestByRegion": [{ "geoCode": "US-WY", "geoName": "Wyoming", "value": 100 },{ "geoCode": "US-HI", "geoName": "Hawaii", "value": 80 }],"comparison": { "anchor": "retinol", "averageOnCommonScale": 26.27, "rank": 1, "of": 12 },"trendsUrl": "https://trends.google.com/trends/explore?q=sunscreen&date=today+5-y&geo=US"}
Trending Now returns one row per trend:
{"type": "trending","keyword": "wnba playoffs","geo": "US","isActive": true,"startedAt": "2026-09-29T12:10:00.000Z","searchVolume": 5000000,"searchVolumeLabel": "5M+","increasePct": 1000,"categories": ["Sports"],"relatedQueries": ["aces vs fever", "fever", "wnba", "wnba playoffs bracket"],"trendsUrl": "https://trends.google.com/trends/explore?q=wnba+playoffs&date=now+7-d&geo=US"}
π What each field means
| Field | What it means |
|---|---|
averageInterest, latestInterest, peakInterest, peakDate | Google's 0β100 relative interest for the keyword over the chosen range |
trendSlopePctPerYear | Linear trend of interest, as % of the average per year |
yoyChangePct | Average of the last 12 months vs the 12 months before |
seasonality.peakMonths, monthlyProfile | Average interest per calendar month across years |
seasonality.isSeasonal | The monthly swing is large and the yearly peak lands in the same months year after year |
seasonality.nextPeakDate, publishBy | Next expected peak, and the date to publish by (peak minus the lead time, 45 days by default) |
breakoutQueries, risingQueries, topQueries | Related searches; Breakout means growth above +5000% |
interestByRegion | Relative interest by country, region or US metro area (DMA) |
comparison | Rank and average on the common scale when comparing keywords |
interestOverTime | Full timeline (weekly for 5 years, monthly for 2004βpresent, hourly or daily for short ranges). Off by default: turn on Full interest-over-time timeline to chart the data |
Google Trends values are relative, not search volumes: 100 is the peak of the term in the selected range and location.
π€ Use with AI agents (MCP)
AI agents can find and run this Actor through the Apify MCP server (https://mcp.apify.com): search for "google trends", read this page, call the Actor, then read the dataset.
- Minimal input:
{"keywords": ["sunscreen", "retinol"], "geo": "US"}. Defaults: past 5 years, related queries on, one compact row per keyword (no raw timeline), so results fit comfortably in a model's context. - Which field answers which question:
| Question | Field |
|---|---|
| Is this topic growing or declining? | trendSlopePctPerYear, yoyChangePct |
| Is it seasonal, and when does it peak? | seasonality.isSeasonal, seasonality.peakMonths, seasonality.nextPeakDate |
| When should content about it be published? | seasonality.publishBy, seasonality.publishWindowOpen |
| What is breaking out right now? | breakoutQueries, then risingQueries |
| Which of these keywords is most popular? | set compareKeywords: true, read comparison.rank and comparison.averageOnCommonScale |
| Where is it searched most? | set includeInterestByRegion: true, read interestByRegion |
| What is trending right now in a country? | {"mode": "trending", "trendingGeos": ["US"]}, read keyword, searchVolumeLabel, relatedQueries |
- Cost: $0.0015 per keyword, $0.0005 per trend. Cap a run with
maxTotalChargeUsdin the call options. - Values are Google's relative 0β100 index, not search volumes.
seasonalityisnullfor ranges shorter than 2 years, and the peak dates arenullwhen a keyword is not seasonal.
π Integrations
Run it from the Apify API or the Python and JavaScript clients, schedule it in the Console, and connect the results to Google Sheets, Make, Zapier or n8n. Results export to JSON, CSV or Excel.
π¦ Code examples on GitHub: Kwerix/google-trends-api has ready-to-run scripts in Python, JavaScript, cURL and MCP, including a seasonal content calendar and a Trending Now monitor.
β FAQ
Is there an official Google Trends API?
Google announced one in July 2025, but it is an alpha with access by application only. This Actor gives you Google Trends data today, without waiting for approval.
Can I use this Google Trends API in Python?
Yes. With the Apify Python client:
from apify_client import ApifyClientclient = ApifyClient("<YOUR_APIFY_TOKEN>")run = client.actor("kwerix/google-trends-api").call(run_input={"keywords": ["sunscreen", "retinol"], "geo": "US"})for row in client.dataset(run["defaultDatasetId"]).iterate_items():print(row["keyword"], row["trendSlopePctPerYear"], row["breakoutQueries"][:3])
Can I paste a Google Trends URL?
Yes. Add explore URLs to Google Trends URLs; each keyword in them is analyzed with the URL's location, time range, search type and category.
What does Trending Now return?
Every search trending in the countries you choose over the last 4, 24 or 48 hours or 7 days, with Google's search volume bucket (e.g. 200K+), increase in %, categories, start and end time, and the related searches grouped into the trend. Filter by category or keep only active trends.
How many keywords can I compare?
Any number with Compare all keywords. Pick an anchor of medium popularity: terms that are tiny next to it lose precision and are flagged with lowPrecision.
Why do other Google Trends scrapers fail?
Google answers bursts of requests from one IP with HTTP 429. This Actor starts on the server's own connection and switches to rotating residential proxies as soon as Google rate-limits it, retrying the keyword on a fresh session.
Is it legal to scrape Google Trends?
Google Trends shows aggregated, anonymized search interest, and this Actor collects only that public data: no personal data and no login. Check Google's terms and your local regulations for your use case; this is not legal advice.
Does it return related topics?
Not at the moment: Google currently returns related topics empty through its API.
Found a bug or missing a feature?
Open an issue in the Issues tab. We read every one.