How to scrape Google Trends in 2026 (no code, API or AI agent)

Google Trends has no generally available public API, so the practical way to get Google Trends data at scale is a ready-made scraper. With Google Trends Scraper on Apify you enter keywords, a region and a time range, click Start, and get one row per keyword — the 0–100 timeline, trend direction, interest by region and city, and top and rising related queries — in seconds, for $1 per 1,000 keyword reports.

Open Google Trends Scraper on Apify $1 per 1,000 keyword reports ($0.27–$0.90 on paid plans) · $0.50 per 1,000 trending searches

Step by step

  1. Create a free Apify account. Sign up at apify.com. The free plan includes $5 of monthly credit — about 5,000 keyword reports with this Actor — and needs no credit card.
  2. Open Google Trends Scraper. Go to apify.com/automationnation/google-trends-scraper and click Try for free.
  3. Enter your keywords. Add one or more search terms (e.g. "coffee", "matcha"), a region code such as US or GB (or leave it empty for worldwide) and a time range. Tick "Compare all search terms on one scale" to compare them, even more than 5.
  4. Pick options (optional). Choose a category, a search type (web, YouTube, News, Images or Google Shopping), region or city level, or paste Google Trends URLs. Add countries under Trending now to get what's trending today.
  5. Run and export. Click Start. Download JSON, CSV or Excel, or read the results through the API. The Keyword trends view shows direction, change % and a one-line summary per keyword.
  6. Automate it. Schedule the Actor (e.g. weekly for keyword tracking, hourly for Trending now with Only new trends) and send results to Google Sheets, Slack or a webhook through Apify integrations.

Do it from code

Python

# pip install apify-client
from apify_client import ApifyClient

client = ApifyClient("YOUR_APIFY_TOKEN")
run = client.actor("automationnation/google-trends-scraper").call(run_input={
  "searchTerms": [
    "chatgpt",
    "gemini",
    "claude ai"
  ],
  "geo": "US",
  "timeRange": "today 12-m"
})
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item.get("searchTerm"), item.get("trendDirection"), item.get("changePercent"), item.get("summary"))

REST API (cURL)

curl -X POST "https://api.apify.com/v2/acts/automationnation~google-trends-scraper/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"searchTerms": ["chatgpt", "gemini", "claude ai"], "geo": "US", "timeRange": "today 12-m"}'

From an AI assistant (MCP)

Add this MCP server URL to Claude, ChatGPT or Cursor and ask in plain English:

https://mcp.apify.com?tools=automationnation/google-trends-scraper

Alternatives

Other options: open-source libraries such as pytrends talk to the same Google endpoints but often hit Google's rate limits (HTTP 429) without proxy rotation; SerpApi sells a Google Trends API as a monthly subscription (free tier 250 searches/month; paid from $25/month for 1,000 searches, checked October 2026); and several other Apify Actors scrape Google Trends at $1–$25 per 1,000 results — see the side-by-side comparison of Google Trends scrapers. See the side-by-side comparison.

FAQ

What do the Google Trends numbers mean?

They are relative, not search counts: 100 is the peak popularity for the term (or for the compared terms) in that region and period, 50 is half as popular. Compared terms share one scale.

Why does a keyword show no data?

Google only shows terms with enough search volume. Try a broader region, a longer time range or a more common spelling; such rows are free in Google Trends Scraper.

Can I get Google Trends Trending now data?

Yes — add country codes under Trending now to get trending searches with search volume, growth %, start time, related searches and news articles. Switch on Only new trends and schedule it for alerts.

Written by AutomationNation, the developer of Google Trends Scraper. Prices checked October 2026.