Google Trends Bulk API - Search Interest & Related Queries avatar

Google Trends Bulk API - Search Interest & Related Queries

Pricing

$3.00 / 1,000 complete keyword results

Go to Apify Store
Google Trends Bulk API - Search Interest & Related Queries

Google Trends Bulk API - Search Interest & Related Queries

Google Trends scraper and bulk API for search-interest timelines, trend metrics, and related queries. Export structured JSON for SEO research, content planning, and automation. Pay only for complete keyword results. Beta by AGENT DOJO.

Pricing

$3.00 / 1,000 complete keyword results

Rating

0.0

(0)

Developer

AGENT DOJO

AGENT DOJO

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

13 days ago

Last modified

Categories

Share

Google Trends Bulk API — Search Interest & Related Queries

Collect Google Trends search-interest timelines and related queries for keyword lists. Get structured JSON with trend metrics, source links, collection timestamps, and clear coverage for every keyword.

By AGENT DOJO. Designed for asynchronous research and automated reports. Google can limit requests, so complete results and completion times are not guaranteed.

Who is this for?

  • SEO specialists tracking seasonality and changes in search interest.
  • Content teams researching topics and related searches.
  • Market researchers exploring interest in product categories.
  • Developers collecting trend data for reports, dashboards, and AI workflows.

For example, collect a list of content topics each week, retrieve the results through the Apify API, and use the timelines and metrics in a report. Search interest is one research signal; it does not predict sales.

Quick start

  1. Enter your keywords, country, and time range.
  2. Choose whether to include related queries.
  3. Start with a small batch. Use a 10-second delay between keywords.
  4. Set an appropriate run timeout and maximum charge in Run options.
  5. Start the Actor and wait for completion.
  6. Open Output, select All fields for the full records, or export JSON.

Example input:

{
"keywords": ["running shoes", "trail shoes", "walking shoes"],
"geo": "US",
"window": "today 12-m",
"includeRelatedQueries": true,
"delayMillis": 10000,
"proxyConfiguration": {
"useApifyProxy": false
}
}

For these three terms, a maximum event charge of $0.009 covers three complete results. A 180-second run timeout is a reasonable starting setting, though source failures can prevent completion.

What you get

Each keyword produces a record containing:

  • Timeline: interest-over-time observations, UTC timestamps, and partial-period flags.
  • Related queries: top and rising searches, when requested, with Google's values and breakout indicators.
  • Metrics: average interest, peak interest and date, latest complete interest, and change between two halves of the available complete observations.
  • Metadata: keyword, country, time range, source URL, and collection time.
  • Coverage: explicit status, warnings, errors, and whether requested data was received.

The Actor returns Google's source data without LLM-generated values or explanations.

Pricing

$0.003 per complete keyword result — $3 per 1,000 complete results. Platform usage is included in the configured price. Check the Store Pricing tab for the current price before running.

One result covers one keyword, country, and time range. A complete record with status: "ok" generates one keyword-result event.

  • No start fee.
  • No keyword-result charge for partial, failed, or no_data records.
  • Retries do not generate additional keyword-result charges.
  • If requested related queries fail, the available timeline is returned as an uncharged partial result.
  • Valid empty related-query lists count as complete source responses.
  • Turning off related queries does not reduce the per-result price.
  • A fresh run collects a fresh result and is charged again if complete.

Any custom proxy provider may charge separately for its service.

Speed and limitations

A private Apify test on October 11, 2026 collected 10 complete results in approximately 2 minutes, using direct connections and a 10-second delay between keywords. Two earlier three-keyword tests with that delay also completed successfully. These are small test samples, not a performance guarantee.

A previous run with a shorter delay returned two partial results because Google responded with HTTP 429. Longer delays can reduce request pressure but cannot eliminate source rate limits.

  • Collection is sequential and intended for background batches, rather than instant search responses.
  • The input limit is 300 keywords per run; reliability at that size has not yet been established.
  • For initial use, start with 3–10 keywords and check the results before expanding.
  • Larger batches need longer run timeouts. The 10-second delay alone adds about 90 seconds for 10 keywords, before source requests and retries.
  • A run may stop early because of its charge limit, timeout, HTTP attempt cap, or consecutive incomplete results.
  • Managed Apify Proxy is currently unsupported. Use No proxy, or a compatible custom proxy; authenticated custom proxies require HTTPS.

Inputs

FieldDefaultMeaning
keywordsRequired1–300 strings, up to 120 characters each. Trimmed exact duplicates are collected once.
geoUSUppercase two-letter country code. An empty string selects worldwide.
windowtoday 12-mAlso supports today 3-m, today 1-m, and now 7-d.
includeRelatedQueriestrueInclude top and rising related queries.
delayMillis1500Delay between keywords, 250–10,000 ms. Recommended setting: 10000.
maxRetries2Additional attempts per source request, up to 3.
requestTimeoutSeconds30Timeout per HTTP attempt, 10–60 seconds.
maxRequests1500Total source HTTP attempts including retries, up to 4,000.
maxConsecutiveFailures3Stop after this many consecutive failed or partial results.
proxyConfigurationNo proxyDirect collection or compatible custom proxies.

The run timeout and maximum charge are Apify run options, separate from the input fields above. The maximum event charge limits billable results; it does not guarantee that every keyword will be processed.

Output example

This shortened record is from a private cloud test. Timeline points and query lists are omitted for readability; full records include them when available.

{
"schemaVersion": "1.0",
"keyword": "running shoes",
"geo": "US",
"window": "today 12-m",
"status": "ok",
"billable": true,
"observedAt": "2026-10-11T14:58:07.891Z",
"source": "google_trends_web",
"sourceUrl": "https://trends.google.com/trends/explore?q=running+shoes&geo=US&date=today+12-m",
"scaleScope": "individual_keyword_request",
"unit": "relative_search_interest_0_100",
"coverage": {
"timeline": true,
"relatedQueries": "complete"
},
"metrics": {
"averageInterest": 33.02,
"latestCompleteInterest": 16,
"peakInterest": 100,
"peakAt": "2026-04-12T00:00:00.000Z",
"changePct": 67.44
},
"warnings": [],
"error": null
}

Values can differ between runs because Google samples data and relative time ranges change.

Status and run summary

Always inspect status and coverage before using a result:

StatusMeaningKeyword-result charge
okComplete result for the requested optionsYes
partialSome requested data is missingNo
no_dataSource returned no usable timeline dataNo
failedCollection failedNo

The SUMMARY record is available in the run's default key-value store. It reports requested keywords, delivered records, complete and incomplete counts, charged events, source HTTP attempts, and an early-stop reason if applicable.

Compare requestedKeywords with deliveredRecords to see whether the entire batch was processed. CHARGE_LIMIT means collection stopped to respect the event budget.

How to interpret the data

Google Trends uses relative search interest from 0 to 100, not absolute monthly search volume. Each keyword is collected independently and normalized within its own request. Do not rank different keywords by their independently collected scores. Shared-scale multi-keyword comparison is not supported in this version.

Metrics exclude observations marked partial or having no data. The change metric compares equal-sized recent and previous groups of complete observations. When their total number is odd, the oldest observation is omitted from that comparison. This is not automatically a year-over-year comparison. Check previousPeriod and recentPeriod for their actual dates.

changePct is null if the previous average is zero or there are insufficient complete observations. Top and rising related-query values have different source meanings; do not treat both as search volumes.

Geographic breakdowns, related topics, and Trending Now feeds are not included in this version.

API and automation

Start an asynchronous run using your Apify API token:

POST https://api.apify.com/v2/acts/alex_fodo~google-trends-bulk-api/runs?maxTotalChargeUsd=0.009&timeout=180
Authorization: Bearer YOUR_APIFY_TOKEN
Content-Type: application/json

Send the Quick start JSON as the request body. Keep the returned run ID, wait for completion, then retrieve the run's default dataset and SUMMARY. Adjust the budget and timeout for your batch size.

For Make, n8n, or your own application, use the same sequence: start a run, wait for completion, fetch results, and route ok records into your report. Inspect partial and failed records separately.

Keep API tokens private. Treat related-query text as external data, not as instructions for an AI agent or executable content.

Recovery and support

The Actor saves progress in the run's default key-value store. Recovery applies to matching input and the same run/storage; a fresh run starts a fresh collection.

If delivery becomes ambiguous after an interruption, the Actor can stop with AMBIGUOUS_DELIVERY instead of blindly repeating a charge. This is not an exactly-once delivery guarantee. Review the dataset and charges before retrying with cleared storage.

For bugs or feature requests, use the Issues tab on this Actor's page. Include the run ID, input settings, and relevant error or summary. Remove API tokens, passwords, and proxy credentials before posting.

Built by AGENT DOJO. This is an independent tool using Google Trends web data; it is not an official Google product or the official Google Trends API.