Advanced Google Trends Scraper avatar
Advanced Google Trends Scraper

Pricing

$20.00/month + usage

Go to Apify Store
Advanced Google Trends Scraper

Advanced Google Trends Scraper

Powerful Google Trends Scraper. Extract Interest Over Time, Regional Data, Daily & Real-Time Trends. Supports keyword comparison, custom date ranges, and 100+ countries.

Pricing

$20.00/month + usage

Rating

0.0

(0)

Developer

Abbas Meb

Abbas Meb

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

10 hours ago

Last modified

Share

A comprehensive Apify Actor for extracting trend data from Google Trends. This actor provides access to all major Google Trends features including interest over time, regional data, related queries/topics, and trending searches.

πŸš€ Features

4 Scraping Modes

  • βœ… Interest Over Time - Track keyword popularity over time
  • βœ… Interest By Region - Geographic distribution of search interest
  • βœ… Daily Trends - Current top trending searches by country
  • βœ… Real-Time Trends - Live trending searches

Comprehensive Coverage

  • 🌍 118 Countries - Full global coverage with user-friendly dropdown
  • ⏰ 10 Time Range Presets - From past hour to all-time (2004-present)
  • πŸ“ 20 Categories - Filter by topic (Finance, Health, Technology, etc.)
  • πŸ” 5 Google Properties - Search across Web, Images, News, YouTube, Shopping
  • πŸ—ΊοΈ 4 Resolution Levels - Country, Region/State, City, DMA (metro areas)

Advanced Features

  • πŸ”„ Keyword Comparison - Compare up to 5 keywords simultaneously
  • πŸ“… Custom Date Ranges - Specify exact start and end dates
  • 🌐 Multi-Language Support - Search in any language
  • πŸ• Timezone Control - Adjust for local timezones
  • πŸ”’ Proxy Support - Built-in Apify Proxy integration

πŸ“‹ Input Parameters

Scraping Modes

Enable one of the following sections to determine the scraping mode. Note: If multiple sections are enabled, the actor prioritizes in this order:

  1. Interest Over Time
  2. Interest By Region
  3. Daily Trends
  4. Real-Time Trends

1. Interest Over Time (Toggle enableInterestOverTime)

Track keyword popularity over a specific time range.

FieldDescriptionTypeDefault
iotKeywordSearch term(s) (Max 5)Array["Bitcoin"]
iotTimeRangeTime periodString"now 1-d"
iotGeoLocation codeString"US"
iotCategoryFilter by category IDString"0"
iotPropertyGoogle property (web, image, etc.)String"web"

2. Interest By Region (Toggle enableInterestByRegion)

See where your keywords are most popular.

FieldDescriptionTypeDefault
ibrKeywordSearch term(s) (Max 5)Array["Bitcoin"]
ibrResolutionGranularity (COUNTRY, REGION, CITY, DMA)String"COUNTRY"
ibrTimeRangeTime periodString"now 1-d"
ibrGeoLocation codeString"US"

Get today's top trending searches.

FieldDescriptionTypeDefault
dtGeoLocation code (e.g., "US", "JP")String"US"
dtTrendDateSpecific date (YYYY-MM-DD)StringToday

Get live, minute-by-minute trending stories.

FieldDescriptionTypeDefault
rtGeoLocation codeString"US"
rtCategoryFilter by category IDString"0"

System Settings

FieldDescriptionTypeDefault
proxyConfigurationProxies to key (Apify Proxy advised)ObjectDefault

πŸ“Š Output Format

The actor outputs structured JSON data to the Apify dataset. The exact format depends on the mode:

Interest Over Time

{
"default": {
"timelineData": [
{
"time": "1609459200",
"formattedTime": "Jan 1, 2021",
"formattedAxisTime": "Jan 1",
"value": [75],
"formattedValue": ["75"]
}
]
}
}

Interest By Region

{
"default": {
"geoMapData": [
{
"geoCode": "US-CA",
"geoName": "California",
"value": [100],
"formattedValue": ["100"],
"maxValueIndex": 0
}
]
}
}
{
"default": {
"trendingSearchesDays": [
{
"date": "20240201",
"formattedDate": "Thursday, February 1, 2024",
"trendingSearches": [
{
"title": { "query": "Super Bowl 2024" },
"formattedTraffic": "2M+ searches",
"articles": [...]
}
]
}
]
}
}

πŸ’‘ Use Cases

Market Research

  • Track brand awareness over time
  • Compare competitor mentions
  • Identify seasonal trends
  • Find emerging markets by region

Content Strategy

  • Discover trending topics before they peak
  • Find related keywords for SEO
  • Analyze search intent by property (web vs images)
  • Monitor regional content preferences

Investment Analysis

  • Track interest in stocks, crypto, or sectors
  • Correlate search trends with market movements
  • Identify early signals of attention shifts
  • Monitor competitor interest

Academic Research

  • Study public interest in scientific topics
  • Analyze political discourse trends
  • Track social movements geographically
  • Historical trend analysis (2004-present)

🎯 Example Inputs

Example 1: Compare Cryptocurrencies (Interest Over Time)

{
"enableInterestOverTime": true,
"iotKeyword": ["Bitcoin", "Ethereum", "Solana"],
"iotTimeRange": "today 12-m",
"iotGeo": "US",
"iotCategory": "7",
"proxyConfiguration": { "useApifyProxy": true }
}

Example 2: Regional Interest in AI

{
"enableInterestByRegion": true,
"ibrKeyword": ["Artificial Intelligence"],
"ibrTimeRange": "today 3-m",
"ibrGeo": "",
"ibrResolution": "COUNTRY",
"proxyConfiguration": { "useApifyProxy": true }
}
{
"enableDailyTrends": true,
"dtGeo": "JP",
"proxyConfiguration": { "useApifyProxy": true }
}
{
"enableRealTimeTrends": true,
"rtGeo": "GB",
"rtCategory": "0",
"proxyConfiguration": { "useApifyProxy": true }
}

πŸ”§ Development

Local Setup

# Clone the repository
git clone <repo-url>
cd google-trends-scraper
# Install dependencies
npm install
# Run locally
npm start

Test Inputs

The actor includes 15+ pre-configured test inputs in .actor/test-inputs/:

  • Basic interest over time
  • Multiple keyword comparisons
  • All 6 scraping modes
  • Different time ranges and properties
  • Various countries and categories

See .actor/test-inputs/README.md for complete testing guide.


πŸ“š Technical Details

Built With

  • Apify SDK - Actor runtime and data storage
  • @alkalisummer/google-trends-js - Google Trends API wrapper
  • TypeScript - Type-safe development

Rate Limiting

  • Google Trends has internal rate limiting
  • Use Apify Proxy (residential) for best results
  • Avoid rapid successive requests for same queries

Data Accuracy

  • Data is normalized (0-100 scale)
  • 100 = peak popularity in selected timeframe
  • Real-time and daily trends show absolute search volumes
  • See Google Trends Help for methodology

⚠️ Limitations & Notes

  1. Keyword Requirements

    • dailyTrends and realTimeTrends don't require keywords
    • Other modes require at least one keyword
  2. Time Windows

    • Very short windows (e.g., past hour) may have insufficient data
    • Maximum lookback: 2004 (all option)
  3. Resolution Restrictions

    • COUNTRY resolution requires geo: ""(worldwide)
    • DMA resolution only available for United States
  4. Comparison Limits

    • Maximum 5 keywords for comparison
    • Results are relative to each other in the selected timeframe

πŸ†˜ Troubleshooting

IssueSolution
"Keyword is required"Check you're not using keywords with dailyTrends/realTimeTrends
"Custom Start Time required"Set customStartTime when timeRange is "custom"
No data returnedTry broader keywords or longer time range
Rate limit errorsEnable Apify Proxy (residential recommended)
Empty resultsVerify country code and category are valid