Google Trends Scraper — Fast, No Browser Needed avatar

Google Trends Scraper — Fast, No Browser Needed

Pricing

from $1.50 / 1,000 results

Go to Apify Store
Google Trends Scraper — Fast, No Browser Needed

Google Trends Scraper — Fast, No Browser Needed

Browserless Google Trends scraper: interest over time, interest by region, related queries & topics, and daily trending searches. No Playwright, no browser — fast and cheap.

Pricing

from $1.50 / 1,000 results

Rating

0.0

(0)

Developer

Mantas

Mantas

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

5 days ago

Last modified

Categories

Share

Scrape Google Trends data via Google's own internal JSON API — no browser, no Playwright, no CAPTCHAs. Get interest over time, interest by region, related queries and related topics for any keyword, geo and time range. A fast alternative to the official Google Trends UI and other browser-based scrapers.

Why this Actor

  • Fast — hits Google's JSON API directly instead of rendering a browser. A typical keyword completes in seconds.
  • Reliable — automatic retries with exponential backoff on rate limits (HTTP 429), a real cookie jar (NID, AEC, CONSENT, SOCS) that survives Google's EU consent redirects, and you're never charged for empty results. Optional Apify Proxy to escape IP soft-blocks.
  • Clean output — structured records with typed values, ready for Excel, Looker Studio, or an LLM pipeline.

What you get

Per keyword (configurable via Data types):

Data typeDescription
INTEREST_OVER_TIMESearch interest over the selected time range (0–100 scale)
INTEREST_BY_REGIONInterest broken down by country / region
RELATED_QUERIESTop and rising related search queries with interest values
RELATED_TOPICSTop and rising related topics

Input

FieldTypeDescription
searchTermsarrayKeywords to analyze. Multiple keywords = comparison in one run.
startUrlsarrayOptional — paste Google Trends explore URLs (keyword, geo, date parsed automatically). Comparison URLs with comma-separated terms (?q=react,vue) are split into individual keywords. Overrides searchTerms when provided.
geostringISO country code (e.g. US, LT, DE, GB). Empty = Worldwide.
timeRangeselectnow 1-Hall (since 2004). Default: today 12-m.
customTimeRangestringExact range as YYYY-MM-DD YYYY-MM-DD (takes precedence).
categoryintegerGoogle Trends category ID (0 = all).
dataTypesmulti-selectWhich datasets to return per keyword.
maxItemsintegerCap on output records (0 = unlimited).

Example input

{
"searchTerms": ["chatgpt", "claude"],
"geo": "US",
"timeRange": "today 3-m",
"dataTypes": ["INTEREST_OVER_TIME", "RELATED_QUERIES"]
}

Output

One record per (keyword × data type). Example:

{
"type": "INTEREST_OVER_TIME",
"keyword": "chatgpt",
"geo": "US",
"timeRange": "today 3-m",
"comparisonGroup": "US|today 3-m|chunk-0",
"data": [
{ "date": "May 7, 2026", "value": 95 },
{ "date": "May 14, 2026", "value": 92 }
]
}
{
"type": "RELATED_QUERIES",
"keyword": "chatgpt",
"geo": "US",
"timeRange": "today 3-m",
"comparisonGroup": "US|today 3-m|related:chatgpt",
"top": [{ "query": "openai chatgpt", "value": 100, "formattedValue": "100", "link": "/trends/explore?q=..." }],
"rising": [{ "query": "chatgpt wrapper", "value": null, "formattedValue": "Breakout", "link": "/trends/explore?q=..." }]
}

comparisonGroup identifies the explore request a record came from. Google normalizes interest to 0–100 per request, so only records with the same comparisonGroup are mutually comparable.

Export to CSV / JSON / XLSX from the dataset, schedule recurring runs, or call it via API for programmatic access.

Use cases

  • SEO & content strategy — find rising queries before they peak
  • Market research — compare brand interest across regions
  • Trend monitoring — scheduled runs to track momentum over time
  • AI/LLM pipelines — structured trend data as model input

Cost

Pay-per-result: $1.50 per 1,000 dataset records, plus $0.01 per Actor start. You are charged only for records pushed to the dataset — never for empty results. Run a small test first — a single keyword with all data types costs cents.

Notes

  • Interest values are Google's normalized 0–100 scale.
  • More than 5 terms? Values across chunks are NOT comparable. Google caps comparisons at 5 terms per explore, so larger groups are split into multiple requests — each normalized to 0–100 independently. A 95 in chunk-0 and a 60 in chunk-1 are on different scales. Only compare records that share the same comparisonGroup.
  • RELATED_TOPICS may return an empty list for some keyword/geo combinations — Google doesn't always have topic data.
  • The Actor uses Google's public Trends JSON endpoints. Usage falls under Google's Terms of Service for the Trends service.

Development

npm install
apify run --input-file /tmp/input.json # test locally
apify push # deploy to Apify