# Google Trends Scraper - Reliable (Interest, Regions, Related) (`geese_chief/google-trends-reliable`) Actor

Get Google Trends data for any keyword: interest over time, interest by region, related queries and related topics (top + rising). Any country, time range, category, and Web/YouTube/News/Shopping/Images. Auto-retries rate limits; failed terms are never charged.

- **URL**: https://apify.com/geese_chief/google-trends-reliable.md
- **Developed by:** [Ponytail Data](https://apify.com/geese_chief) (community)
- **Stats:** 3 total users, 2 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $3.00 / 1,000 trend reports

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

## Google Trends Scraper - Reliable

Get **Google Trends data for any keyword** as clean JSON: interest over time, interest by region, related queries and related topics (top + rising, including "Breakout" terms). Works for any country, any time range, any category, and for **Web, YouTube, News, Google Shopping and Image** search.

Built for reliability: Google Trends rate-limits hard (HTTP 429). This Actor rotates sessions and proxy IPs and retries with backoff automatically. **If a term still fails, you are not charged for it.**

### What you get per keyword

```json
{
  "searchTerm": "chatgpt",
  "geo": "US",
  "timeRange": "today 3-m",
  "interestOverTime": [{"date": "Oct 11, 2026", "timestamp": 1791676800, "value": 78, "isPartial": true}],
  "interestByRegion": [{"region": "California", "code": "US-CA", "value": 100}],
  "relatedQueries": {
    "top":    [{"query": "chatgpt login", "value": 79, "formattedValue": "79"}],
    "rising": [{"query": "chatgpt student offer", "value": 450, "formattedValue": "+450%"}]
  },
  "relatedTopics": {"top": [], "rising": []}
}
```

One keyword = one complete report = one result. Export to JSON, CSV, Excel, or send to Google Sheets, Make, Zapier, n8n or your LLM agent.

### Use cases

- **SEO & content** — find rising queries before competitors do.
- **Product & market research** — compare demand across countries and seasons.
- **E-commerce** — use Google Shopping trends to time inventory.
- **YouTube creators** — use YouTube search trends to pick video topics.
- **Data science** — feed weekly interest series into forecasting models.
- **AI agents** — call it via the Apify MCP server to answer "is X growing?"

### Input

| Field | Description |
|---|---|
| searchTerms | List of keywords. Each returns a full report. |
| geo | `US`, `GB`, `DE`, `US-CA`… Empty = worldwide. |
| timeRange | Past hour → 2004-present, or custom `2024-01-01 2024-12-31`. |
| property | Web (default), `youtube`, `news`, `froogle` (Shopping), `images`. |
| category | Google Trends category id, 0 = all. |
| proxy | Apify Proxy recommended (on by default). |

### Pricing

**$3 per 1,000 keyword reports** ($0.003 each), pay only for successful results. Apify's free monthly credit covers well over 1,000 reports.

### FAQ

**Why are values 0–100?** That's how Google Trends works: values are relative to the peak in the chosen time and region.

**Can I compare keywords?** Each keyword is normalized to its own peak (0–100), so the dates line up but absolute values are not directly comparable between keywords.

**Rate limits?** Handled for you with retries and IP rotation. For very large batches, use residential proxy.

# Actor input Schema

## `searchTerms` (type: `array`):

Keywords to look up. Each one returns a full report.

## `geo` (type: `string`):

2-letter country code (US, GB, DE) or region (US-CA). Empty = worldwide.

## `timeRange` (type: `string`):

Or type a custom range in the JSON input, e.g. '2024-01-01 2024-12-31'.

## `property` (type: `string`):

Search type.

## `category` (type: `integer`):

Google Trends category id (0 = all).

## `language` (type: `string`):

Language for region and topic names.

## `proxy` (type: `object`):

Recommended. Rotating proxies avoid Google rate limits.

## Actor input object example

```json
{
  "searchTerms": [
    "chatgpt",
    "claude ai"
  ],
  "geo": "",
  "timeRange": "today 12-m",
  "property": "",
  "category": 0,
  "language": "en-US",
  "proxy": {
    "useApifyProxy": true
  }
}
```

# Actor output Schema

## `results` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "searchTerms": [
        "chatgpt",
        "claude ai"
    ],
    "proxy": {
        "useApifyProxy": true
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("geese_chief/google-trends-reliable").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "searchTerms": [
        "chatgpt",
        "claude ai",
    ],
    "proxy": { "useApifyProxy": True },
}

# Run the Actor and wait for it to finish
run = client.actor("geese_chief/google-trends-reliable").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "searchTerms": [
    "chatgpt",
    "claude ai"
  ],
  "proxy": {
    "useApifyProxy": true
  }
}' |
apify call geese_chief/google-trends-reliable --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,geese_chief/google-trends-reliable"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/Rqdgn46WN0PkYIrr6/builds/cNoADth5ychestWPj/openapi.json
