Google Trends Scraper avatar

Google Trends Scraper

Pricing

$19.99/month + usage

Go to Apify Store
Google Trends Scraper

Google Trends Scraper

📈 Google Trends Scraper pulls real-time Google Trends data—interest over time, by region, related topics & queries—so you can compare keywords, spot seasonality, and export CSV/JSON. 🔎 Ideal for SEO, content planning, and market research. 🚀 Fast, easy, accurate.

Pricing

$19.99/month + usage

Rating

0.0

(0)

Developer

Scrapium

Scrapium

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Share

Google Trends Scraper is a Python-based Google Trends data scraper that collects “interest over time” metrics for one or more keywords and outputs clean, structured timelines you can export to CSV or JSON. It solves the manual effort of checking Google Trends charts by automating Google Trends data extraction with configurable time ranges, geographies, and categories. Built for marketers, developers, data analysts, and researchers, it enables scalable keyword comparisons and Google Trends historical data downloader workflows powered by pytrends Python Google Trends.

What data / output can you get?

The actor produces a single, structured dataset item per run with a timeline of values for each keyword you provide. Fields are consistent and export-ready so you can Download Google Trends data or Export Google Trends to CSV instantly.

Data typeDescriptionExample value
inputUrlOrTermConcatenated list of input keywords (for traceability)"chatgpt, AI, python"
searchTermEcho of input keywords (alias)"chatgpt, AI, python"
interestOverTime_timelineDataArray of time-series rows (date + one column per keyword)[ … ]
interestOverTime_timelineData[].dateDate of the observation (granularity depends on timeRange)"2026-03-01"
interestOverTime_timelineData[].chatgptInterest value for the “chatgpt” keyword at that date87
interestOverTime_timelineData[].AIInterest value for the “AI” keyword at that date65
interestOverTime_timelineData[].pythonInterest value for the “python” keyword at that date42

Notes:

  • The isPartial column from Google Trends is removed automatically to keep outputs clean.
  • The time-series granularity changes with the selected timeRange (daily/weekly/monthly as applicable).
  • Export formats: JSON and CSV via Apify dataset exports.

Key features

  • 🧭 Bold interest-over-time timelines Get clean “interest over time” data using pytrends, ideal for time-series analysis and dashboards.

  • 🧩 Bulk keyword comparison Analyze multiple keywords in one run; each appears as its own column in the timeline for side-by-side comparison. Perfect for Google Trends bulk keyword download use cases.

  • 🌍 Geo and category filters Control scope with geo (country code or global) and category (0 for all categories), enabling precise Google Trends keyword scraper workflows.

  • ⏱️ Time-range presets with smart granularity Choose from “today 1-m”, “today 3-m”, “today 12-m”, “today 5-y”, or pass a custom range (YYYY-MM-DD YYYY-MM-DD) to tailor daily/weekly/monthly granularity for your Google Trends historical data downloader needs.

  • 🛡️ Resilient proxy fallback Starts without a proxy and automatically falls back to datacenter and then residential proxies on blocks, with retry and backoff logic to Automate Google Trends scraping reliably.

  • 💾 Structured exports Results are pushed to the Apify dataset for one-click JSON or CSV export. Ideal for BI tools, notebooks, and pipelines.

  • 🐍 Developer-friendly (Python) Implemented with pytrends (Google Trends API Python community client), making it easy to integrate into Python-based analytics and automation.

  • 🏗️ Production-ready on Apify Built as an Apify actor with logs, dataset management, and proxy configuration—suitable for scheduled runs and integration via the Apify API.

  1. Create or log in to your Apify account Access the Apify Console to run the actor.

  2. Open the Google Trends Scraper Locate “Google Trends Scraper” and click Try for free or Start.

  3. Add your keywords In the input, paste a list of keywords under keywords (array of strings). Example: ["chatgpt", "AI", "python"] for a Google Trends bulk keyword download.

  4. Configure time range and scope

    • timeRange: Select “today 1-m”, “today 3-m”, “today 12-m”, “today 5-y”, or pass a custom range like "2023-01-01 2023-12-31".
    • geo: Set a country code (e.g., "US") or leave empty for global.
    • category: Use 0 for all categories or a specific ID as needed.
  5. Set proxy (optional) Configure proxyConfiguration if you anticipate blocking; the actor will start direct and fall back automatically when necessary.

  6. Run the actor Click Start. The actor fetches the timeline, handles retries/blocks, and pushes structured data to the dataset.

  7. Download your results Open the Run dataset and export as JSON or CSV. Use these files in Python, spreadsheets, or BI tools to continue Google Trends data extraction workflows.

Pro tip: Use the Apify API to trigger runs and fetch datasets programmatically from Node.js or Python—ideal for Automate Google Trends scraping pipelines.

Use cases

Use case nameDescription
SEO & content timingIdentify seasonality and peak interest windows to plan posts, articles, and videos for maximum impact.
PPC keyword validationCompare brand and generic terms over time to prioritize high-interest, rising queries in paid campaigns.
Market trend monitoringTrack category-level interest shifts across geographies for faster go/no-go product decisions.
Competitive benchmarkingCompare multiple brands or product names side-by-side and monitor relative popularity over time.
Data science & forecastingFeed clean time series into modeling pipelines for demand forecasting and anomaly detection.
Academic researchCollect reproducible time-series data for peer-reviewed studies and public-interest analyses.
API-driven reportingAutomate daily/weekly runs and pull datasets via the Apify API for dashboards and alerts.

This Google Trends data scraper is built for precision, resilience, and developer-grade workflows.

  • ✅ Accurate timelines only: Focused on “interest over time” for clean, analysis-ready outputs.
  • 🧪 Multi-keyword comparisons: Compare terms in a single series to see winners at a glance.
  • 🧱 Reliable under pressure: Retries with exponential backoff and proxy fallback (direct → datacenter → residential).
  • 🐍 Python-powered: Uses pytrends (Google Trends API Python ecosystem) for dependable data collection.
  • 🔌 Integration-ready: Fetch results via the Apify API and Export Google Trends to CSV or JSON for downstream tools.
  • 🛡️ Ethical by design: Collects only public, aggregated Google Trends data—no private information.
  • 💸 Cost-effective alternative: More reliable than browser plugins and one-off scripts, without brittle setups.

In short, it’s a production-ready Google Trends scraper that trades gimmicks for dependable, structured results.

Yes—when used responsibly. The actor collects publicly available, aggregated information from Google Trends and does not access private or personal data.

Guidelines for compliant use:

  • Use data ethically and in accordance with Google’s terms and your local laws (e.g., GDPR, CCPA).
  • Avoid abusive request patterns; schedule runs responsibly.
  • Do not attempt to access private, authenticated, or personal data.
  • Consult your legal team for edge cases or high-volume enterprise use.

Input parameters & output format

Here’s how to configure the actor and what you’ll get back. Every field below comes directly from the actor’s input schema and code.

Example input JSON

{
"keywords": ["chatgpt", "AI", "python"],
"timeRange": "today 3-m",
"geo": "US",
"category": 0,
"sortOrder": "",
"maxComments": 100,
"proxyConfiguration": {
"useApifyProxy": false
}
}

Input fields

  • keywords (array of string)
    • Description: List of keywords or search terms to analyze trends for (supports bulk input).
    • Default: None
    • Required: Yes (minItems: 1)
  • timeRange (string)
    • Description: Time range for the trends data. Data granularity varies by range: • 'today 1-m' → ~30 daily data points • 'today 3-m' → ~90-93 daily data points • 'today 12-m' → ~52 weekly data points • 'today 5-y' → ~60 monthly data points • Custom: 'YYYY-MM-DD YYYY-MM-DD' (e.g., '2023-01-01 2023-12-31')
    • Default: "today 3-m"
    • Required: No
  • geo (string)
    • Description: Geographic location code (e.g., 'BD' for Bangladesh, 'US' for United States). Leave empty for global.
    • Default: "" (global)
    • Required: No
  • category (integer)
    • Description: Google Trends category ID (0 for all categories).
    • Default: 0
    • Required: No
  • sortOrder (string)
    • Description: Sort order for results (optional).
    • Default: ""
    • Allowed values: "", "relevance", "date"
    • Required: No
  • maxComments (integer)
    • Description: Maximum number of comments to retrieve (optional).
    • Default: 100
    • Required: No
  • proxyConfiguration (object)
    • Description: Configure proxy settings. Actor will start with no proxy and fallback to datacenter/residential if blocked.
    • Default: { "useApifyProxy": false } (prefill)
    • Required: No

Example output JSON

{
"inputUrlOrTerm": "chatgpt, AI, python",
"searchTerm": "chatgpt, AI, python",
"interestOverTime_timelineData": [
{
"date": "2026-02-27",
"chatgpt": 87,
"AI": 65,
"python": 42
},
{
"date": "2026-02-28",
"chatgpt": 96,
"AI": 72,
"python": 48
}
]
}

Notes:

  • The interestOverTime_timelineData array contains one object per time point. Keys for keyword values use your exact input strings.
  • The isPartial flag from pytrends is removed before output for consistency.

FAQ

Is there a free tier or trial?

Yes. You can run the actor on Apify with trial minutes and then choose a plan that fits your usage.

Can it compare multiple keywords in one run?

Yes. Provide multiple entries in the keywords array and each keyword will appear as a separate column in the timeline.

Does it export to CSV?

Yes. Results are stored in an Apify dataset that you can export as JSON or CSV directly from the platform.

Yes. The actor is written in Python and uses pytrends (Google Trends API Python community client) under the hood.

Can I trigger runs from Node.js or integrate with the Apify API?

Yes. While the actor is Python-based, you can start runs and download datasets using the Apify API from Node.js, Python, or any HTTP client—perfect for Google Trends scraper GitHub or CI pipelines.

What time ranges are supported?

The input supports 'today 1-m', 'today 3-m', 'today 12-m', 'today 5-y', and also accepts custom ranges in the format 'YYYY-MM-DD YYYY-MM-DD'. Granularity (daily/weekly/monthly) adapts automatically.

Does it handle blocking and rate limits?

Yes. The scraper starts without a proxy and falls back to datacenter and then residential proxies if blocked, with retry and exponential backoff logic to improve reliability.

What data types are included?

This tool focuses on “interest over time” timelines for your keywords, returning date-stamped values per term. It does not include related topics, related queries, or region breakdowns.

Closing CTA / Final thoughts

Google Trends Scraper is built to deliver reliable, export-ready “interest over time” data for your keywords at scale. With multi-keyword comparison, geo/category filters, robust proxy fallback, and clean JSON/CSV outputs, it’s ideal for marketers, analysts, researchers, and developers.

Run it on a schedule, pull results via the Apify API, or wire it into your pytrends Python Google Trends workflows to automate reporting and analysis. Start extracting smarter trend timelines today and turn search interest into actionable insights.