A production Google Trends API is the client that returns three JSON payloads from code: keyword history, named growth windows, and the live trending-now board. Google's own Trends API is an application-gated alpha. It is first-party and unscaled. It is not a key a developer can mint today. Unofficial clients scrape the website. The widely used Python client pytrends is archived. Trends API covers the three jobs on POST https://api.trendsapi.ai/api with source google search for history and type Google Trends for the live board. The same key also reads platforms Google does not ship.

Three payloads the query is asking for

"Best Google Trends API" is a production question. The website can already plot a term. The missing piece is a contract a scheduler can call.

get_time_series returns weekly points for one source and one keyword. Each point has date, a 0-100 value, and volume when the source has it. get_growth returns point-to-point percent change over preset windows such as 3M, 12M, and YTD. get_top_trends with type Google Trends returns the live board. No keyword.

A tool that only wraps the CSV export, or only returns the current board, covers one of those jobs.

Official alpha versus unofficial clients versus a managed POST

Google documents the official API on Search Central. The page states a rolling five-year window, daily through yearly aggregation, region and sub-region comparison, and values that are not rescaled 0-100 on each request. Access is an alpha application. There is no public signup.

Unofficial clients hit the Trends website. They inherit 429s, bot checks, and HTML changes. pytrends is the common Python example. GitHub marks the repository archived.

Trends API is a third path. One URL, a Bearer key, JSON in and JSON out. Field names live on the API reference. Plan limits live on pricing. Source-level notes for Google live on the Google Trends guide.

Live Google Trends board, 27 August 2026

This pull used the Trends API MCP server in this session. type was Google Trends. limit was 8. Snapshot time 2026-08-27T18:01:38Z.

Rank Term
1 dolly parton
2 tim curry
3 nepal
4 carl dean
5 jed york
6 lunar eclipse august 2026
7 shelley fabares
8 nvidia stock

The same board from REST:

POST https://api.trendsapi.ai/api
Authorization: Bearer <api_key>
Content-Type: application/json

{"mode":"get_top_trends","type":"Google Trends","limit":8}

The HTTP envelope is {"statusCode": int, "body": string}. Parse body a second time. The inner object has as_of_ts, type, limit, offset, count, and data as [rank, label] rows.

History and growth on the same key

The live board does not replace keyword history. For a term, set mode to get_growth or get_time_series and source to google search.

POST https://api.trendsapi.ai/api
Authorization: Bearer <api_key>
Content-Type: application/json

{"mode":"get_growth","source":"google search","keyword":"nvidia stock","percent_growth":["3M","12M"]}

get_growth is the shorter call when the question is "up or down." get_time_series is the call when the next step is a chart or custom math. Exact source strings sit on the sources table.

What this page is not

This page is the category head. It does not rank SerpApi, DataForSEO, Glimpse, or Apify row by row. Those pages come later under their own slugs. It also does not replace the official alpha. If the project is approved and the required series is Google-only unscaled interest, use Google's API.

For the alternatives-intent version of this query, see Google Trends API alternatives.