Disclosure: I built the Trending Now Actor used here and earn money when people run it.

trends.google.com/trending shows what people are searching for right now, per country, with search volume, % increase, categories and related searches. It's great for newsrooms, content teams, social media managers and anyone building "what's hot" dashboards.

Getting it into code is harder than it looks:

  • The RSS feed is tiny. https://trends.google.com/trending/rss?geo=US is easy to parse, but it carries only around 10 trends, while the page itself lists hundreds.
  • There's no official API for the Trending Now list.
  • pytrends is archived and doesn't cover the current Trending Now page.

If the top 10 is enough for you, use the RSS feed with feedparser and you're done. For the full list with volumes and categories, I use the Actor below.

Setup

pip install apify-client pandas export APIFY_TOKEN=your_token_here # Apify Console > Settings > API & Integrations 

Full list + "only new" alerts

import json import os import urllib.request import pandas as pd from apify_client import ApifyClient client = ApifyClient(os.environ["APIFY_TOKEN"]) run_input = { "countries": ["US"], "timeWindow": "24", # trends that started in the past 24 hours  "maxItemsPerCountry": 0, # 0 = the full list, not just the top 25  "onlyNew": True, # remember what was delivered before...  "monitorName": "us-all", # ...per monitor name, so the next run skips repeats } run = client.actor("zahidthani/google-trends-trending-now").call( run_input=run_input, max_total_charge_usd=0.60 ) # apify-client 3.x returns a Run object; 1.x and 2.x return a dict dataset_id = getattr(run, "default_dataset_id", None) or run["defaultDatasetId"] trends = pd.DataFrame(client.dataset(dataset_id).iterate_items()) if trends.empty: print("Nothing new since the last run.") else: trends["category"] = trends["categories"].str[0] print(len(trends), "new trends") print(trends.sort_values("searchVolume", ascending=False) [["keyword", "searchVolumeLabel", "increasePercent", "category", "isActive"]] .head(10).to_string(index=False)) print(trends["category"].value_counts().head(8).to_string()) # Alert on the big ones. Set SLACK_WEBHOOK_URL to post to a channel.  big = trends[(trends["searchVolume"] >= 50000) & trends["isActive"]] text = "New Google trends (US): " + ", ".join( f'{k} ({v})' for k, v in zip(big["keyword"], big["searchVolumeLabel"]) ) webhook = os.environ.get("SLACK_WEBHOOK_URL") if webhook and len(big): req = urllib.request.Request(webhook, json.dumps({"text": text}).encode(), {"Content-Type": "application/json"}) urllib.request.urlopen(req) else: print(text) 

Tested with Python 3.12 and apify-client 3.2.1. I ran it without a Slack webhook, so it printed the alert text.

Real output

First run, 6 October 2026, US, past 24 hours: 424 trends. The top 10 by search volume:

keyword volume increase category active
argentina - benín 200K+ 1000% Sports True
freddie jackson 200K+ 1000% Entertainment True
croatia vs spain 200K+ 1000% Sports True
jim bakker 200K+ 1000% Other True
dodgers 200K+ 400% Sports True
why did i get $90 from social security 200K+ 1000% Law and Government True
world space week 2026 200K+ 1000% Science True
dodgers vs braves 200K+ 1000% Sports True
hurricane tracker 100K+ 200% Climate True
windsor 100K+ 400% Law and Government True

By category: Sports 179, Entertainment 86, Other 38, Law and Government 33, Business and Finance 20, Politics 18, Science 11, Games 7. The alert line listed the 22 active trends with 50K+ searches.

Second run, a minute later, same monitorName:

Nothing new since the last run. 

That's the alerting trick. With onlyNew, the Actor stores what it already delivered (in a key-value store in your own Apify account, per monitor name, for 10 days) and skips it next time, so you're never sent, or charged for, the same trend twice. A trend that ends and later comes back counts as new.

Scheduling it

No-code: in Apify Console, save the input as a task, add a schedule (e.g. every hour), and attach Slack, email, a webhook, Make, Zapier or n8n to the task. No server needed.

Your own cron: run the script above hourly from any machine with Python:

0 * * * * cd /path/to/script && APIFY_TOKEN=... SLACK_WEBHOOK_URL=... python trending_alert.py 

A GitHub Actions workflow with schedule: and the two values as repository secrets works the same way.

Useful filters, all applied before you're charged:

  • "categories": ["Technology", "Business and Finance"] for a niche feed.
  • "minSearchVolume": 10000 to skip small spikes.
  • "activeOnly": true for trends that are still rising.
  • "keywordFilter": "iphone" to watch one topic or brand.
  • "countries": ["US", "GB", "DE"] for several countries in one run.

What it costs

$0.001 per trend delivered + $0.005 per run. Filtered-out and already-seen trends are free.

Job Cost
Full US list once (424 trends) about $0.43
Top 50 once a day about $0.055 a day
Hourly only-new monitor, no filters about $0.12/day in run fees + $0.001 per new trend (roughly $0.50-0.60/day for the US)
Hourly, filtered to one category or 10K+ searches far fewer trends, so usually well under $0.30/day

Apify's free plan includes $5 of monthly credit. max_total_charge_usd caps each run.

Limitations

  • Search volume is Google's rounded bucket (200K+, 50K+), not an exact count.
  • News links cover only the freshest ~10 trends per country (they come from Google's news feed). Every trend has newsArticleCount, but most have news: [].
  • Keywords are in the language people searched in (note "croacia - españa" next to "croatia vs spain" in the US list). Group by relatedQueries if you need to merge duplicates.
  • "Only new" memory lasts 10 days and is per monitorName. Use different names for monitors with different filters, or they'll hide trends from each other.
  • It depends on Google's page not changing. I maintain it and monitor it daily, but it's still a scraper.

Try it

Google Trends Trending Now Monitor on the Apify Store: https://apify.com/zahidthani/google-trends-trending-now

Runnable Python, Node.js and n8n examples: https://github.com/zahidthani/apify-data-tools-examples