Google Trends Scraper - Interest by Keyword & Country · Apify
Google Trends Scraper avatar

Google Trends Scraper

Pricing

from $0.30 / 1,000 results

Go to Apify Store
Google Trends Scraper

Google Trends Scraper

Extract search interest data from Google Trends: interest over time, interest by region, related queries, and daily trending searches. Compare keywords across countries in one run. No API key needed.

Pricing

from $0.30 / 1,000 results

Rating

5.0

(1)

Developer

Actor stats

0

Bookmarked

33

Total users

5

Monthly active users

5 days ago

Last modified

Features

Limited permissions

Share

google trends

Extract search interest data from Google Trends without an API key. Google Trends Scraper returns interest over time, interest by region, related queries, related topics, and daily trending searches for any keyword across any country — all as flat, CSV-ready records. Compare a keyword across countries in a single run.

Try it free — your first $5 of usage is on Apify. No credit card required.

Google Trends Scraper is an unofficial Google Trends API that extracts search interest data using internal endpoints — no browser needed, making it fast and cheap. Unlike pytrends or manual exports, it runs in the cloud with automatic retries, proxy support, and multi-country batching.

Use Google Trends Scraper to:

  • 🔍 SEO & content strategy — find rising search terms to target with new content
  • 📊 Market research — compare brand or product interest across countries and time periods
  • 📈 Competitive analysis — track how competitor keywords trend vs. yours over time
  • 📅 Seasonal planning — identify when interest peaks for seasonal products or topics
  • 🔄 Automate trend monitoring — schedule runs, set up webhooks, and keep your datasets fresh

The Apify platform gives Google Trends Scraper built-in scheduling, API access, proxy rotation, and integrations with Make, Zapier, Google Sheets, and more — all out of the box.

For each keyword and country, the scraper returns these types of structured data:

📈 Interest over timeWeekly or daily search interest values (0–100 scale) with timestamps
🗺️ Interest by regionBreakdown by state, province, or subregion with region codes
🔍 Related queriesTop and rising related search terms with ranking scores
🧩 Related topicsTop and rising related topics with topic ID and type (Google sometimes returns none)
🔥 Daily trending searchesWhat's trending right now — traffic estimates and related news

All results are flat, one-row-per-data-point records that export cleanly to CSV or Excel. No nested JSON to untangle.

Each row includes a dataType field (timeline, geo, relatedQuery, relatedTopic, or trending) for easy filtering. If Google returns no widgets for a request, the run adds a row with dataType: "error" and an error message instead.

Extracting Google Trends data takes under two minutes:

  1. Create a free Apify account at apify.com — your first $5 is free
  2. Open Google Trends Scraper in Apify Console or click Try for free on this page
  3. Add your keywords — up to 5 keywords are compared side by side per batch
  4. Select countries — pick one or more countries for multi-geo analysis
  5. Choose a time range — from past hour to since 2004, or a custom date range
  6. Click Start and wait a few seconds
  7. Download your results in JSON, CSV, Excel, XML, or HTML — or access them via API

Input example — keyword comparison

Compare two keywords across two countries:

{
"keywords": ["artificial intelligence", "machine learning"],
"geos": ["US", "ES"],
"timeframe": "today 12-m"
}

Input example — compare a topic across countries

Compare search interest for one topic in three countries (each country is analyzed separately and adds its own rows):

{
"keywords": ["electric car"],
"geos": ["US", "GB", "DE"],
"timeframe": "today 12-m",
"maxResults": 500
}

Get keyword analysis plus daily trending topics:

{
"keywords": ["bitcoin"],
"geos": ["US", "GB"],
"timeframe": "today 3-m",
"includeTrending": true
}

Input parameters

ParameterTypeDefaultDescription
keywordsstring[]requiredSearch terms or topic IDs. Up to 5 are compared per group; more are batched in groups of 5
geosstring[]worldwideISO country codes (e.g. US, ES, DE). Empty = worldwide. Each country is analyzed separately
maxResultsinteger500Maximum rows across all keywords/countries (1–100000)
timeframestringtoday 12-mTime range for analysis (see table below)
categoryinteger0Google Trends category ID (0 = all categories)
propertystringWeb SearchGoogle service: Web, Images, News, YouTube, or Shopping
includeTrendingbooleanfalseAlso fetch daily trending searches per country
hlstringen-USLanguage for results display
tzinteger0Timezone offset from UTC in minutes
maxRetriesinteger3Retries on rate limits (429) or server errors (0–10)
rotateProxyPerGeobooleanfalseFresh proxy IP for each country (needs a proxy)
proxyConfigurationobjectApify Proxy (Residential, US) pre-filled in the formOptional proxy settings

Available time ranges

ValuePeriodGranularity
now 1-HPast hourPer minute
now 4-HPast 4 hoursPer minute
now 7-dPast 7 daysDaily
today 1-mPast 30 daysDaily
today 3-mPast 90 daysDaily
today 12-mPast 12 monthsWeekly
today 5-yPast 5 yearsWeekly
allSince 2004Monthly
2024-01-01 2024-12-31Custom rangeVaries

Output example

Each result is a structured JSON object with a dataType field. Here are samples from real runs:

timeline — Interest over time

{
"dataType": "timeline",
"keyword": "artificial intelligence",
"geo": "US",
"date": "Jun 1 – 7, 2026",
"dateAxis": "1 jun 2026",
"timestamp": "1748736000",
"value": 88,
"timeframe": "today 3-m",
"category": 0,
"property": "web",
"hl": "en-US",
"scrapedAt": "2026-08-28T16:00:00Z"
}

geo — Interest by region

{
"dataType": "geo",
"keyword": "artificial intelligence",
"geo": "US",
"regionName": "California",
"regionCode": "US-CA",
"value": 100,
"timeframe": "today 12-m"
}
{
"dataType": "relatedQuery",
"keyword": "artificial intelligence",
"geo": "US",
"query": "ai chatbot",
"value": 100,
"formattedValue": "100",
"ranking": "top"
}

When you compare several keywords, related queries are returned for each keyword, and the keyword field tells you which one each row belongs to.

⚠️ Rising queries can include automated traffic. For tech terms (e.g. "web scraping"), Google sometimes lists generic queries such as "best pizza near me" as Breakout — they come from bots and scraper demos, not from real interest in your keyword. The Actor returns them exactly as Google does (nothing is filtered), so review ranking: "rising" rows before using them.

{
"dataType": "trending",
"geo": "US",
"title": "ChatGPT update",
"approxTraffic": "500K+",
"pubDate": "Thu, 28 Aug 2026 10:00:00 -0700",
"newsCount": 3,
"news": [
{
"title": "ChatGPT launches new feature",
"url": "https://example.com/article",
"source": "TechCrunch"
}
]
}

Download results in JSON, CSV, Excel, XML, or HTML from the Output tab, or pull them programmatically using the Apify API.

$0.30 per 1,000 data points (each dataset row is one data point), plus an Actor start fee of $0.002 per GB of memory (one event per GB, minimum one; the default 1 GB run costs $0.002). Your $5 free trial credit covers ~16,000 data points. Set maxResults to cap the cost of a run.

Tips for best results

  1. Compare competitors — put up to 5 brands or products in the keywords list to get comparative data in a single run
  2. Use topic IDs — instead of "python" (ambiguous: snake or language?), use topic ID "/m/05z1_" for Python the programming language. Find topic IDs in Google Trends autocomplete or the URL
  3. Pick the right timeframe — need daily granularity? Use today 3-m. Need the big picture? Use today 5-y or all
  4. Multi-country runs — add all countries in one run instead of running separately. The scraper retries on rate limits (429) with a new proxy session when a proxy is configured
  5. Set maxResults high enough for long timeframes — rows are written in order (timeline → regions → related), so with 5 keywords and today 5-y a low limit is used up by the weekly timeline before regions and related queries arrive. Use 1500 or more for 5-year runs
  6. Rate limits — Google sometimes rate-limits related queries. The Actor waits and retries with a new proxy session; if a widget is still missing, the run finishes normally and lists it in the WARNINGS record of the run's key-value store

Integrations

Connect Google Trends Scraper to your workflow:

  • API — call programmatically via Apify API (Python, JavaScript, cURL)
  • Webhooks — trigger actions when a run completes
  • Zapier / Make — connect to 5,000+ apps
  • Google Sheets — export directly to a spreadsheet
  • Schedule — run daily, weekly, or monthly to track trends over time

Use with Claude/ChatGPT (MCP)

You can call Google Trends Scraper from an AI assistant through the Apify MCP server.

  • Hosted server (all Actors you pick): https://mcp.apify.com
  • Only this Actor: https://mcp.apify.com?tools=actors,rastriq/google-trends-scraper
  • Local client: run npx @apify/actors-mcp-server --tools rastriq/google-trends-scraper with your APIFY_TOKEN set as an environment variable.

Example prompts:

  1. "Use Google Trends Scraper to compare search interest in 'electric car' in the US, UK and Germany over the past 12 months."
  2. "Get the top and rising related queries for 'web scraping' in the US from Google Trends."
  3. "Fetch today's trending searches in Spain and Mexico with Google Trends Scraper."

Explore the full Rastriq intelligence portfolio on Apify Store:

ActorDescription
SimilarWeb Data ExtractorExtract website traffic, rankings, and audience data
TikTok Trends ScraperTrack trending content on TikTok alongside your Google Trends data
TikTok Ad Library ScraperExtract ad creatives, targeting, and performance data
Amazon Reviews ScraperExtract product reviews and ratings from 14 Amazon marketplaces

Copy to your AI assistant

Copy the Apify Store URL for this Actor and paste it into ChatGPT, Claude, or any LLM with web access:

https://apify.com/rastriq/google-trends-scraper

The model will read the Actor description, input schema, and field list — then help you build the right API call or integration.

About the data

This Actor is built and maintained by Rastriq, a data intelligence company specializing in structured extraction for market research and competitive analysis. Browse our full field reference and methodology.

Frequently Asked Questions

Google does not offer a public API for Google Trends. Google Trends Scraper acts as an unofficial API by extracting data from Google Trends' internal endpoints — the same ones the website uses. No API key or authentication needed.

Google Trends Scraper uses the same internal endpoints as pytrends, but runs in the cloud with automatic retries, proxy support, and multi-country batching. No Python environment or server needed — just configure and run.

Can I compare search interest across countries?

Yes. Put your topic in keywords and several country codes in geos. The scraper runs a separate analysis per country, so every country adds its own timeline, region and related-query rows. Raise maxResults so the limit is not used up by the first country.

Can I compare more than 5 keywords?

Google Trends limits comparisons to 5 keywords at a time. If you provide more than 5, the scraper automatically batches them into groups of 5. Note that values between different batches use different normalization scales.

Why are values 0–100 instead of actual search volumes?

Google Trends normalizes data to a 0–100 scale relative to the peak value in your selected timeframe and region. A value of 100 means peak popularity, not 100 searches. This is how Google Trends works — it's not a limitation of the scraper.

Google Trends Scraper extracts publicly available data from Google Trends. As with any data collection, review Google's Terms of Service before using scraped data commercially. For guidance, see Apify's blog on the legality of web scraping.

I found a bug or my run failed. Where do I report it?

Please open an issue in the Issues tab. Include your input configuration and run ID so we can investigate quickly.