Google Trends Scraper: Interest, Related and Trending Now avatar

Google Trends Scraper: Interest, Related and Trending Now

Pricing

from $1.20 / 1,000 query with data

Go to Apify Store
Google Trends Scraper: Interest, Related and Trending Now

Google Trends Scraper: Interest, Related and Trending Now

Google Trends scraper for search terms and comparisons: interest over time, interest by region, related queries, plus the full Trending now list per country. Batch up to 2,000 queries, no charge for empty results.

Pricing

from $1.20 / 1,000 query with data

Rating

0.0

(0)

Developer

AgentToolWorks

AgentToolWorks

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

4 hours ago

Last modified

Categories

Share

This Actor is a Google Trends scraper, and a practical Google Trends API: give it search terms (matcha, cold brew) or comparisons of up to five terms (coffee, tea), and get one row per query with interest over time, interest by region (country, region, US metro or city) and related queries (top and rising), exactly as the Google Trends explore page shows them. Or read the full Trending now list of a country, one row per trending search, with its start time, search volume, categories and trend breakdown.

In short

  • What you get: interest over time, interest by region and related queries (top and rising) for up to 2,000 terms or comparisons per run, one row per query; or the whole Trending now list of a country, one row per search.
  • What it costs: $1.50 per 1,000 queries with data ($1.20 on Apify Business plans) plus $0.003 per run, platform usage included. A query Google has no data for is returned with the reason and never charged.
  • Why this one (Store data read 2026-10-05, prices read again 2026-10-13): on Apify's free plan, $1.50 where apify/google-trends-scraper charges $3.00 plus platform usage and data_xplorer $2.00 plus $0.025 per run; comparisons of up to 5 terms with related queries and regions, which data_xplorer does not offer; and 109 of our 110 runs succeeded on 2026-10-05 (the one failure was an empty input, refused by design), where the leader's 30-day success rate was 59.3%.

Batch up to 2,000 queries per run. Duplicates are dropped before any request, and a query Google has no data for is returned with the reason and never charged.

No Google account, no API key, no cookies from a signed-in browser: the Actor reads what Google Trends shows any logged-out visitor.

Google Trends scraper: search terms and comparisons in, one row per query out, plus the full Trending now list of a country, from two real runs

Two modes, one row type each.

Explore (one row per search term or comparison):

SectionWhat you get
Interest over timeOne point per date (or hour, or minute) and term, 0 to 100 relative to the chart's highest point, with Google's own date label and a flag on the last, still partial, point
AveragesGoogle's average per term over the period, for comparisons
Interest by regionOne point per region and term: countries, regions or states, US metro areas (DMA) or cities with coordinates, plus each term's share in a comparison
Related queriesTop (0 to 100) and rising (+2,000% or Breakout) for each term, with a link to each one on Google Trends
Related topicsOpt-in, see the limits: Google sends logged-out visitors an empty list for most queries
ContextThe time range Google resolved (2025-10-13 2026-10-13), the bucket it chose (WEEK), category, search type, a link to the same chart on trends.google.com, and a status (ok, partial, no_data, failed) with notes

Trending now (one row per trending search): the search, country or region, Google's volume bucket (2M+) and its lower bound as a number, increase in percent, when it started trending and when it stopped (or null while active), active flag, categories, the searches Google groups under it (its trend breakdown), and a link to it on Google Trends.

Every key is on every row, null or an empty list when Google gives nothing, so a CSV export always has the same columns.

  • Keyword and content research: rising queries around a topic, before they show up in keyword tools.
  • Product and market research: compare brands, products or categories on one 0 to 100 scale, by state or metro.
  • Seasonality: five years of weekly interest, or every month since 2004, for each term of a list.
  • News and social monitoring: what is trending in a country right now, refreshed on a schedule.
  • Data for AI agents and pipelines: one predictable JSON row per query, in long format (one element per date and term), the same shape for one term or five.
  1. Click Try for free (or Start) on this page and sign in to Apify.
  2. Keep What to read on Explore search terms. Type one search term per line, or a comparison of 2 to 5 terms separated by commas.
  3. Pick the Location (empty for worldwide, US, US-CA), the Time range and, if you want, a category or a search type (web, images, news, YouTube, Shopping).
  4. Click Start. When the run finishes, open the Output tab and pick the Queries, Interest over time, Interest by region or Related queries view, then export as JSON, CSV, Excel or XML, or read it through the API.
  5. For Trending now, set What to read to Trending now, list the countries, and open the Trending now view.

The Actor's input form in Apify Console: what to read, search terms, comparisons, Google Trends URLs, location and time range

Input

FieldWhat it does
modeexplore (default) or trendingNow.
searchTermsOne term per line, each read on its own. A topic ID such as /m/02vqfm works too.
comparisons2 to 5 terms per line, separated by commas, compared on one scale as on the Google Trends page.
startUrlsGoogle Trends explore URLs (https://trends.google.com/trends/explore?q=...). Each keeps its own terms, location, dates, category and search type.
geoEmpty for worldwide, a country (US, FR), a region (US-CA) or a US metro (US-CA-807).
timeRange, customTimeRangePast hour to "2004 to present", as on the page, or exact dates (2024-01-01 2024-12-31).
category, propertyA Google Trends category ID (71 is Food & Drink) and the search type: web, images, news, YouTube or Shopping.
sectionsInterest over time, interest by region and related queries by default; related topics opt-in. Same price whatever you pick.
regionResolution, includeLowVolumeRegionsCountries, regions, US metros or cities, and Google's own low-volume checkbox.
language, timezoneOffsetMinutesLanguage of Google's labels, and the time zone of hourly and daily buckets.
trendingGeos, trendingHours, trendingCategories, trendingActiveOnly, maxTrendingPerGeoTrending now mode: countries or regions, past 4, 24 or 48 hours or 7 days, Google's 19 categories, the "Active" filter, and an optional cap per country.
proxyauto (default): Apify datacenter IPs, one per parallel session, with residential IPs taking over a session that keeps failing. none is one IP, paced, and suited to a few queries only.

Up to 2,000 explore queries per run.

Example: two terms and a comparison in the United States, past 12 months (the run on this page).

{
"searchTerms": ["matcha", "cold brew"],
"comparisons": ["coffee, tea"],
"geo": "US",
"timeRange": "today 12-m"
}

Example: five years of weekly interest for a list of products, worldwide, YouTube search.

{
"searchTerms": ["air fryer", "stand mixer", "espresso machine"],
"timeRange": "today 5-y",
"property": "youtube"
}

Example: interest by US metro area for one term.

{
"searchTerms": ["snow tires"],
"geo": "US",
"regionResolution": "DMA",
"sections": ["interestByRegion"]
}

Example: Trending now in three countries over the past 24 hours, sports only.

{
"mode": "trendingNow",
"trendingGeos": ["US", "GB", "FR"],
"trendingHours": "24",
"trendingCategories": ["17"]
}

Output

The dataset holds one row per query (explore) or one row per trending search (Trending now), with five ready-made views in Apify Console and in the API:

  • Queries: query, status, location, time range, the period and bucket Google resolved, averages and notes.
  • Interest over time: one row per date and term, ready for a chart or a spreadsheet.
  • Interest by region: one row per region and term, with the share of each term in a comparison.
  • Related queries: one row per related query, top and rising.
  • Trending now: one row per trending search (Trending now runs).

Interest over time view of a real run in Apify Console: one row per week and term, with Google's date label, the interest value and the partial flag

Related queries view of the same run: for each term, the top and rising related queries with Google's value and a link to each one on Google Trends

Trending now view of a real run: the United States list over the past 24 hours, with search volume, increase, start time, categories and the trend breakdown

A row from the cloud run on this page (coffee, tea, United States, past 12 months, 2026-10-13; series shortened to their first and last points):

{
"query": "coffee vs tea",
"terms": ["coffee", "tea"],
"geo": "US",
"timeRange": "today 12-m",
"resolvedTimeRange": "2025-10-13 2026-10-13",
"timeResolution": "WEEK",
"category": 0,
"property": "web",
"regionResolution": "REGION",
"status": "ok",
"averages": [
{ "averageTerm": "coffee", "averageValue": 79 },
{ "averageTerm": "tea", "averageValue": 38 }
],
"interestOverTime": [
{ "date": "2025-10-12T00:00:00.000Z", "dateLabel": "Oct 12 - 18, 2025", "term": "coffee", "value": 64, "hasData": true, "isPartial": false },
{ "date": "2025-10-12T00:00:00.000Z", "dateLabel": "Oct 12 - 18, 2025", "term": "tea", "value": 34, "hasData": true, "isPartial": false },
{ "date": "2026-10-11T00:00:00.000Z", "dateLabel": "Oct 11 - 17, 2026", "term": "coffee", "value": 74, "hasData": true, "isPartial": true }
],
"interestByRegion": [
{ "regionCode": "US-WY", "regionName": "Wyoming", "latitude": null, "longitude": null, "term": "coffee", "value": 100, "hasData": true, "sharePercent": 71 },
{ "regionCode": "US-WY", "regionName": "Wyoming", "latitude": null, "longitude": null, "term": "tea", "value": 100, "hasData": true, "sharePercent": 29 }
],
"relatedQueries": [
{ "term": "coffee", "ranking": "top", "relatedQuery": "coffee near me", "relatedValue": 100, "relatedLabel": "100", "relatedUrl": "https://trends.google.com/trends/explore?q=coffee+near+me&date=today+12-m&geo=US" },
{ "term": "tea", "ranking": "rising", "relatedQuery": "how to make cold brew tea", "relatedValue": 2000, "relatedLabel": "+2,000%", "relatedUrl": "https://trends.google.com/trends/explore?q=how+to+make+cold+brew+tea&date=today+12-m&geo=US" }
],
"relatedTopics": [],
"notes": [],
"trendsUrl": "https://trends.google.com/trends/explore?date=today+12-m&geo=US&q=coffee%2Ctea&hl=en-US",
"scrapedAt": "2026-10-13T14:34:49.917Z"
}

A Trending now row from the other run on this page (United States, past 24 hours, 467 searches; breakdown shortened):

{
"trend": "spacex launch",
"geo": "US",
"hours": 24,
"searchVolume": 100000,
"searchVolumeLabel": "100K+",
"increasePercent": 1000,
"startedAt": "2026-10-13T09:00:00.000Z",
"endedAt": null,
"isActive": true,
"categories": ["Business and Finance", "Science"],
"relatedSearches": ["spacex launch", "rocket launch today", "spacex launch today", "spacex rocket launch", "space x", "heartland"],
"exploreUrl": "https://trends.google.com/trends/explore?q=spacex+launch&date=now+7-d&hl=en-US&geo=US",
"scrapedAt": "2026-10-13T14:35:05.791Z"
}

Run summary

The run's key-value store holds a SUMMARY record: one report per query (status, reason, requests, HTTP 429 answers, seconds), the counts of ok, partial, no_data and failed, how many rows were charged and how many were free, duplicates skipped, requests sent through residential IPs, and bytes read. A missing result is never silent.

Limits worth knowing before you run it

  • Related topics are empty for logged-out visitors. Google sent an empty related-topics list to every logged-out client we tried (plain HTTP, headless and headful Chrome, Apify datacenter and residential IPs), while a signed-in browser showed topics for the same query. The Actor never signs in, so related topics are off by default; turned on, they are returned only when Google sends them, and a note says so. Related queries, interest over time and by region matched what a signed-in browser showed.
  • City-level regions can be thinner than a signed-in browser sees. When Google has too little data, the row says so.
  • Google Trends numbers are samples. The same query read twice can move by a point: coffee, tea gave averages of 78 and 37 at 14:15 UTC and 79 and 38 at 14:34 on 2026-10-13 (a signed-in browser showed 78 and 37), and the order of rising queries changed between two loads in the same signed-in browser. Values are relative (0 to 100), never search volumes.
  • Rising queries are Google's, noise included. For coffee in the US over 12 months, Google listed home workout routines and sports scores today among the top rising queries, in our logged-out answers and in a signed-in browser alike. The Actor returns what Google lists.
  • Speed depends on Google's rate limit. Google answers HTTP 429 per IP. The same three queries took 126 s (27 of 79 requests answered 429, residential fallback used) and then 6 s (no 429) nineteen minutes apart on 2026-10-13. Every query still ends with a row and a status.
  • No proxy means one IP, paced at one request per second: Google refuses a single IP for over an hour after about 140 quick requests. Keep auto for more than a few queries.
  • Trending now needs a country: Google offers no worldwide list.
  • Five terms per comparison, as on Google Trends.

Read on 2026-10-05 from the public Store data of both Actors (their pricing, run statistics, input schemas, READMEs, reviews and issues). We did not run either of them. Our figures are our own Apify cloud runs.

apify/google-trends-scraperdata_xplorer/google-trends-fast-scraperThis Actor
Price per 1,000 results$3.00 on the free tier (down to $0.10 on Diamond), plus platform usage, 4 GB default memory$2.00 (down to $0.50), plus $0.025 per run start since 2026-10-10 (read 2026-10-13)$1.50 per 1,000 queries with data, plus $0.003 per run start, platform usage included
Empty result chargedyes (reviews: a costly test run with no result)not publishednever: no_data and failed rows are free
30-day run success59.3% of 21,396 runs (4,809 timed out, 3,220 aborted)99.5% of 46,009 runs109 of 110 runs on 2026-10-05; the one failure was an empty input, refused by design; 0 failed queries in 1,297
Comparison of termsyesno2 to 5 terms, one scale
Related queriesyesnotop and rising, per term
Interest by regionsubregion, city, metro through a URLinside one countrycountry, region, US metro, city, with shares in a comparison
Search type (web, images, news, YouTube, Shopping)not an inputnoyes
Batchlist, Google Sheet, URLsone keyword per runup to 2,000 queries, URLs, duplicates dropped
Trending nownoyes, up to 1,000 items in one row per runyes, the whole list, one row per search
Time per querynot published (reviews: minutes)not publisheda one-query run: median 12 s, worst 183 s in our 33-input pass; 100 queries in 74 to 159 s

Where we lose: the leader has years of runs behind it and Google Sheet input; data_xplorer's success rate is measured over 46,009 runs, ours over 110 of our own. Related topics, which the leader lists, are not available to a logged-out visitor (see the limits).

Pay per event, no subscription, platform usage included:

EventPrice
Explore query with data (status ok or partial), every section included$1.50 per 1,000 queries ($0.0015 per query)
Trending now row$0.02 per 1,000 Trending now rows ($0.00002 per row)
Run start$0.003 per run (Apify's start event, one per GB of memory; the Actor runs at 256 MB)

Examples:

  • One keyword: $0.0045 ($0.003 to start, $0.0015 for the query).
  • The prefilled run (two terms and a comparison): $0.0075.
  • 1,000 keywords in one run: $1.503.
  • The full Trending now list of the United States (467 searches on 2026-10-13): about $0.012.
  • A query with no data, a failed query, a duplicate or anything past your spending limit is never charged.
  • Apify's free plan includes $5 of monthly usage (apify.com/pricing), enough for about 3,300 queries a month in batches.

Set a maximum cost per run in the run options and the Actor stops cleanly when it is reached.

Use the Actor through the Apify API

Run it and get the rows in one HTTP call (replace YOUR_APIFY_TOKEN, from Settings > API & Integrations in Apify Console):

curl -X POST "https://api.apify.com/v2/acts/agenttoolworks~google-trends-scraper/run-sync-get-dataset-items?token=YOUR_APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"searchTerms": ["matcha"], "geo": "US", "timeRange": "today 5-y"}'

To get the flat table of one view instead of the nested rows, read the run's dataset with view=timeline (or regions, related, trending): https://api.apify.com/v2/datasets/DATASET_ID/items?view=timeline&format=csv.

Node.js, with the official apify-client:

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('agenttoolworks/google-trends-scraper').call({
comparisons: ['iphone, samsung galaxy, pixel'],
geo: 'US',
timeRange: 'today 12-m',
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
for (const row of items) console.log(row.query, row.status, row.averages);

Python, with the official apify-client:

from apify_client import ApifyClient
client = ApifyClient("YOUR_APIFY_TOKEN")
run = client.actor("agenttoolworks/google-trends-scraper").call(
run_input={"mode": "trendingNow", "trendingGeos": ["US", "GB"], "trendingHours": "24"}
)
for trend in client.dataset(run["defaultDatasetId"]).iterate_items():
print(trend["geo"], trend["trend"], trend["searchVolumeLabel"], trend["startedAt"])

The API tab on this page has ready-made snippets for every language and endpoint.

FAQ

Google announced its own Trends API as an alpha with access by application (developers.google.com/search/apis/trends). This Actor needs no application: it reads the same requests the public Google Trends page makes, logged out, and returns them as JSON rows.

Do I need a Google account or an API key?

No. No account, no API key, no cookie from a signed-in browser. The only cookie is the one Google gives any visitor on a first page view.

Why are the values between 0 and 100?

That is what Google Trends publishes: interest relative to the highest point of the chart (or the region with the most interest), not a count of searches. Terms compared in one row share the same scale; terms read in separate rows do not.

Can I compare more than five terms?

Google compares up to five terms on one scale. For more, put a common reference term in each comparison (coffee, tea, matcha, cold brew, espresso, then coffee, chai, ...) and scale with it.

How fast is it?

Measured on Apify: a one-query run took 12 s in the median and 183 s at worst (a five-term comparison under Google's rate limit); 100 queries took 74 to 159 s, 200 queries 329 to 516 s; a full Trending now list takes a few seconds. Google's rate limit decides most of it: the same three queries took 6 s or 126 s nineteen minutes apart.

Can I schedule it, or use it with Make, Zapier, n8n or Google Sheets?

Yes, through Apify's scheduler and integrations: save your input as a task, schedule it, and send the dataset wherever you need it, or fire a webhook when a run finishes.

Can AI agents use it through MCP?

Yes. Apify's hosted MCP server exposes Store Actors to MCP clients such as Claude or Cursor: https://mcp.apify.com?tools=agenttoolworks/google-trends-scraper.

The Actor reads public, aggregated and anonymized search interest that Google Trends shows any visitor, without logging in, on endpoints Google's robots.txt does not disallow (it disallows only the explore page itself, which the Actor never requests). No personal data is read. How you use the data is your responsibility.

Something is missing or broken?

Open an issue in the Issues tab: we read every one.

Other Actors by AgentToolWorks

Learn more

Built by AgentToolWorks. Not affiliated with Google.