Google Trends for any number of keywords on one scale: interest over time, regions, rising queries.
One address for any MCP client. Your key stays in your Odel vault.

At most: only reads or looks up information.
Odel charges nothing per call. The publisher may charge for its own service.
| Access to | Read | Change |
|---|---|---|
| Full api access | Not stated: full_api_access | |
From the sign-in at console-backend.apify.com, as the endpoint publishes it. You approve it there.
Odel could not list its tools without signing in.
Get Google Trends data into Python: interest over time, interest by region, top and rising related searches, and simple trend metrics. You can also compare 10, 50 or 100+ keywords on one scale. The Google Trends website stops at 8 (5 in classic Explore).
pytrends was archived in April 2025 and often fails with 429 Too Many Requests. Google announced an official Trends API in July 2025, but it is an alpha with limited, application-based access. These examples use a hosted scraper instead, the Google Trends Scraper on Apify, which deals with Google's session cookies and rate limits for you.
Tutorial: Google Trends in Python without pytrends, and how to compare more keywords than Google allows. It covers the two endpoints behind the website, the trick for linking comparisons, and what the data looks like.

Example output: search interest in the Programming category fell 40-68% for most languages between 2021 and 2026. Made with examples/compare_keywords.py and matplotlib.
pip install -r requirements.txt
export APIFY_TOKEN=your-token # Windows: set APIFY_TOKEN=your-token
python examples/compare_keywords.py
keyword share % average trend
java 29.4 63.7 falling (-48.8%)
c++ 23.8 51.6 stable (-7.1%)
python 15.8 34.3 falling (-43.7%)
...
| File | What it does |
|---|---|
examples/compare_keywords.py | Compares 10 keywords on one shared scale, prints share of search and trend, and saves a CSV |
examples/keyword_report.py | Trend, peak, busiest month, top regions and rising searches per keyword |
examples/plot_trends.py | Plots interest over time for several keywords with matplotlib |
examples/raw_endpoints.py | The two JSON endpoints behind trends.google.com, with no library at all. Good for a few keywords. |
sample-output/programming-languages-5y.csv shows the CSV from compare_keywords.py.
interestOverTime: the full time series (0-100), with the unfinished last week or day marked partialinterestByRegion: countries, states or regions where the keyword is most popularrelatedQueriesTop and relatedQueriesRising, including breakoutsaverageInterest, latestInterest, peakInterest, peakDatetrend (rising, falling or stable) and trendChangePercent: the last quarter of the period against the first quarterbusiestMonth for periods of about a year or longershareOfSearch when you compare keywords on one shared scaleGoogle's Trends API compares at most 5 keywords per request (the website shows up to 8) and scales each request so its highest point is 100. To compare more, the scraper:
Google rounds to whole numbers, so a tiny keyword next to a huge one can still show as 0. Compare keywords of a similar size for the best precision.
To let Claude, Cursor, VS Code or another MCP client look up Google Trends for you, add this MCP server URL: https://mcp.apify.com/?tools=ralfij/google-trends-scraper. Sign in to Apify when the client asks, or send your Apify API token as Authorization: Bearer <token>. Runs are billed to your own Apify account.
raw_endpoints.py shows how to do it yourself.MIT