Google Autocomplete Scraper & YouTube Suggest [USD 0.05/1K] avatar

Google Autocomplete Scraper & YouTube Suggest [USD 0.05/1K]

Pricing

from $0.05 / 1,000 suggestions

Go to Apify Store
Google Autocomplete Scraper & YouTube Suggest [USD 0.05/1K]

Google Autocomplete Scraper & YouTube Suggest [USD 0.05/1K]

Google & YouTube autocomplete keyword suggestions with relevance scores, for keyword research and long-tail ideas: a-z, questions, depth 1-3, many countries in one run with a comparison table, intent tags, new/dropped tracking. USD 0.05/1K suggestions + USD 0.02/1K queries, no start fee.

Pricing

from $0.05 / 1,000 suggestions

Rating

0.0

(0)

Developer

Useful API

Useful API

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

4 days ago

Last modified

Security

Limited permissions

Share

Google Autocomplete Scraper and Suggest API: keyword suggestions from Google and YouTube

Get the keyword suggestions Google shows as people type (long-tail keywords for keyword research, content and PPC), for any seed keyword, in any country and language, from Google web search and YouTube. Every suggestion comes back as a clean row with its position, Google's own relevance score, the suggestion type, simple intent tags (question, comparison, commercial, local) and the exact query that produced it. Export to JSON, CSV or Excel, or call it as a Google Suggest API.

Built for SEO specialists, content writers, PPC managers and YouTube creators.

USD 0.05 per 1,000 suggestions + USD 0.02 per 1,000 queries. No start fee, so a one-keyword check costs a fraction of a cent.

What this Google autocomplete scraper does

  • Google and YouTube autocomplete in one run (pick one or both), each row labelled with its engine.

  • Expansions that turn one seed into hundreds of long-tail keywords:

    • a-z: seed a, seed b ... seed z (26 queries)
    • 0-9: seed 0 ... seed 9 (10 queries)
    • questions: how seed, what seed, why seed, can seed, is seed...
    • prepositions: seed for, seed with, seed without, seed near...
    • comparisons: seed vs, seed versus, seed or, seed alternative...
    • your own prefixes and suffixes: cheap seed, seed 2026, seed for beginners...

    Question, preposition and comparison words are built in for English, Spanish, French, German, Portuguese, Italian and Dutch and follow the language of each query (cómo, comment, wie, come, hoe...).

  • Depth 1 to 3: at depth 2 the top suggestions of every answer are sent back to Google as new queries, at depth 3 once more. You choose how many per answer (1 to 15).

  • Many countries and languages in one run, with a country comparison table: every suggestion with its position in each country, the countries where it never appears and a flag for suggestions found in one country only.

  • Changes since the last run: switch on tracking and every row gets isNew, and the run writes a report of the suggestions that are new and the ones that dropped out since the last run. Built for scheduled runs. Optionally save only the new ones.

  • Deduplicated per seed, engine, country and language, with timesSeen (how many of the run's queries returned the same suggestion) and bestPosition.

  • Correct accents: suggestions are requested in UTF-8 (without it Google answers in ISO-8859-1), so

    café près de moi
    and müller öffnungszeiten come back intact (tested with French and German).

  • Hard caps on queries and suggestions per run, and polite pacing towards Google (a few requests at a time, slowing down on its own if Google asks).

YouTube autocomplete keywords

Add youtube to engines and the same seeds, expansions and countries run against YouTube's search box. YouTube suggestions are often very different from Google web for the same seed: in a test, "best crm" on YouTube gave "best crm for cleaning business" and "best crm for pressure washing", while Google web gave "best crm for real estate" and "best crm for nonprofits". Each row says which engine it came from, so one run covers web and video SEO.

Keyword research examples

One keyword, questions only (the default prefill):

{
"keywords": ["keyword research"],
"engines": ["google"],
"countries": ["us"],
"languages": ["en"],
"expansions": ["questions"]
}

Full keyword map for two seeds on Google and YouTube:

{
"keywords": ["running shoes", "trail running"],
"engines": ["google", "youtube"],
"countries": ["us"],
"languages": ["en"],
"expansions": ["az", "digits", "questions", "prepositions", "comparisons"],
"customSuffixes": ["2026", "reddit"]
}

Same seed in four English-speaking countries, with the comparison table:

{
"keywords": ["how to apply for a"],
"countries": ["us", "gb", "au", "in"],
"languages": ["en"],
"expansions": ["az"]
}

Each country in its own language (auto):

{
"keywords": ["café"],
"countries": ["fr", "de", "es", "br"],
"languages": ["auto"],
"expansions": ["questions", "prepositions"]
}

Weekly monitoring of what Google suggests after a brand name (schedule it in Apify):

{
"keywords": ["notion"],
"engines": ["google", "youtube"],
"countries": ["us", "gb"],
"expansions": ["az", "comparisons"],
"trackChanges": true,
"trackingName": "notion-weekly"
}

Deep long-tail tree:

{
"keywords": ["crm"],
"expansions": ["az"],
"depth": 2,
"expandTop": 5,
"maxQueries": 1000
}

Output

One row per unique suggestion (per seed, engine, country and language):

{
"seed": "running shoes",
"suggestion": "running shoes near me",
"engine": "google",
"country": "us",
"language": "en",
"expansion": "seed",
"modifier": null,
"query": "running shoes",
"depth": 1,
"position": 5,
"bestPosition": 3,
"timesSeen": 4,
"relevance": 560,
"suggestType": "QUERY",
"intent": [
"local"
],
"containsSeed": true,
"wordCount": 4,
"scrapedAt": "2026-11-03T15:26:43.660Z"
}
FieldWhat it is
seedYour keyword
suggestionWhat Google suggested
enginegoogle or youtube
country, languageThe gl and hl sent to Google
expansion, modifierHow the query was made: seed, a-z, 0-9, question, preposition, comparison, custom-prefix, custom-suffix or recursive, and the letter or word added
queryThe exact text sent to Google
depth1 for the seed and its expansions, 2 and 3 for depth queries
positionPosition (1-15) in the answer that first returned it
bestPosition, timesSeenBest position and number of answers that returned it, across the run's queries for this seed, engine, country and language (can undercount on seeds with more than 2,000 suggestions)
relevanceGoogle's own relevance score for the suggestion (higher ranks higher; not a search volume)
suggestTypeGoogle's suggestion type, usually QUERY; also ENTITY, and NAVIGATION / CALCULATOR when you keep them
intentquestion, comparison, commercial, local (see below)
containsSeedEvery word of the seed appears in the suggestion text ("shoe" counts as found in "shoes"). False means Google suggested something else, for example a spelling fix
wordCountWords counted by spaces; in Thai, Japanese and Chinese each part between spaces counts as one word
isNewWith tracking on: not in the last run's suggestions for this seed, engine, country and language
descriptionOnly for website suggestions: the page title Google shows

Dataset views: Suggestions, Keyword list (SEO) and How each suggestion was found.

Country comparison (2 or more countries or languages)

Written to the run's key-value store as COUNTRY_COMPARISON (JSON) and COUNTRY_COMPARISON_CSV:

seed,engine,suggestion,found_in,of,unique_to,us-en,gb-en
running shoes,google,running shoes for men,2,2,,2,1
running shoes,google,running shoes near me,2,2,,3,6
running shoes,google,running shoes for flat feet,2,2,,8,12
running shoes,google,affordable brooks running shoes alternatives,2,2,,x,x

A number is the position in Google's answer to the seed itself in that country, x means only an expansion or depth query found it there, and an empty cell means it was not suggested there at all. In a test run on Apify (3 November 2026) "how to apply for a" gave each country its own answers: passport and credit card in the US, Blue Badge and attendance allowance in the UK, Australian passport and Medicare card in Australia, Ayushman card in India.

Changes report (tracking on)

CHANGES lists, per seed, engine, country and language: whether it is the first run, how many suggestions are new and how many dropped out, and the suggestions themselves (up to 1,000 of each). The history is kept in a key-value store named google-autocomplete-tracking on your own Apify account, one list per tracking name.

Intent tags

Plain word rules, so you can check every tag by eye:

  • question: starts with a question word (how, what, why, can, is... / cómo, comment, wie, come, hoe...), contains how/what/why/where/when/which, or ends with ?
  • comparison: vs, versus, compare, alternative(s), difference between, better than (and the same words in the other six languages)
  • commercial: best, top, cheap, buy, price, cost, deal, discount, coupon, review(s), for sale, rent, hire, shop...
  • local: near me, nearby, close to me, open now, in my area (près de moi, in der nähe, cerca de mí...)

Tags are built in for English, Spanish, French, German, Portuguese, Italian and Dutch. In other languages only vs, versus and a trailing ? are tagged.

Pricing

Pay per event, no subscription, no run-start fee:

EventPricePer 1,000
Suggestion (one unique suggestion saved)USD 0.00005USD 0.05
Query (one autocomplete request Google answered)USD 0.00002USD 0.02

What real runs cost (measured 3 November 2026):

RunQueriesSuggestionsPrice
1 keyword, questions (the prefill)14102USD 0.0054
2 keywords x Google + YouTube x 4 countries, a-z + comparisons5446,896USD 0.36
1 keyword, a-z, depth 3, 15 per answer, stopped at 2,000 queries2,00011,214USD 0.60

Set a maximum cost per run in Apify and the scraper stops cleanly before it, with every row so far saved. With "Save only new suggestions" you pay only for the new ones (plus the queries).

Good to know

  • "Near me" and city suggestions follow the server's location, not the country. The gl country code changes the national suggestions (tested: the same seed gave different answers in the US, UK, Australia and India), but city-level suggestions such as "restaurants near ..." depend on where the request comes from, so they are not location-accurate for your target city. Example from a test run on Apify's servers: Google's US answer for "running shoes" included "running shoes alexandria va" and "running shoes frederick md": towns picked from the server's location, not from the buyer's.
  • Autocomplete has no search volume. relevance, position and timesSeen show how strongly Google suggests a phrase, not how many people search it.
  • Suggestions change by the hour; two runs on the same input are not guaranteed to be identical (which is what the changes report is for).
  • Website (NAVIGATION) and calculator suggestions are left out and not billed unless you switch them on.
  • Depth multiplies queries: 1 seed with a-z at depth 2 and 5 per answer is up to 27 + 135 queries (texts already asked are skipped). maxQueries (up to 20,000) and maxSuggestions (up to 100,000) always cap the run.
  • If Google refuses several queries in a row even after waiting, the run stops politely with the rows so far; run the rest later.
  • No personal data: the input is your keywords and the output is the suggestions Google shows to everyone.
  • Amazon, Bing and DuckDuckGo suggestions are not included.

Use it as a Google Suggest API

curl -X POST "https://api.apify.com/v2/acts/usefulapi~google-autocomplete-scraper/run-sync-get-dataset-items?token=YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{"keywords":["keyword research"],"countries":["us"],"expansions":["questions"]}'

Python:

from apify_client import ApifyClient
client = ApifyClient("YOUR_TOKEN")
run = client.actor("usefulapi/google-autocomplete-scraper").call(run_input={
"keywords": ["keyword research"],
"countries": ["us", "gb"],
"expansions": ["az", "questions"],
})
for row in client.dataset(run["defaultDatasetId"]).iterate_items():
print(row["country"], row["position"], row["suggestion"])

Large runs take minutes; run-sync-get-dataset-items waits at most 300 seconds, so for big inputs start the run with .call() (as in the Python example) or the async run endpoint and read the dataset when it finishes.

AI agents (MCP): like any Apify Actor it can be called by AI agents through Apify's MCP server, so an assistant can pull fresh keyword suggestions on its own.

Schedules and integrations: run it daily or weekly with Apify Schedules (with tracking on, each run reports what is new and what dropped out) and send the results to Google Sheets, Make, Zapier or a webhook with Apify's integrations.

FAQ

Is it legal to scrape Google autocomplete? The suggestions are public text that Google shows to everyone; this Actor sends no login, no cookies and no personal data, keeps a slow pace, and stops when Google says no. suggestqueries.google.com has no robots.txt rules. Check Google's terms and the law where you use the data; this is not legal advice.

Is this the Google Suggest API? It reads Google's public autocomplete endpoint (suggestqueries.google.com), with no API key and no login. Google does not publish it as an official API.

How many suggestions per query? Up to 15, for Google web and for YouTube (every seed answer in our Apify test runs had 15).

What is the relevance score? The number Google attaches to each suggestion in its answer, for Google web and YouTube alike (between 550 and 1261 in our test runs, higher for the top suggestions). It is Google's ranking signal, not a search volume.

Can I get YouTube keyword ideas? Yes, add youtube to engines. YouTube suggestions often differ a lot from Google web suggestions for the same seed.

Which countries and languages? Any two-letter country code (uk is read as gb) and Google language codes such as en, de, pt-BR, passed to Google as written. With auto, each country uses its main language (built in for 87 countries; Belgium uses nl, Switzerland de). Countries x languages is capped at 50 combinations per run.

Can I schedule it? Yes. Use Apify Schedules with tracking on, and each run tells you what is new and what dropped out since the previous one.

Why is a suggestion missing that I see in my browser? Google personalises the box in your browser (history, location, signed-in account); this scraper asks without any of that.