Google Trends Scraper - Interest, Regions, Related & Trending avatar

Google Trends Scraper - Interest, Regions, Related & Trending

Pricing

from $5.00 / 1,000 keyword reports

Go to Apify Store
Google Trends Scraper - Interest, Regions, Related & Trending

Google Trends Scraper - Interest, Regions, Related & Trending

Every Google Trends signal in one run and one schema: interest over time, interest by region and city, top and rising related queries, compare up to five keywords on one scale, and Trending Now with news. A keyword with no data is free; no run-start fee.

Pricing

from $5.00 / 1,000 keyword reports

Rating

0.0

(0)

Developer

Blackcube

Blackcube

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

10 hours ago

Last modified

Share

Google Trends Suite  •  2 Actors, one codebase, one keyword-report billed once
Google Trends Scraper
➤ You are here
Google Trending Searches Scraper API
Trending Now

More from this account: YouTube Transcript Suite · Website Contact & Email Suite · Career Site & ATS Jobs Suite · Google News Suite · Keyword Research Suite · Shopify Store Intelligence Suite · eBay Data Suite · Amazon Reviews Suite · Reddit · Meta Ad Library · Vinted · Trustpilot Review Intelligence Suite · App Store & Google Play Reviews Suite · Telegram Channel Intelligence Suite · Business Reviews Suite · Amazon Product Data Suite · Google Sheets Suite · TikTok Suite · Snapchat Suite · LinkedIn Public Data Suite · Instagram Suite · Contact Validation Suite

The Google Trends suite — 7 Actors, one engine

Every Google Trends signal for a keyword, in one run and one schema — interest over time, interest by region and city, related and rising queries, up to five keywords compared on one scale, and Trending Now with news.

A run that finds nothing costs nothing. There is no run-start fee, error and coverage rows are free, and on a schedule a re-run bills only what is new.

⭐ Why this one

Most Google Trends scrapers give you one chart and stop, or split trending into a second tool. This returns the whole picture in one report: the interest-over-time series and the map and the related searches and — when you want it — a side-by-side comparison of up to five keywords on a single 0–100 scale, plus a Trending Now mode that no single-purpose scraper bundles in.

A keyword Google has no data for comes back as a free row that says so, not an invented zero and not a charge. Numbers come back as real values on Google's 0–100 scale, dates as UTC timestamps, and a section Google leaves empty is marked empty rather than faked. You never configure a proxy.

🎯 Use cases

  • Build an SEO content calendar from the rising and breakout queries around your topic before the rest of the market writes about them.
  • Monitor a brand or category on a weekly schedule and watch interest move by country and region.
  • Do market research across up to five competing terms at once, on one comparable scale.
  • Run trend alerts — an hourly Trending Now pull per country, billed only for the trends that are new.

🚀 Recipes

One keyword, worldwide, past 12 months

The default. Interest over time, by region, and related queries for one term.

{
"keywords": [
"chatgpt"
],
"timeRange": "today 12-m"
}

Compare five keywords on one scale

All five measured together, so the values are directly comparable.

{
"keywords": [
"chatgpt",
"gemini",
"claude ai",
"perplexity",
"copilot"
],
"compareKeywords": true,
"geo": "US"
}

Interest by city, in one country

City-level breakdown where Google has it (it is sparse — empty places are left out).

{
"keywords": [
"coffee"
],
"geo": "US",
"regionResolution": "city"
}

Switch to trending mode and put it on a schedule; only new trends are billed.

{
"mode": "trending",
"trendingGeos": [
"US",
"GB"
],
"onlyNewSinceLastRun": true,
"stateName": "hourly"
}

📥 Input

FieldWhat it does
keywordsThe search terms to report on, one per line. A Google topic id such as /m/05p0rrx works too, for a concept rather than a phrase.
compareKeywordsPut keywords on one shared 0–100 scale, in groups of up to five, so their values are directly comparable.
geo / geosWorldwide by default, or a country like US, a subregion like US-CA, or several at once — each is its own report.
timeRangePast hour to past 5 years, all of 2004–present, or your own custom date range.
propertyWeb, Images, News, YouTube or Shopping search.
regionResolutionBreak interest down by country, subregion, metro area or city.
includeRegions / includeRelatedQueries / includeRelatedTopicsTurn sections on or off — off is faster, and the price of a report is the same either way.
explodeRowsAlso emit one free flat row per timeline point, region and related query, for a tidy CSV.
onlyNewSinceLastRun / stateNameFor a schedule: a report already billed in the last 12 hours is skipped, so a daily run re-bills by design and a re-run within the window is free.
maxReports / maxCostUsdHard ceilings on rows and on spend.

No proxy settings. Unblocking is handled and priced in — you never configure infrastructure.

📤 Output

RowWhat it is
keyword-reportThe billed row. One keyword in one place over one time range, with the interest-over-time series (peak, average, latest, trend direction), interest by region, top and rising related queries, and related topics where Google provides them.
timeline-point / region / related-query / related-topicFree. Flat child rows, only when explodeRows is on.
coverageFree. Per report: which sections arrived, how many regions had data, and what ended the job.
errorFree. Anything that could not be read, with a stable reason. A keyword with no data is a free row, never a charge.

Every run also ends with a free summary row: counts, the estimated spend, and why it stopped. Export any run to CSV, Excel, JSON, XML or HTML from the Storage tab or the API — the dataset ships with ready-made views (Reports, Trending Now, Timeline, Regions and Related).

What every report carries

One keyword-report row bundles all of this, so you never join four datasets together:

  • Interest over time — the full series on a 0–100 scale at the bucket size Google chose for your window (hour, day, week or month), plus the peak and when it happened, the average, the latest value, and a trend direction (rising, falling or flat, measured as the last quarter of the series against the first).
  • Interest by region — one entry per place with data, ranked highest first, at your chosen resolution (country, subregion, metro or city). City rows carry coordinates.
  • Related queries — the top searches on a 0–100 scale and the rising ones by growth, with genuine breakouts flagged.
  • Related topics — Knowledge Graph entities where Google provides them.
  • Context — the exact Google Trends page URL for the query, the property and category, the resolved time span, and which of the four sections actually arrived.

A few things about the data itself — the kind of detail most scrapers leave you to discover on your own bill:

  • The numbers are relative, on a 0–100 scale. A value is interest against the peak of the same series, not a count of searches. It only means something next to another value on the same scale — which is exactly why the compare mode, which puts several keywords on one shared scale, is worth having.
  • The most recent bucket is partial. The latest point of any live series is still being collected and will move; it is flagged isPartial so you can drop or discount it rather than mistake it for a drop in interest.
  • City-level data is sparse. Google reports city interest for only a handful of places for most keywords. This leaves the empty ones out and tells you how many had data, instead of padding the list with zeros.
  • Related topics are sparse. The related topics section was empty in every session we measured. It is off by default here, and when it is empty the report says so rather than inventing rows — you are never billed for a section Google did not return.

💰 Pricing

Pay per keyword report. Failures are free and there is no run-start fee.

EventFREEBRONZESILVERGOLDPLATINUMDIAMOND
keyword report$10.00$8.30$6.30$5.00$4.70$4.30
trending term$1.00$0.83$0.63$0.50$0.47$0.43

Prices are per 1,000. Your tier is your Apify plan. On the Gold plan, 1,000 keyword reports cost $5.00. A keyword report with no data costs $0.00, and on a schedule an unchanged feed re-bills nothing.

⏰ Run it on a schedule

Set a daily or weekly cron and leave only new since the last run on. Interest-over-time reports refresh each day by design (the window has moved), while a monitoring feed pays only for what changed. That is what makes a standing schedule rational instead of a bill you cancel.

Cron: 0 7 * * * (every morning at 07:00).

❓ FAQ

Google does not publish an official public API for this data. This Actor is the practical equivalent: give it keywords and it returns clean, structured rows you can pull from the Apify API or export to a file — no account on Google's side, no infrastructure to run.

Every run's dataset exports to CSV, Excel, JSON, XML or HTML from the Storage tab, or through the Apify API. Turn on the flat-rows option and every timeline point, region and related query becomes its own line, ready for a spreadsheet.

Google Trends values are relative, not absolute. Each series is scaled 0–100 against its own peak over the window you asked for, so the same keyword reads differently over "past 7 days" than over "past 12 months", and today's live window differs from yesterday's. The numbers are an index of relative interest, not a count of searches — so a value only means something next to another value on the same scale.

Can I compare more than five keywords?

Google's shared-scale comparison holds at most five keywords at once. Give this more than five with compare mode on and it splits them into comparable groups of five automatically; across groups the scales differ, exactly as Google’s own tool works.

Google refreshes interest-over-time data periodically — more often for the shortest "past hour" and "past day" windows than for multi-year ones; see Google's own Trends help for the current cadence. A daily schedule keeps a series current, and the most recent bucket is always marked partial because it is still filling in.

What time zone are the timestamps in?

Every timestamp — each timeline bucket and the fetch time — is a UTC ISO timestamp, so results line up across countries without any conversion on your side.

Can I get absolute search volume numbers?

Google Trends is an index of relative interest, not a count of searches, so exact volumes are not part of it. If you need absolute numbers, use the interest curve for the shape and pair it with a keyword-volume source for the magnitude.

Do I need a proxy or a Google account?

No. Everything is handled for you and priced into the per-keyword report fee. There is no proxy field to configure and no login anywhere.

🛟 Support

Something not working, or a signal you want added? Open an issue on the Issues tab — it is read and answered. If this saved you time, a rating on the listing helps more than you would think.

Unofficial and not affiliated with, endorsed by or sponsored by Google. It reads only publicly available Google Trends data.

Use it from n8n, MCP, the API or a schedule

Built to be called by a workflow, not only from the Store form. The Actor is vonsensey/google-trends-scraper; every snippet below sends {}, which runs the defaults shown on the form — replace it with your own input.

n8n

Install the Apify community node (@apify/n8n-nodes-apify under Settings → Community Nodes, or search "Apify" on n8n Cloud). Add Apify → Run Actor with Actor vonsensey/google-trends-scraper and your input JSON, then Apify → Get Dataset Items on the run's defaultDatasetId and pipe the rows anywhere. For scheduled runs, the On new Apify Event trigger fires when a run of this Actor finishes.

MCP (Claude, Cursor, VS Code, any MCP client)

{
"mcpServers": {
"apify": {
"url": "https://mcp.apify.com?tools=vonsensey/google-trends-scraper",
"headers": {
"Authorization": "Bearer <YOUR_APIFY_TOKEN>"
}
}
}
}

Your agent then calls vonsensey/google-trends-scraper as a tool with the same input the form takes and reads the dataset back.

REST API (one call, rows in the response)

curl -X POST "https://api.apify.com/v2/acts/vonsensey~google-trends-scraper/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" -d '{}'

Python

from apify_client import ApifyClient
client = ApifyClient("<YOUR_APIFY_TOKEN>")
run = client.actor("vonsensey/google-trends-scraper").call(run_input={})
for row in client.dataset(run["defaultDatasetId"]).iterate_items():
print(row)

JavaScript

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('vonsensey/google-trends-scraper').call({});
const { items } = await client.dataset(run.defaultDatasetId).listItems();

Make, Zapier, LangChain, CrewAI

The Apify app in Make and Zapier has a Run an Actor module: pick vonsensey/google-trends-scraper. In LangChain and CrewAI the Apify tool wrappers take the same Actor id. A daily schedule needs nothing but the Console: Schedules → Create → this Actor → cron, and the dataset fills on its own.

Run it without configuring anythingScrape a full Google Trends report for a keyword, a ready-made example you can start as-is or copy.

Use cases

  • Every Trends signal in one report. Interest over time, interest by region and city, and related and rising queries for a keyword — bundled into one row, not four datasets to join.
  • Compare up to five keywords on one scale. Google Trends is relative; measured together, the numbers are actually comparable instead of five incomparable charts.
  • Catch what is trending now, by country. Trending Now with approximate volume, growth, category and news — on an hourly schedule, billed only for new trends.
  • Failures are free. A keyword with no data is a free row that says so, never an invented zero and never a charge; there is no run-start fee.

Run it on a schedule

A one-off pull answers a question; a schedule answers it every day without you. Open Schedules in the Apify Console, point a cron at this Actor, and the dataset keeps filling on its own — no server, no cron box, no babysitting. Everything here is built to be re-run: you are billed per keyword-report delivered, and the FAQ below says exactly what a scheduled run that finds nothing new costs.

FAQ

Google does not publish an official public API for this data. This suite is the practical equivalent: pass keywords or countries and get clean, structured rows you can pull from the Apify API or export to a file, with no Google account and no infrastructure to run.

Google Trends values are relative, scaled 0-100 against the peak of each series over the window you asked for. The same keyword reads differently over "past 7 days" than over "past 12 months", and the latest bucket is always partial because it is still being collected. The numbers are an index of relative interest, not a count of searches.

Every run's dataset exports to CSV, Excel, JSON, XML or HTML from the Storage tab or the Apify API. Turn on the flat-rows option and every timeline point, region and related query becomes its own line, ready for a spreadsheet.

Do I need a proxy or a Google account?

No. Unblocking is handled and priced into the per-report fee. There is no proxy field to configure anywhere in the suite and no login on Google's side.


Something wrong, or a field you need that is missing? Open an issue on the Issues tab — it is read and it gets fixed. If this saved you time, a rating on the Store page helps the next person find it.