# Google Trends API — Daily Trending Searches (RSS-Backed) (`tugelbay/google-trends-tracker`) Actor

Daily trending Google searches across US, GB, DE, RU, KZ, JP, BR, IN and 50+ markets — with related news context. PPE pricing, RSS-based, 95%+ success rate. AI-agent native.

- **URL**: https://apify.com/tugelbay/google-trends-tracker.md
- **Developed by:** [Tugelbay Konabayev](https://apify.com/tugelbay) (community)
- **Categories:** SEO tools, AI, Marketing
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, NaN bookmarks
- **User rating**: No ratings yet

## Pricing

Pay per usage

This Actor is paid per platform usage. The Actor is free to use, and you only pay for the Apify platform usage, which gets cheaper the higher subscription plan you have.

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

## What's an Apify Actor?

Actors are a software tools running on the Apify platform, for all kinds of web data extraction and automation use cases.
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.
Actors are written with capital "A".

## 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.
The best way to integrate Actors is as follows.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/platform/integrations/mcp.md).

If your project is in a different language, use the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).


# README

## Google Trends Daily Tracker — Multi-Geo Trends API

Pull daily trending Google searches across **US, GB, DE, RU, KZ, JP, BR, IN and 50+ markets** with related news context — in one Apify run. Pay-per-event pricing, 95%+ success rate, no Playwright, no proxy gymnastics. Built on Google's public RSS feed.

<a href="https://apify.com/tugelbay/google-trends-tracker">
  <img src="https://api.apify.com/v2/key-value-stores/bplRdpnd85eGQkW1N/records/google-trends-tracker-hero.png" alt="Google Trends Daily Tracker multi-geo trends API" width="100%">
</a>

<p>
  <img src="https://api.apify.com/v2/key-value-stores/bplRdpnd85eGQkW1N/records/google-trends-tracker-input-output.png" alt="Google Trends Daily Tracker input and output example" width="49%">
  <img src="https://api.apify.com/v2/key-value-stores/bplRdpnd85eGQkW1N/records/google-trends-tracker-dataset-preview.png" alt="Daily Google trends dataset preview" width="49%">
</p>

### What it does

For each country code in your `geos` input, the actor fetches the day's top trending search queries plus the news articles Google associates with each trend (title, URL, publication source, snippet, picture). Results are pushed as structured records ready for analytics dashboards, CRM enrichment, content-planning workflows, or AI-agent ingestion.

### Why this actor vs alternatives

| Feature               | Apify rivals (rental, $30/mo)   | Google Trends Daily Tracker           |
| --------------------- | ------------------------------- | ------------------------------------- |
| Pricing               | rental subscription             | **pay-per-result**, $0.001 per trend  |
| Success rate          | 79%                             | **95%+** (RSS endpoint, no JS render) |
| Geos per run          | 1                               | **unlimited** list                    |
| News context          | partial                         | **full** structured `newsItems[]`     |
| AI agent / MCP-native | no (rental)                     | **yes** (PPE)                         |
| Setup latency         | minutes (Playwright cold-start) | **seconds** (RSS fetch)               |

### Input

```json
{
  "geos": ["US", "GB", "DE", "RU"],
  "language": "en-US",
  "maxItems": 100,
  "includeNewsItems": true
}
````

| Field              | Type     | Default  | Notes                                                  |
| ------------------ | -------- | -------- | ------------------------------------------------------ |
| `geos`             | string\[] | `["US"]` | ISO country codes; pass several for cross-market scans |
| `language`         | string   | `en-US`  | BCP-47 locale tag                                      |
| `maxItems`         | int      | 100      | Hard cap across all geos (1–1000)                      |
| `includeNewsItems` | bool     | true     | Attach related news per trend                          |

### Output

```json
{
  "query": "champions league final",
  "geo": "GB",
  "language": "en-GB",
  "approxTraffic": "500K+",
  "pubDate": "Mon, 5 May 2026 14:30 GMT",
  "newsItems": [
    {
      "title": "Champions League Final Live: Real Madrid vs Borussia Dortmund",
      "snippet": "Goals, lineups and live commentary from Wembley...",
      "url": "https://www.bbc.co.uk/sport/football/...",
      "source": "BBC Sport",
      "pictureUrl": "https://t1.gstatic.com/..."
    }
  ],
  "newsItemCount": 5,
  "trendUrl": "https://trends.google.com/trends/explore?q=champions+league+final&geo=GB"
}
```

### Use cases

- **Content marketing teams** — daily trend digest for newsroom briefs, blog ideation, social posting calendars
- **SEO agencies** — pair with `tugelbay/keyword-rank-tracker` to spot rising queries before they hit search-volume tools
- **Investor / market intel** — track what consumers are searching across markets in real time
- **AI agents** — give your assistant a "what's hot today" tool via PPE-billable Apify integration
- **Cross-border arbitrage** — see what's trending in market A that hasn't yet hit market B

### Programmatic usage

#### Python

```python
from apify_client import ApifyClient

client = ApifyClient("YOUR_TOKEN")
run = client.actor("tugelbay/google-trends-tracker").call(run_input={
    "geos": ["US", "GB", "JP"],
    "maxItems": 50,
})
for trend in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(trend["query"], "—", trend["approxTraffic"])
```

#### JavaScript

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

const client = new ApifyClient({ token: "YOUR_TOKEN" });
const { defaultDatasetId } = await client
  .actor("tugelbay/google-trends-tracker")
  .call({
    geos: ["US", "GB"],
    maxItems: 50,
  });
const { items } = await client.dataset(defaultDatasetId).listItems();
console.log(items);
```

#### LangChain tool

```python
from langchain_core.tools import tool
from apify_client import ApifyClient

@tool
def whats_trending_now(country: str = "US") -> list[dict]:
    """Return today's top Google searches in {country}."""
    client = ApifyClient("YOUR_TOKEN")
    run = client.actor("tugelbay/google-trends-tracker").call(run_input={
        "geos": [country], "maxItems": 20,
    })
    return list(client.dataset(run["defaultDatasetId"]).iterate_items())
```

### Pricing (PPE)

| Event              | Price                                  |
| ------------------ | -------------------------------------- |
| Actor start        | $0.005                                 |
| Daily-trend record | $0.001                                 |
| News-item child    | $0.0005 (when `includeNewsItems=true`) |

A typical 50-trend run with news: ~$0.005 + 50×$0.001 + 250×$0.0005 ≈ $0.18 per run.

### Cost vs alternatives

- Pulling 100 trends/day × 30 days from rental rivals: **$30/mo flat**
- Pulling the same here: 30 × ~$0.30 = **$9/mo** (70% saving) and you only pay for runs you actually use

### FAQ

**Q: How fresh are the trends?**
A: Google's RSS feed is updated hourly; this actor returns whatever Google has staged for the requested geo at fetch time.

**Q: Do I need an Apify proxy?**
A: No. RSS endpoint is public.

**Q: Can I run this on a schedule?**
A: Yes — use Apify Schedules to run hourly/daily and pipe results into your dataset of choice.

**Q: Why is my geo returning empty?**
A: Some smaller markets have sparse trending data. Try a major market (US, GB, DE, FR, JP) to verify the actor is functioning, then narrow to your target.

**Q: How does it differ from `keyword-rank-tracker`?**
A: This finds *what's trending*; `keyword-rank-tracker` measures *where you rank* on a known keyword. Use both together — trends → rank check → optimize.

### Limitations

- Google's RSS feed exposes only the top ~20 daily trends per geo — not the full long-tail trending list (that requires the Web UI behind their bot wall).
- Locale string must match Google's accepted set (e.g. `en-US`, not `en_US`).
- News-item arrays vary in length; some trends have 0 news items.

### Changelog

- 0.1.0 (2026-05-05): Initial release — multi-geo, news-item enrichment, PPE pricing.

# Actor input Schema

## `geos` (type: `array`):

ISO country codes to fetch trends for (e.g., US, GB, DE, FR, RU, KZ, BR, IN, JP, KR). Pass multiple in one run for cross-market comparisons.

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

BCP-47 locale tag (e.g., en-US, ru-RU, de-DE). Default en-US.

## `maxItems` (type: `integer`):

Hard cap across all geos (1-1000). Default 100.

## `includeNewsItems` (type: `boolean`):

Attach the news\_item array to each trend (title, url, source, snippet, picture). Disable to slim output.

## Actor input object example

```json
{
  "geos": [
    "US"
  ],
  "language": "en-US",
  "maxItems": 100,
  "includeNewsItems": true
}
```

# 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 = {
    "geos": [
        "US"
    ],
    "language": "en-US"
};

// Run the Actor and wait for it to finish
const run = await client.actor("tugelbay/google-trends-tracker").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 = {
    "geos": ["US"],
    "language": "en-US",
}

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

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

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

```

## CLI example

```bash
echo '{
  "geos": [
    "US"
  ],
  "language": "en-US"
}' |
apify call tugelbay/google-trends-tracker --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=tugelbay/google-trends-tracker",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Google Trends API — Daily Trending Searches (RSS-Backed)",
        "description": "Daily trending Google searches across US, GB, DE, RU, KZ, JP, BR, IN and 50+ markets — with related news context. PPE pricing, RSS-based, 95%+ success rate. AI-agent native.",
        "version": "0.1",
        "x-build-id": "fmDBgAxFhIYElGfhz"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/tugelbay~google-trends-tracker/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-tugelbay-google-trends-tracker",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        },
        "/acts/tugelbay~google-trends-tracker/runs": {
            "post": {
                "operationId": "runs-sync-tugelbay-google-trends-tracker",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor and returns information about the initiated run in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/runsResponseSchema"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/acts/tugelbay~google-trends-tracker/run-sync": {
            "post": {
                "operationId": "run-sync-tugelbay-google-trends-tracker",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "properties": {
                    "geos": {
                        "title": "Country codes",
                        "type": "array",
                        "description": "ISO country codes to fetch trends for (e.g., US, GB, DE, FR, RU, KZ, BR, IN, JP, KR). Pass multiple in one run for cross-market comparisons.",
                        "default": [
                            "US"
                        ],
                        "items": {
                            "type": "string"
                        }
                    },
                    "language": {
                        "title": "Language locale",
                        "type": "string",
                        "description": "BCP-47 locale tag (e.g., en-US, ru-RU, de-DE). Default en-US.",
                        "default": "en-US"
                    },
                    "maxItems": {
                        "title": "Max trend records",
                        "minimum": 1,
                        "maximum": 1000,
                        "type": "integer",
                        "description": "Hard cap across all geos (1-1000). Default 100.",
                        "default": 100
                    },
                    "includeNewsItems": {
                        "title": "Include related news",
                        "type": "boolean",
                        "description": "Attach the news_item array to each trend (title, url, source, snippet, picture). Disable to slim output.",
                        "default": true
                    }
                }
            },
            "runsResponseSchema": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string"
                            },
                            "actId": {
                                "type": "string"
                            },
                            "userId": {
                                "type": "string"
                            },
                            "startedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "finishedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "status": {
                                "type": "string",
                                "example": "READY"
                            },
                            "meta": {
                                "type": "object",
                                "properties": {
                                    "origin": {
                                        "type": "string",
                                        "example": "API"
                                    },
                                    "userAgent": {
                                        "type": "string"
                                    }
                                }
                            },
                            "stats": {
                                "type": "object",
                                "properties": {
                                    "inputBodyLen": {
                                        "type": "integer",
                                        "example": 2000
                                    },
                                    "rebootCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "restartCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "resurrectCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "computeUnits": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "options": {
                                "type": "object",
                                "properties": {
                                    "build": {
                                        "type": "string",
                                        "example": "latest"
                                    },
                                    "timeoutSecs": {
                                        "type": "integer",
                                        "example": 300
                                    },
                                    "memoryMbytes": {
                                        "type": "integer",
                                        "example": 1024
                                    },
                                    "diskMbytes": {
                                        "type": "integer",
                                        "example": 2048
                                    }
                                }
                            },
                            "buildId": {
                                "type": "string"
                            },
                            "defaultKeyValueStoreId": {
                                "type": "string"
                            },
                            "defaultDatasetId": {
                                "type": "string"
                            },
                            "defaultRequestQueueId": {
                                "type": "string"
                            },
                            "buildNumber": {
                                "type": "string",
                                "example": "1.0.0"
                            },
                            "containerUrl": {
                                "type": "string"
                            },
                            "usage": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "usageTotalUsd": {
                                "type": "number",
                                "example": 0.00005
                            },
                            "usageUsd": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "number",
                                        "example": 0.00005
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
