# Free Google Trends API — Interest Over Time + Related (`s-r/free-google-trends-scraper`) Actor

Hosted google trends scraper that returns structured JSON without the captcha-solving, proxy-rotation, and site-update maintenance you'd otherwise own. Run it from the Apify Store with one click, or call it from your own service via the Apify API.

- **URL**: https://apify.com/s-r/free-google-trends-scraper.md
- **Developed by:** [SR](https://apify.com/s-r) (community)
- **Categories:** Marketing, Business
- **Stats:** 108 total users, 26 monthly users, 100.0% runs succeeded, 1 bookmarks
- **User rating**: No ratings yet

## Pricing

$5.00 / 1,000 trend query analyzeds

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?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
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.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — 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 Scraper: Interest Over Time and Related Queries

Hosted google trends scraper that returns structured JSON without the captcha-solving, proxy-rotation, and site-update maintenance you'd otherwise own. Run it from the Apify Store with one click, or call it from your own service via the Apify API. Pay only for what you scrape, no monthly subscription.

### What you get

- **Structured JSON output**, every google trends scraper run returns clean, parseable records ready for analytics or downstream pipelines.
- **Hosted on Apify**, no servers, no proxies, no anti-bot maintenance. Click Run.
- **Pay only for what you scrape**, pricing scales with usage; no monthly subscription minimum.
- **Multi-country support**, pass a `country` / `geo` parameter to localize results across 50+ regions.
- **Multi-language support**, set the `language` field to receive native-locale results.
- **Built-in proxy rotation**, IP blocks, captchas, and rate limits are handled for you.

### Why use this google trends scraper instead of open-source GitHub libraries

open-source GitHub libraries is a great tool, but it has trade-offs that this Apify Actor avoids:

- **No subscription lock-in.** open-source GitHub libraries typically requires a monthly contract starting at $99-$449/month. This Actor charges per run, you can spend $5 on a one-off competitive audit and walk away.
- **Direct dataset access.** Instead of clicking through a dashboard UI to copy data, you get a machine-readable JSON dataset on every run. Pipe it straight into BigQuery, Snowflake, or your warehouse.
- **Hosted scraping infrastructure.** Apify handles proxy rotation, captcha solving, and retries, so you get the same data open-source GitHub libraries returns, without paying for their reporting layer you may not need.
- **No per-seat pricing.** Anyone on your team can call the Actor's API; pricing is based on usage, not seats.

### Input

| Field | Type | Default | Description |
|---|---|---|---|
| `keywords` | array | **required** | Search terms to pull trends for (e.g. 'pizza', 'AI', 'dogecoin'). |
| `geo` | string | `US` | Two-letter country code (US, GB, NL, DE…). Leave blank for worldwide. |
| `hl` | string | `en-US` | Language code (en-US, nl-NL, de-DE…). |
| `timeframe` | string | `today 12-m` | pytrends format: 'today 12-m', 'today 5-y', 'now 7-d', or 'YYYY-MM-DD YYYY-MM-DD'. |
| `include_related_queries` | boolean | `True` | Top + rising related search terms. |
| `include_related_topics` | boolean | `True` | Top + rising related topics (entities). |
| `include_regional_interest` | boolean | `False` | Interest by country/region (slower). |
| `use_cookies` | boolean | `True` | Recommended. Pulls a rotating session from the cookie pool for each widget call to bypass rate limits. |
| `use_proxy` | boolean | `False` | Default OFF. Direct connection works for most widgets; the IPv6 proxy can hurt success rates on Trends. |
| `use_residential_proxy` | boolean | `False` | Opt-in. Higher reliability for the related\_topics widget which is consistently rate-limited from datacenter… |

### Output

Every run pushes results to the Apify dataset as JSON records. Each record contains the structured fields surfaced by the google trends scraper, fields, IDs, timestamps, and any nested objects. You can:

- **Download** the dataset as JSON, JSONL, CSV, or Excel from the Apify console
- **Stream** results via the Apify API for use in your own application
- **Pipe** results to webhooks, S3, BigQuery, or any of Apify's 30+ integrations
- **Diff** today's run against yesterday's to detect changes (new entries, removed entries, modified fields)

### Use cases for the google trends scraper

#### Content planning

Use google trends scraper data to choose blog topics rising in interest before competitors notice, write the article while volume is still climbing.

#### Product launch timing

Cross-reference google trends scraper with your launch calendar, push launches into rising-interest windows for free organic boost.

#### Investor research

Spot regional shifts in google trends scraper interest as early signal of market opportunity or saturation.

#### SEO content briefs

Anchor your editorial calendar on the google trends scraper terms with sustained 3-month rising lines.

### How it compares

Other tools that rank for "google trends scraper" are mostly subscription SERP APIs. Here is where this Actor sits.

| | This Actor | Bright Data | ScrapingBee | Outscraper |
|---|---|---|---|---|
| Run without your own API key | Yes, runs from the Apify Store | No, needs an account key | No, needs an account key | No, needs an account key |
| Hosted (proxies + captcha handled) | Yes | Yes | Yes | Yes |
| Structured JSON output | Yes | Yes | Yes | Yes |
| Related queries + topics + regional interest in one run | Yes | Varies by endpoint | Varies by endpoint | Varies by endpoint |
| Pay per result, no monthly quota | Yes | Monthly plan | Monthly credits | Monthly plan |

If you already run other jobs on Apify, this Actor keeps Trends data in the same account, dataset format, and billing. No extra vendor signup.

### FAQ

#### Is this google trends scraper free?

The Actor itself is hosted on Apify with pay-per-event pricing, you only pay for what you actually scrape. There's no monthly subscription and no minimum spend. The first few runs typically cost less than a coffee. For long-running daily jobs, your monthly bill scales with the volume of data you pull.

#### How does this google trends scraper compare to existing tools?

Compared to open-source GitHub libraries, this Actor returns the same structured data without the monthly subscription or per-seat pricing. You pay per run, not per month, which is dramatically cheaper for most teams that need data in bulk but don't need a dashboard UI.

#### What input does the google trends scraper accept?

The full input schema is rendered as a form on the Apify Store page, you can run a job by filling out a few fields with no code. The schema also accepts raw JSON if you're calling the Actor via the Apify API from your own service. See the **Input** section above for the field list.

#### How accurate is the google trends scraper data?

The Actor scrapes data directly from the source, so accuracy matches what a human user would see on the page. There's no third-party cache or middleware, every run returns the live state. If the upstream site throttles requests, the Actor handles retries and proxy rotation transparently and surfaces a structured error in the dataset's `errors` field rather than failing silently.

#### Can I run this google trends scraper on a schedule?

Yes, Apify has built-in scheduling. You can set the Actor to run hourly, daily, or weekly, and pipe results to webhooks, S3, or your data warehouse via the Apify integrations. Most teams schedule the google trends scraper as a daily task and incrementally diff against the previous run to detect changes.

### Pricing

This google trends scraper uses Apify's pay-per-event pricing, every successful record costs a small fixed amount, so your bill scales linearly with usage. There's no monthly subscription and no minimum spend. See the Apify Store page for the current per-event price; expect typical workloads to cost a few dollars per run.

# Actor input Schema

## `keywords` (type: `array`):

Search terms to pull trends for (e.g. 'pizza', 'AI', 'dogecoin').

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

Two-letter country code (US, GB, NL, DE…). Leave blank for worldwide.

## `hl` (type: `string`):

Language code (en-US, nl-NL, de-DE…).

## `timeframe` (type: `string`):

pytrends format: 'today 12-m', 'today 5-y', 'now 7-d', or 'YYYY-MM-DD YYYY-MM-DD'.

## `include_related_queries` (type: `boolean`):

Top + rising related search terms.

## `include_related_topics` (type: `boolean`):

Top + rising related topics (entities).

## `include_regional_interest` (type: `boolean`):

Interest by country/region (slower).

## `use_cookies` (type: `boolean`):

Recommended. Pulls a rotating session from the cookie pool for each widget call to bypass rate limits.

## `use_proxy` (type: `boolean`):

Default OFF. Direct connection works for most widgets; the IPv6 proxy can hurt success rates on Trends.

## `use_residential_proxy` (type: `boolean`):

Opt-in. Higher reliability for the related\_topics widget which is consistently rate-limited from datacenter IPs. Costs Apify residential proxy compute units (~$1.20/GB).

## Actor input object example

```json
{
  "keywords": [
    "pizza",
    "sushi"
  ],
  "geo": "US",
  "hl": "en-US",
  "timeframe": "today 12-m",
  "include_related_queries": true,
  "include_related_topics": true,
  "include_regional_interest": false,
  "use_cookies": true,
  "use_proxy": false,
  "use_residential_proxy": false
}
```

# Actor output Schema

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

Dataset rows produced by this run.

## `output` (type: `string`):

OUTPUT record with the run's counts and status flags.

## `errors` (type: `string`):

Failures with a code and a redacted message. Absent when the run had none.

# 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 = {
    "keywords": [
        "pizza",
        "sushi"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("s-r/free-google-trends-scraper").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 = { "keywords": [
        "pizza",
        "sushi",
    ] }

# Run the Actor and wait for it to finish
run = client.actor("s-r/free-google-trends-scraper").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 '{
  "keywords": [
    "pizza",
    "sushi"
  ]
}' |
apify call s-r/free-google-trends-scraper --silent --output-dataset

```

## MCP server setup

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

```

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/1hOOW2SvNeygPfSTy/builds/cYN55g8kqbcVpRBhQ/openapi.json
