Google Trends Now Scraper — Trending Searches by Country avatar

Google Trends Now Scraper — Trending Searches by Country

Pricing

from $0.50 / 1,000 trending searches

Go to Apify Store
Google Trends Now Scraper — Trending Searches by Country

Google Trends Now Scraper — Trending Searches by Country

Google's trending searches for any country: rank, the traffic floor Google publishes, when each trend started, and the news stories behind it. From $0.50 per 1,000 trending searches, no start fee — poll it every hour. Never charged for an empty pull.

Pricing

from $0.50 / 1,000 trending searches

Rating

0.0

(0)

Developer

Steadyfetch Team

Steadyfetch Team

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

16 hours ago

Last modified

Share

No start fee, and never charged for an empty pull. Google's trending searches for any country — rank, the traffic floor Google publishes, when each trend started, and the news stories behind it.

Just want to see it work? Click Start with nothing set and the run pulls the top 5 trending searches for the US, charged like any run at your plan's per-row price. Set a limit or two but no country and the same sample runs under your settings — a limit larger than the sample's own is capped at it, and one uncharged note row names the settings it used. Set your own country codes for your own run.

Google Trends Now Scraper input form in the Apify console: the country field set to US with a second country list below it

Built for a schedule. Most actors in this category charge a fee every time a run starts, so an hourly cron pays that fee 720 times a month before it collects a single row. This one has nothing charged for starting a run at all: you pay per trending search delivered, and nothing else.

Unofficial. This actor is not affiliated with, endorsed by, or sponsored by Google. "Google" and "Google Trends" are trademarks of Google LLC, used here only to describe what this tool reads.

From $0.50/1,000 trending searches — all-inclusive pay per event, nothing charged for starting a run, charged only on delivery.

Every row carries charged and missReason, so you can reconcile the invoice from the dataset itself without opening the console. Only rows with charged: true were billed.


Output

One row per trending search, one shape for every country, so polls stack into a single table:

Dataset table of a real Google Trends Now Scraper run: the US top 5 trending searches with the traffic floor, when each trend started, the news count and the explore link

chargedgeorankqueryapproxTrafficapproxTrafficMinstartedAtnewsCount
trueUS1james talarico200+2002026-08-27T03:00:00.000Z3
trueUS2martha stewart2000+20002026-08-27T02:50:00.000Z3
trueGB1conmebol sudamericana500+5002026-08-27T02:40:00.000Z2

(Real rows from a US/GB run.)

Every row also carries pubDate (Google's own timestamp text), picture, exploreUrl (opens the trend in Google Trends), news (an array of {title, source, url}), fetchedAt, status, retryable, statusReason and schemaVersion. The last row of every run is a summary row with delivered, geosDelivered, stoppedBy, resumeCursor and chargedEvents.

Two fields worth understanding

approxTraffic is a floor, not a count. Google publishes "500+", never an exact number. The text you see is exactly what Google published, and approxTrafficMin is its lower bound as an integer. Nothing here is estimated, rounded or invented.

startedAt is when the trend started, not when you fetched it. It comes from Google's own timestamp, converted to ISO-8601 UTC, with the original string kept beside it in pubDate so you never have to trust our parse.


Agent / API paste-block

Actor: steadyfetch/google-trends-now-scraper
Required: geo (string, two-letter country code — leave it empty and the
run is a 5-row US sample, charged like any run; set
limits but no country and the sample runs under them)
Optional: geos (array of country codes, polled in one run)
maxTrendsPerGeo (integer, default 10 — Google publishes 10 per country)
minTraffic (integer, default 0 — skip trends below this floor)
includeNews (boolean, default true)
maxItems (integer, default 100 — hard cap for the whole run)
maxRunSeconds (integer, default 120 — clean stop, never a timeout kill)
Charges: trending-search once per delivered trending search
Note: omit an optional field or send it as null to take its default — both mean
the same thing (geo is required and must carry a real value)
Build spec: https://apify.com/steadyfetch/google-trends-now-scraper/api
Token: https://console.apify.com/settings/integrations
curl -X POST "https://api.apify.com/v2/acts/steadyfetch~google-trends-now-scraper/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
-H 'Content-Type: application/json' \
-d '{"geo":"US","geos":["GB","IN"],"includeNews":true}'

What you actually get per country

Google publishes 10 trending searches per country, refreshed continuously — that is the whole feed, so 10 is both the default and the ceiling for maxTrendsPerGeo. This actor does not pretend to offer a top 20.

How fast does it turn over? Measured over scheduled hourly polls: the US and India lists turned over by 10 of 10 and 8–10 of 10 trends per hour, Great Britain by 2–5 of 10. An hourly schedule sees genuinely new trends every time; a daily one will miss most of them.


Countries

Any two-letter country code Google covers — US, GB, IN, DE, BR, SA, AU, CA and so on. Pass one in geo, or several in geos to poll them in a single run. Each country is fetched independently, so one being unavailable never blocks the others.

A code Google does not publish trends for comes back as an uncharged invalid_geo row naming the fix — it is never retried and never charged.


What you are never charged for

situationstatusrun status
Google does not cover the country you asked forinvalid_geoSUCCEEDED — the row names the fix, and it is not retried
Google did not serve the trending feed for that country on this run — the row names a rate limit or a dropped connection only where one was actually seenupstream_unavailableSUCCEEDED — re-runnable, and the row says so
Google did not serve its trending searches for that country on this runendpoint_unavailableSUCCEEDED — re-runnable, and the row says so
Google answered normally and published nothingempty_upstreamSUCCEEDED
Your minTraffic filtered every trend outfiltered_outSUCCEEDED — the row names the setting
A country code we could not readinput_errorSUCCEEDED — the row names the fix, no request is made
The note naming the settings a limits-only Start ran the sample undersample_noteSUCCEEDED — the sample rows themselves are charged
Your own maxItems / maxRunSeconds / cost capstopped_at_limitSUCCEEDED — summary row + resumeCursor

A refusal is reported as a refusal, never dressed up as "this country has no trends", and a country code Google rejects is never retried — retrying a typo just asks the same wrong question again on your budget.

This actor may fail when the platform changes things — failed items are never charged.


Limits are hard limits

maxTrendsPerGeo, maxItems and maxRunSeconds stop the run exactly where you set them. The run still finishes successfully, the summary row names which limit bound, and resumeCursor lists the countries that were not reached.


FAQ

Does {} cost anything? Under a cent. With no country set it runs the default sample — the top 5 trending searches for the US — charged like any run, so the first thing you see is real data in the exact row shape. The status line says it was the sample and how to run your own countries.

I changed a limit but did not pick a country. What happens? The same sample runs, under the settings you did change: what you set is kept, what you did not set takes the sample's own value, and a limit larger than the sample's own is capped at it so a sample can never grow into a bill you did not ask for. One uncharged note row names the settings it used. A field name this actor does not recognise, or a country field you set but left empty, still gets a single uncharged row asking for the country instead.

Can I run this on an hourly schedule? That is what it is for. There is nothing charged for starting a run, so a schedule pays exactly the same per trend as a one-off run. Point an Apify schedule at it with geo set and append the results.

How do I tell which trends are new since my last poll? Compare query against your previous run for the same geo. Google does not publish a stable id for a trend, and it sometimes re-words one (américa - columbus crew became américa vs columbus nine minutes later), so an exact-string comparison will slightly over-count new trends. Normalising the text before comparing gets you closer.

Why is there no category on a trend? Because Google's trending feed does not publish one. Adding a column we would have to guess at would be worse than leaving it out.

Is this the same as the Google Trends Scraper? No. That one answers "how has interest in my keyword moved over time". This one answers "what is the whole country searching right now". If you want both, run both — they share the same extraction engine.


One actor per surface, one job each, the same contract everywhere: all-inclusive pay per event, nothing charged for starting a run, charged only on delivery — so a workflow built for one of them ports to the next. Keyword volume is the one exception: from 16 September 2026 a run that buys fresh volume data adds one fresh-lookup fee of $0.19; runs answered from the 30-day cache pay none.

What you wantActor
Interest over time, related queries, regions, compareGoogle Trends Scraper — Interest Over Time, Related Queries
What is trending right now, by countrythis actor
Rising and Breakout queries, with the real growth numberRising Keywords Scraper — Google Trends Breakout Queries
Autocomplete suggestions across 5 enginesGoogle Autocomplete & Keyword Suggest Scraper — 5 Engines
Monthly search volume and CPC for a keyword listKeyword Search Volume Scraper — Google Ads CPC & Competition
What is trending on social platformsSocial Trends Scraper — X, TikTok, Pinterest, YouTube & Google

The rest of the steadyfetch shelf — same contract everywhere: all-inclusive pay per event, nothing charged for starting a run, charged only on delivery (three actors add a small delivery-conditional fee from 16 September 2026: keyword volume's fresh lookup, profile posts' profile lookup, Google Jobs' search fee — each README states it).

FamilyActors
Ad creative intelligenceFacebook · Google Ads video · TikTok · LinkedIn · Google Ads text & OCR
Trends & keywordsGoogle Trends · Trends Now · Breakout keywords · Autocomplete keywords · Keyword volume & CPC · Social trends
YouTube transcriptsYouTube videos · YouTube channels
InstagramReel transcripts · Profile posts
JobsIndeed · Career sites by domain · Glassdoor · Multi-board · Google Jobs
AmazonProducts · Search · Bestsellers · Sellers
Any media fileSpeech to Text · any link or file

Free templates

Free n8n workflow templates for this actor are listed on our profile website (link on our Apify profile).

Feedback & support

Found an issue? Open it on the Issues tab — we usually reply within a couple of hours, always within a day.

Using an AI agent? Pin this actor in Apify's MCP server with one link: https://mcp.apify.com?tools=steadyfetch/google-trends-now-scraper.

If it earned its keep, a rating helps other buyers find it, and saving the actor keeps it one click away.