---
title: "Scrape Google Trends (interest over time, by region, related queries)"
method: POST
path: "/trends/google-trends"
tags: ["Plugins"]
---

# Scrape Google Trends (interest over time, by region, related queries)

`POST /trends/google-trends`

## Request

- Base URL: `https://api.scrapeunblocker.com`
- URL: `https://api.scrapeunblocker.com/trends/google-trends`
- Auth: API key in header `x-scrapeunblocker-key`

Compares 1-5 `keywords` on Google Trends and returns the data behind the explore page as JSON: `interestOverTime` (one point per time bucket with a 0-100 value per keyword, ISO `date`, `timestamp`, `isPartial`), `averages`, `interestByRegion` (`geoCode`, `geoName`, values per keyword), and per keyword `relatedQueries` and `relatedTopics` (opt-in via `sections`), each with `top` and `rising` lists. Filter with `geo` (worldwide, country, region or US metro), `timeframe` (presets such as 'today 12-m' or a custom date range), `category` and `property` (web, images, news, youtube, shopping). Use `sections` to fetch only what you need. Billed as one request per keyword compared.

## Query parameters

- `keywords` string, required: 1-5 search terms to compare, comma-separated, e.g. 'coffee,tea'. A Knowledge Graph topic id such as '/m/0dl567' also works.
- `geo` string: Where: empty = worldwide, an ISO-2 country ('US'), a region ('US-CA') or a US metro ('US-CA-807').
- `timeframe` string: Time range: now 1-H, now 4-H, now 1-d, now 7-d, today 1-m, today 3-m, today 12-m, today 5-y, all, or a custom 'YYYY-MM-DD YYYY-MM-DD' (hourly for the last 7 days: 'YYYY-MM-DDTHH YYYY-MM-DDTHH').
- `category` integer: Google Trends category id (0 = all categories, e.g. 71 = Food & Drink, 5 = Computers & Electronics).
- `property` string: Which Google search to measure: web, images, news, youtube, shopping.
- `hl` string: Language of labels (region names, topic titles), e.g. 'en-US', 'de', 'fr'.
- `tz` integer: Timezone offset in minutes that day/hour buckets align to (Trends' convention: 300 = UTC-5, -60 = UTC+1). Default 0 = UTC.
- `region_resolution` string, nullable: Level of the interest-by-region map: country, region, city, dma. Default = Trends' own choice (countries worldwide, regions in a country).
- `include_low_volume` boolean: Include regions with low search volume in the region map.
- `sections` string: What to fetch: a comma list of interest_over_time, interest_by_region, related_queries, related_topics, or 'all'. Fewer sections = faster. related_topics is opt-in (Google often returns it empty).
- `proxy_country` string, nullable: Proxy country the request is sent from (ISO-2, e.g. 'US', 'DE'). Optional - by default a country outside the US and Europe is used; results follow `geo`, not the proxy country.

## Response `200`

JSON with interestOverTime, interestByRegion, relatedQueries and relatedTopics.

- unknown

## Other responses

- `400`: Invalid parameters.
- `422`: Validation Error
- `502`: Google Trends refused, returned no data, or the call did not finish in time.

---

[API](https://skmtc.dev/scrapeunblocker/apis/scrapeunblocker-api.md) · [All operations](https://skmtc.dev/scrapeunblocker/apis/scrapeunblocker-api/llms.txt) · [OpenAPI document](https://skmtc.dev/scrapeunblocker/apis/scrapeunblocker-api/revisions/c02f1254cc47?raw)
