Google Autocomplete Bulk Scraper
Pricing
Pay per event
Google Autocomplete Bulk Scraper
Bulk-fetch Google Autocomplete suggestions for any list of seed keywords across the country and language matrix you choose. We rotate browser fingerprints, route via Apify Proxy, retry with backoff, and return one clean typed row per (seed, country, lang, suggestion).
Pricing
Pay per event
Rating
0.0
(0)
Developer
DevilScrapes
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
4 days ago
Last modified
Categories
Share
Google Autocomplete Bulk Scraper
We do the dirty work so your dataset stays clean. 😈
$1.05 / 1,000 suggestions — Export real Google autocomplete suggestions for many seeds across many languages and countries in a single run. Optional A–Z alphabet expansion turns every seed into 26 long-tail variants. No Google account. No SerpApi key. No browser automation.
Google's autocomplete dropdown is the canonical signal of what people are actually typing into the search box. Keyword-research SaaS like KeywordTool.io, AnswerThePublic, Ubersuggest, and SE Ranking all wrap the same public Suggest endpoint, mark it up 10–100×, and resell it. This Actor talks to the endpoint directly via the public Suggest API, fans out across seeds × languages × countries, optionally expands each seed alphabetically, and emits one denormalised dataset row per (seed × suggestion × locale) tuple — ready for SEO, PPC, content-gap, or product-research workflows.
🎯 What this scrapes
For every (seed × language × country) combination you submit, this Actor queries the public Google Suggest endpoint (suggestqueries.google.com/complete/search) and emits one row per returned suggestion. The default client=chrome mode returns up to 15 suggestions per call plus relevance scores and subtype tags; the lean client=firefox mode returns up to 10 suggestions without relevance scores. Each row carries the seed, the suggestion, its 0-indexed position, the locale used, and an is_expansion flag so alphabet-expanded long-tail suggestions are easy to filter or aggregate.
| Field | Type | Description |
|---|---|---|
seed | string | The query string the suggestion was generated for |
suggestion | string | One Google autocomplete suggestion |
position | integer | 0-indexed position in the suggestion list |
relevance | integer | null | google:suggestrelevance score (chrome client only) |
subtype | string | First google:suggesttype tag (QUERY, NAV, …) or UNKNOWN |
language | string | hl parameter used (ISO-639-1) |
country | string | gl parameter used (ISO-3166-1 alpha-2) |
client | string | chrome or firefox |
is_expansion | boolean | True if the seed was produced by alphabet expansion |
parent_seed | string | null | Original user seed when is_expansion is true |
scraped_at | string | ISO 8601 UTC datetime |
🔥 Features
- Bulk seeds — submit up to 500 seed queries in a single run; the Actor fans out across every language × country combination you specify.
- Multi-locale — query the same seed across many languages (
hl) and many countries (gl) in one run. The Suggest endpoint serves locale-specific results: "bestes auto" inde-dereturns German automotive suggestions; "best laptop" inen-usreturns US tech suggestions. - A–Z alphabet expansion — toggle
enableAlphabetExpansionto also query<seed> a,<seed> b, …,<seed> zfor every seed. This is the canonical long-tail discovery technique: one seed × 26 letters reveals every common Google query that starts with your seed. - Two client variants —
chrome(default) returns up to 15 suggestions with relevance scores and subtype tags;firefoxreturns up to 10 suggestions in a leaner payload. Pick per run. - No authentication — uses the same public Suggest endpoint browsers hit. No SerpApi key, no Google account, no OAuth.
- Denormalised output — every row carries the seed, locale, and provenance fields so a flat CSV is self-contained for SQL / BI / spreadsheet workflows without joins.
curl-cffichrome131 impersonation — replays a real Chrome TLS+H2 fingerprint so the request looks indistinguishable from a Chrome browser on a real desktop.- Conservative concurrency — 2 in-flight requests per run, well below Google's documented 100/sec naive limit; honours
Retry-Afterheaders if rate-limited. - Pydantic v2 input validation — locale codes are normalised to lowercase, length-validated, and rejected up-front if invalid before any network call.
💡 Use cases
- Long-tail SEO keyword discovery — enable alphabet expansion to enumerate every common Google query that starts with your seed; pipe into a search-volume tool to prioritise content briefs.
- PPC negative-keyword mining — pull alphabet-expanded suggestions across the seed for your category, then filter for adjacent products / intents you want to exclude from broad-match campaigns.
- Content gap analysis — query your brand + competitor names across
en-us,en-gb,en-auto find geo-specific concerns and product comparisons real users are searching for. - Multi-market localisation research — query the same product seed across 5–10 locales to see how local users phrase the same intent in their language; informs product copy, landing pages, and marketplace listings.
- Trend monitoring — schedule a recurring run on a fixed seed list and diff the suggestion list day-over-day to detect emerging interest spikes before they hit the SERP.
- AI training-data curation — bulk-export real human search phrasings for fine-tuning intent classifiers or query-understanding models; the suggestions are post-processed real queries, free from PII.
⚙️ How to use it
- Open the Actor input form.
- Enter your Seed queries — one per line (e.g.
best laptop,best espresso machine,learn python). - Optionally set Language codes and Country codes. Both default to
["en"]/["us"]. Use 2-letter lowercase codes (ISO-639-1 for languages, ISO-3166-1 alpha-2 for countries). For multi-locale runs, add several to each list. - Pick a Suggest client.
chrome(default) is recommended — it returns up to 15 suggestions with relevance scores.firefoxis leaner (up to 10 suggestions, no scores). - Set Max suggestions per seed if you want fewer than the API maximum (default 10, max 15).
- Toggle Enable A–Z alphabet expansion if you want long-tail discovery — each seed will generate 26 extra queries (
<seed> athrough<seed> z). - Leave Use Apify Proxy off unless you are running very large jobs (>2,000 tuples) and hitting rate limits.
- Click Start. Results stream into the default dataset and can be exported as JSON, CSV, Excel, or XML.
Single-seed example
{"seeds": ["best laptop"],"languages": ["en"],"countries": ["us"],"client": "chrome","maxSuggestionsPerSeed": 10,"enableAlphabetExpansion": false,"useProxy": false}
Multi-locale + alphabet expansion example
{"seeds": ["best laptop", "best espresso machine"],"languages": ["en", "de"],"countries": ["us", "de"],"client": "chrome","maxSuggestionsPerSeed": 15,"enableAlphabetExpansion": true,"useProxy": false}
This produces 2 seeds × 2 languages × 2 countries × (1 + 26) variants × 15 rows = up to 3,240 rows.
📥 Input
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
seeds | array | yes | — | 1–500 seed queries |
languages | array | no | ["en"] | ISO-639-1 lowercase language codes |
countries | array | no | ["us"] | ISO-3166-1 alpha-2 lowercase country codes |
client | string (enum) | no | chrome | chrome (up to 15 suggestions + scores) or firefox (up to 10) |
maxSuggestionsPerSeed | integer | no | 10 | 1–15 |
enableAlphabetExpansion | boolean | no | false | If true, also query <seed> a through <seed> z |
useProxy | boolean | no | false | Route through Apify Proxy (BUYPROXIES94952) |
📤 Output
One row per suggestion. All seed / locale / provenance fields denormalised onto every row so a flat CSV is self-contained.
{"seed": "best laptop","suggestion": "best laptop 2026","position": 1,"relevance": 900,"subtype": "QUERY","language": "en","country": "us","client": "chrome","is_expansion": false,"parent_seed": null,"scraped_at": "2026-05-16T12:00:00.000Z"}
When alphabet expansion is enabled, expanded rows carry is_expansion=true and parent_seed set to the original seed:
{"seed": "best laptop a","suggestion": "best laptop accessories","position": 0,"relevance": 1250,"subtype": "QUERY","language": "en","country": "us","client": "chrome","is_expansion": true,"parent_seed": "best laptop","scraped_at": "2026-05-16T12:00:00.000Z"}
Export formats
- JSON — full fidelity, all fields, newline-delimited
- CSV — flat, one row per suggestion, all columns
- Excel —
.xlsxvia the Apify dataset converter - XML — structured per-item
All formats are available via the Apify API: GET /datasets/{id}/items?format=csv&clean=true.
💰 Pricing
Pay-Per-Event (PPE) — you pay only for what you use:
| Event | Price (USD) | When |
|---|---|---|
actor-start | $0.05 | Once per run, at boot |
result-row | $0.001 | Per suggestion row written to the dataset |
Example costs
| Run | Suggestions | Cost |
|---|---|---|
| 1 seed × 1 locale × 10 suggestions | 10 | $0.06 |
| 10 seeds × 1 locale × 10 suggestions | 100 | $0.15 |
| 50 seeds × 2 langs × 1 country × 10 | 1,000 | $1.05 |
| 100 seeds × 1 locale × 15 suggestions | 1,500 | $1.55 |
| 10 seeds × 1 locale × A–Z expansion (27×10) | 2,700 | $2.75 |
| 100 seeds × 1 locale × A–Z expansion × 15 | 40,500 | $40.55 |
That's about $1 per 1,000 long-tail keywords — typically 10–50× cheaper than the closest keyword-research SaaS that wraps the same endpoint.
🚧 Limitations
- Suggest endpoint, not SERP. This Actor returns autocomplete suggestions — the dropdown under the search box. It does not scrape the actual Google search results page. For SERP scraping use a dedicated SERP Actor.
- No search-volume data. Google Suggest does not return monthly search-volume estimates — only the suggestions themselves. Pair with a keyword-volume Actor or Google Keyword Planner for volume.
- Locale is a request hint, not a guarantee. Google reserves the right to return general suggestions when locale-specific signal is sparse; obscure seeds in long-tail locales may return small or empty suggestion lists.
- A–Z expansion only. This Actor expands seeds with
a..zsuffixes. Number suffixes (0..9), question modifiers (why,how,when), or comparison modifiers (vs,or) are not built-in — they can be passed as explicit seeds. - Concurrency capped at 2. The Actor deliberately limits in-flight requests to stay well below Google's documented 100/sec naive rate limit. Very large runs (10k+ tuples) will take time; budget accordingly.
- 7-day default storage retention on the Apify FREE tier. Export your dataset immediately after the run or upgrade for longer retention.
- No private / signed-in suggestions. Personalized suggestions tied to a Google account are out of scope — this Actor reflects the unauthenticated public Suggest endpoint.
❓ FAQ
Where do these suggestions come from?
Directly from Google's public Suggest endpoint at suggestqueries.google.com/complete/search — the same endpoint Chrome and Firefox call when you type in the address bar. The response is a JSON array of up to 15 suggestions per query (chrome client) or 10 (firefox client). No browser automation, no SerpApi, no scraping of the SERP page.
What is alphabet expansion and why does it matter?
Alphabet expansion is the canonical long-tail discovery technique used by every major keyword-research tool. For each seed, the Actor also queries <seed> a, <seed> b, …, <seed> z — 26 extra calls. This surfaces the most common queries that start with your seed plus any next letter. For example, best laptop returns 15 generic suggestions; best laptop a returns suggestions like "best laptop accessories", "best laptop antivirus", "best laptop apple"; best laptop b returns "best laptop brands", "best laptop bag", and so on. One seed × 26 letters × 15 suggestions = up to 390 long-tail keywords per locale.
Should I pick chrome or firefox?
chrome (default) is the better choice for most use cases — it returns up to 15 suggestions (50% more than firefox), plus the google:suggestrelevance score (which loosely correlates with search-volume signal) and google:suggesttype tags. Pick firefox only when you specifically want the leaner 10-result payload without scores.
Do I need Apify Proxy?
Generally no. Google Suggest is tolerant of datacenter IPs and the Actor runs at conservative concurrency (2 in-flight requests). Enable useProxy only if you are running very large alphabet-expansion jobs (>2,000 tuples) and hit rate limits — the Actor will honour Retry-After headers but a proxy reduces the chance of throttling.
How many requests does one run make?
len(seeds) × len(languages) × len(countries) × (1 + 26 if alphabet expansion else 1) API calls. Each call returns up to 15 rows. So 10 seeds × 1 locale × A–Z = 270 calls → up to 4,050 rows.
Is this legal?
The Google Suggest endpoint is a public, unauthenticated HTTP API designed for browsers and developer tools to embed Google autocomplete in their UIs. There is no authentication, no rate-limit token, and no API-key requirement. Always verify your jurisdiction's data-protection rules and Google's Terms of Service before reselling raw suggestion data — most commercial keyword-research products use this same endpoint under the same conditions.
💬 Your feedback
Found a bug, hit a rate limit, or need a new field on the output row? Open an issue on the Actor's Apify Store page or contact the Devil Scrapes team at apify.com/DevilScrapes. We ship updates within days of validated reports.