Swellmeter — Google Trends Scraper & API for AI Agents avatar

Swellmeter — Google Trends Scraper & API for AI Agents

Pricing

Pay per event

Go to Apify Store
Swellmeter — Google Trends Scraper & API for AI Agents

Swellmeter — Google Trends Scraper & API for AI Agents

Keywords in, one compact record each: Google Trends interest over time with a plain-English verdict (rising, falling, spiking, stable), peak, % change, related and rising queries, top regions. Compare up to 5 terms or get trending searches by country.

Pricing

Pay per event

Rating

0.0

(0)

Developer

CyberMax

CyberMax

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 hours ago

Last modified

Share

Swellmeter: Google Trends scraper & API for AI agents

Keywords in, one compact answer each. Swellmeter reads Google Trends and turns it into a single JSON record per keyword that an AI agent (or a spreadsheet) can use straight away:

  • a plain-English verdict: "Search interest in "claude" is rising over the past 12 months (+257% …)"
  • a direction label: rising, falling, spiking, stable or no data
  • stats: latest, average, recent vs prior average, % change over the range, slope, peak and low (with dates), volatility
  • related queries: top and rising / breakout searches
  • top regions: countries, or states/regions when you pick a country
  • the full timeline (date + 0–100 value), with Google's partial last point marked
  • a link that opens the same view on trends.google.com

It also compares up to 5 terms on one scale (leader, ranking, per-keyword stats) and returns today's trending searches for any country, with traffic estimates and news links.

Why this one

  • Reliable. Each attempt alternates between Apify's own server IP and a fresh proxy session, each with its own Google cookie and exponential back-off, and anything still rate-limited gets a second pass after a cool-down, so rate limits (HTTP 429) don't fail the run. Test runs on 2026-09-23: 60 of 60 keywords and 2 of 2 trending lists succeeded, with no failed requests (a 40-keyword batch finished in 53 s).
  • One record per keyword, not one row per data point. It's easy to hand to an LLM and cheap in tokens (about 3 KB without the timeline).
  • Pay per answer. $0.003 per keyword. Failed lookups and keywords with no search volume are free. No start fee.

Input

{
"keywords": ["chatgpt", "claude", "gemini"],
"compare": true,
"geo": "US",
"timeRange": "today 12-m",
"property": "web",
"trendingGeos": ["US", "GB"]
}
FieldDefaultWhat it does
keywordsSearch terms. One record each (or one per comparison set).
comparefalsePut keywords on one 0–100 scale, in sets of up to 5 (Google's limit). Adds leader, ranking and perKeyword stats.
geoworldwideUS, GB, DE, IN … or a region like US-CA.
timeRangetoday 12-mnow 1-H, now 4-H, now 1-d, now 7-d, today 1-m, today 3-m, today 12-m, today 5-y, all (2004–now).
propertywebweb, images, news, shopping, youtube.
category0Google Trends category ID (e.g. 7 Finance, 45 Health).
trendingGeos[]Countries for today's trending searches (one record each).
includeTimelinetrueEvery data point. Turn off for the smallest output.
includeRelatedQueries / maxRelatedtrue / 10Top and rising related searches.
includeRegions / maxRegionstrue / 10Where interest is highest.
maxConcurrency2Keywords in parallel.
retryCooldownSecs45Rate-limited keywords are retried once at the end, one at a time, after this pause.
directFirstonAttempts alternate between a direct connection and the proxy, starting direct. Turn off to send everything through the proxy.
proxyConfigurationApify ProxyUsed for every other attempt. Datacenter proxy works for normal use. For hundreds of keywords per hour, use a larger datacenter pool or RESIDENTIAL: Google throttles individual IPs after heavy use, and a small pool can be blocked for a while.

Output (real record, trimmed timeline)

{
"type": "keyword",
"keyword": "claude",
"keywords": [
"claude"
],
"geo": "US",
"timeRange": "today 12-m",
"timeRangeLabel": "past 12 months",
"property": "web",
"category": 0,
"resolution": "week",
"status": "ok",
"summaryText": "Search interest in \"claude\" is rising over the past 12 months (+257.1% last quarter of the range vs first); peak 100 on 2026-05-24, latest 58 (partial), average 53.5.",
"dataPoints": 52,
"latest": 58,
"latestDate": "2026-09-20",
"latestIsPartial": true,
"average": 53.5,
"recentAverage": 56.8,
"priorAverage": 56.8,
"recentChangePct": 0,
"trendChangePct": 257.1,
"slopePer10Pct": 6.9,
"peak": {
"value": 100,
"date": "2026-05-24"
},
"low": {
"value": 15,
"date": "2025-09-21"
},
"volatility": 0.53,
"direction": "rising",
"relatedQueries": {
"top": [
{
"query": "ai claude",
"value": 100,
"formattedValue": "100",
"breakout": false
},
{
"query": "claude code",
"value": 82,
"formattedValue": "82",
"breakout": false
},
{
"query": "anthropic claude",
"value": 32,
"formattedValue": "32",
"breakout": false
}
],
"rising": [
{
"query": "claude cowork",
"value": 101400,
"formattedValue": "Breakout",
"breakout": true
},
{
"query": "claude mythos",
"value": 52700,
"formattedValue": "Breakout",
"breakout": true
},
{
"query": "claude fable",
"value": 19800,
"formattedValue": "Breakout",
"breakout": true
}
]
},
"regions": [
{
"geo": "US-DC",
"name": "District of Columbia",
"value": 100
},
{
"geo": "US-WY",
"name": "Wyoming",
"value": 89
},
{
"geo": "US-CA",
"name": "California",
"value": 84
}
],
"timeline": [
{
"date": "2026-09-06",
"value": 56
},
{
"date": "2026-09-13",
"value": 56
},
{
"date": "2026-09-20",
"value": 58,
"partial": true
}
],
"exploreUrl": "https://trends.google.com/trends/explore?date=today%2012-m&q=claude&geo=US",
"fetchedAt": "2026-09-23T16:21:40.546Z"
}

Each related query also has containsKeyword (true when it mentions the keyword). Google's rising lists sometimes include unrelated site-wide breakouts, so filter on it when you only want on-topic queries.

A comparison record adds leader, ranking ([{keyword, average, direction}]), perKeyword (the same stats for each term), a timeline with one column per keyword, and regions with one value per keyword. A trending record has trending: [{rank, query, approxTraffic, approxTrafficMin, startedAt, news: [{title, url, source}]}].

How the direction is decided

trendChangePct compares the last quarter of the range with the first quarter. It's rising at +20% or more with a positive slope and falling at −20% or less with a negative slope. It's spiking when the peak falls in the most recent window, is at least twice the average, and the recent window jumped at least 50% over the one before. Everything else is stable. Google's partial current week/day is left out of the maths but still shown as latest.

Use it from an AI agent (MCP)

The Actor is callable through Apify's hosted MCP server: https://mcp.apify.com/?tools=cybermax/google-trends (header Authorization: Bearer <your Apify token>). It's also listed in the official MCP Registry. Typical agent prompts: "Is interest in pickleball still growing in the US?", "Compare Notion, Obsidian and Coda over 5 years", "What's trending in the UK right now?".

Pricing

EventPrice
Keyword analyzed (each keyword in a comparison counts once)$0.003
Trending list (one country)$0.003
Failed lookups, keywords with no search volumefree

When not to use it

  • Absolute search volumes. Google Trends is relative (0–100 in the chosen range and place). Use a keyword-volume tool if you need monthly searches.
  • More than 5 terms on one scale. Google's limit. Compare in sets that share one anchor term.
  • Real-time minute-by-minute monitoring. now 1-H is the finest range. Schedule runs for alerts.

Notes

Data comes from Google Trends' public web endpoints, the same ones trends.google.com uses, called politely with retries. Values can shift slightly between runs because Google samples. Not affiliated with Google.

More from the same developer: Boardroom Buys (SEC insider trades), DomainDNA (domain tech stack & email security), HireHeat (company hiring signals), SnapScout (website screenshots), all on apify.com/cybermax.