Keyword Suggestions API — Google Autocomplete, Bing | $0.5/1k
Pricing
from $0.50 / 1,000 keyword suggestions
Keyword Suggestions API — Google Autocomplete, Bing | $0.5/1k
Keyword ideas from Google, Google Shopping and Bing autocomplete, no API key. Expand seeds with a-z, questions, prepositions or your own modifiers, in any country and language. Rows carry engine, position, type and a question flag; a keywords mode ranks unique ideas. $0.50 per 1,000.
Pricing
from $0.50 / 1,000 keyword suggestions
Rating
0.0
(0)
Developer
Raffy
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
15 hours ago
Last modified
Categories
Share
What does Keyword Suggestions API do?
Keyword Suggestions API collects the autocomplete suggestions that Google, Google Shopping and Bing show while someone types a search, and turns them into a clean keyword list you can download as JSON, CSV or Excel. Type one or more seed keywords, and get back every suggestion with its engine, country, language and position. It works as a Google autocomplete API and keyword suggestions API alternative: no API key, no login, no browser.
Expand each seed the way keyword research tools do, and one seed turns into hundreds of long-tail ideas:
- Alphabet:
coffee maker a,coffee maker b...coffee maker 9 - Questions:
how coffee maker,why coffee maker,can coffee maker... - Prepositions:
coffee maker for,coffee maker with,coffee maker vs... - Your own modifiers:
best {seed} 2026,cheap {seed}...
Typical use cases:
- SEO keyword research: find the long-tail and question keywords people actually type, per country and language.
- PPC and Google Shopping: product-intent suggestions from Google Shopping for ad groups and negative keyword lists.
- Content planning: question keywords (
isQuestion) for FAQ sections, blog posts and "People also ask" style content. - Market and brand monitoring: what Google and Bing suggest next to your brand or product name, tracked on a schedule.
- AI agents: a fast, cheap keyword ideas tool with plain inputs and self-describing rows.
Suggestions are what the engines show at the moment of the run, for the country and language you ask for. They change with location and over time.
Why use this keyword suggestions scraper?
- Three engines in one run. Google web search, Google Shopping and Bing, side by side, with the same row format.
- Every country and language. Ask for
us,gb,de,in,br... anden,de,es,pt-BR...; every combination is one set of requests. - Long-tail expansion built in. Alphabet, question words, prepositions and custom modifiers, with duplicates removed per seed and engine.
- Unique keyword summary. The
keywordsoutput mode merges everything into one row per keyword, with how many seeds and engines returned it, most widely suggested first. - Fast and cheap. A seed on one engine takes about a second; 300+ requests finish in well under a minute. $0.50 per 1,000 suggestions.
- Honest results. Every row carries a
status(ok,not_found,error), so an empty answer is never confused with a failure. Onlyokrows are billed.
What data can Keyword Suggestions API extract?
One row per suggestion (default suggestions output):
| Field | Type | Description |
|---|---|---|
query | string | The seed keyword from your input |
suggestion | string | The suggestion the engine showed |
engine | string | google, google_shopping or bing |
position | integer | 1-based rank in the engine's list for that request |
expansion | string | The exact string sent to the engine (for example coffee maker b or how coffee maker) |
expansionType | string | seed, alphabet, question, preposition or custom |
country | string | Country the engine was asked for, e.g. US |
language | string | Interface language the engine was asked for, e.g. en |
type | string | query, navigational, entity ... when the engine labels it (Google does, Bing does not) |
relevance | number | The engine's own relevance score, when it gives one |
isQuestion | boolean | True when the suggestion starts with a question word (how, what, why, can, is ...) or contains ? |
wordCount | integer | Number of words in the suggestion |
url | string | The engine's results page for the suggestion |
status | string | ok, not_found or error (see below) |
error | string | Reason when status is not ok |
scrapedAt | string | ISO 8601 time of extraction |
In the keywords output mode each row is one unique keyword across the whole run, with query (the first seed that returned it), suggestion, isQuestion, wordCount and:
| Field | Type | Description |
|---|---|---|
seeds | array | Every seed whose requests returned this keyword |
engines | array | Every engine that returned it |
seedCount | integer | Number of seeds that returned it |
engineCount | integer | Number of engines that returned it |
timesSeen | integer | How many requests returned it |
bestPosition | integer | The best (lowest) position it reached |
Result status (tri-state output)
status | Meaning | Billed? |
|---|---|---|
ok | A suggestion (or, in keywords mode, a unique keyword). | Yes |
not_found | The engine answered, but had no suggestion for a seed keyword. In suggestions mode the row's url is the request that was made; in keywords mode query names the seed. | No |
error | The engine could not be read after retries. error says why. | No |
An expansion that returns nothing (coffee maker q on a small market) simply adds no rows; only seeds get a not_found row. A run where every seed is not_found still ends successfully.
How to use the Google autocomplete keyword tool
- Open the Actor in Apify Console and click Try for free.
- Type your seed keywords into Seed keywords, one per line.
- Pick the Engines, and optionally Expand each seed with the alphabet, questions or prepositions.
- Set Countries and Languages (default
us/en). - Click Start. The default input finishes in a few seconds.
- Open the Output tab, switch between the Suggestions and Unique keywords views, or Export as JSON, CSV, Excel, XML or HTML.
To automate it, use the API tab (Node.js, Python, curl examples), add a Schedule, or call it from an AI agent through the Apify MCP server.
How much does it cost to get keyword suggestions?
Pay-per-event pricing; Apify platform usage (compute) is included, so you pay only these events:
| Event | Price |
|---|---|
| Actor start | $0.005 per run |
Keyword suggestion (status: ok row) | $0.0005 per row ($0.50 per 1,000) |
Examples:
- One seed on Google, no expansion: about 15 suggestions = $0.005 + 15 x $0.0005 = $0.0125.
- One seed on Google, Google Shopping and Bing with alphabet expansion: 111 requests, 1,361 suggestions after duplicates are removed (measured for
coffee maker, 9 s on the platform) = $0.69. - 1,000 suggestions of any kind: $0.505 including the start fee.
In keywords mode you pay per unique keyword, not per suggestion row: the same coffee maker alphabet run gave 930 unique keywords instead of 1,361 rows (32% fewer, $0.47). Rows with not_found or error are free. Cap spending with Maximum rows and the run's Max total charge.
Input
| Field | Type | Default | Description |
|---|---|---|---|
queries | array | ["coffee maker"] | Seed keywords, one per line |
engines | array | ["google"] | Any of google, google_shopping, bing |
expand | array | [] | Any of alphabet (+36 requests per seed), questions (+10), prepositions (+8) |
customModifiers | array | [] | Your own words; best sends seed best, best {seed} 2026 places the seed yourself |
country | array | ["us"] | Two-letter country codes |
language | array | ["en"] | Language codes such as en, de, pt-BR |
outputMode | string | suggestions | suggestions (one row per suggestion) or keywords (unique keywords with counts) |
maxSuggestionsPerQuery | integer | 20 | Keep at most this many suggestions per request |
dedupe | boolean | true | Write each suggestion once per seed, engine, country and language |
maxItems | integer | 1000 | Stop after this many rows |
startUrls | array | example | Advanced: Google or Bing search URLs (...google.com/search?q=...&gl=de&hl=de); each becomes a seed on that engine and market |
proxyConfiguration | object | off | Optional; not needed from Apify's datacenter |
The number of requests is seeds x engines x countries x languages x (1 + expansions). A single query string is also accepted, for callers that send one keyword.
Example input:
{"queries": ["coffee maker", "espresso machine"],"engines": ["google", "google_shopping", "bing"],"expand": ["questions", "prepositions"],"country": ["us", "gb"],"language": ["en"],"maxItems": 2000}
Output
You can download the dataset in various formats such as JSON, HTML, CSV or Excel. Real rows from a run on the Apify platform (default output):
[{"query": "coffee maker","suggestion": "coffee maker with grinder","engine": "google","position": 1,"expansion": "coffee maker","expansionType": "seed","country": "US","language": "en","type": "query","relevance": 601,"isQuestion": false,"wordCount": 4,"url": "https://www.google.com/search?q=coffee%20maker%20with%20grinder&hl=en&gl=us","status": "ok","scrapedAt": "2026-09-30T16:06:00.191Z"},{"query": "coffee maker","suggestion": "coffee maker with k cup","engine": "google_shopping","position": 3,"expansion": "coffee maker w","expansionType": "alphabet","country": "US","language": "en","type": "query","relevance": 601,"isQuestion": false,"wordCount": 5,"url": "https://www.google.com/search?q=coffee%20maker%20with%20k%20cup&tbm=shop&hl=en&gl=us","status": "ok","scrapedAt": "2026-09-30T16:06:05.345Z"},{"query": "coffee maker","suggestion": "coffee maker amazon","engine": "bing","position": 1,"expansion": "coffee maker a","expansionType": "alphabet","country": "US","language": "en","relevance": 1300,"isQuestion": false,"wordCount": 3,"url": "https://www.bing.com/search?q=coffee%20maker%20amazon&setmkt=en-US","status": "ok","scrapedAt": "2026-09-30T16:06:00.223Z"}]
Tips
- Start with one seed and one engine to see the output, then add expansions:
alphabetgives the most ideas,questionsthe best content topics. - Use the
keywordsoutput mode when you want one clean, ranked list instead of every suggestion per request. - Several seeds, countries and engines in one run cost one start fee.
- Sort by
positionfor what the engine ranks first; filterisQuestionfor FAQ content.
Limitations
- Suggestions are what the engines show publicly to a logged-out visitor in the chosen country and language; they are not search volumes, and they change over time.
- Google, Google Shopping and Bing only. YouTube, Amazon, eBay, Yahoo, DuckDuckGo and Wikipedia are not included: their terms forbid automated collection or resale of their data.
- Bing ignores the language for markets it does not support, and falls back to its default for that country.
- Google sometimes answers nonsense input with keyboard-pattern suggestions instead of an empty list; those are returned as the engine shows them.
- The run is capped at 20,000 requests; split very large seed lists over several runs.
FAQ
Does Google have an autocomplete API?
Google does not sell an autocomplete or keyword suggestions API. This Actor reads the same public suggest endpoints the search boxes use, one small request per keyword, and returns the answers as structured data.
Is it legal to collect keyword suggestions?
Search suggestions are public, non-personal text shown to every visitor. You are responsible for how you use the output and for complying with the engines' terms. Read the legal notice below.
Can I use this Actor from an AI agent or MCP client?
Yes. Call it with no input for a quick example, or with {"queries": ["your keyword"]}. Inputs are plain strings, and every row says what it is (status, engine, query, expansion).
Why did I get fewer rows than maxItems?
Each request returns at most 10-20 suggestions, and duplicates are removed per seed and engine. Add expansions or engines for more ideas.
Why do suggestions differ from what I see in my browser?
Suggestions depend on country, language, time and (in your browser) your own search history. This Actor asks as a logged-out visitor in the country and language you choose.
Related Actors
- Google Trends Scraper: interest over time, by region and related queries for your keywords.
- Google News Scraper: news articles for any keyword, country and language.
Legal and data-protection notice
This Actor collects only search suggestions that the engines show publicly to logged-out visitors; it does not extract private user data such as e-mail addresses, phone numbers or precise location, and it does not log in or get around access controls. Suggestions can occasionally contain names of public figures. Personal data is protected by the GDPR in the European Union and by other regulations around the world. You should not process personal data unless you have a legitimate reason to do so. You are responsible for complying with the engines' terms of service and applicable law when using the extracted data.
This Actor is an independent tool and is not affiliated with, endorsed by or sponsored by Google, Microsoft (Bing) or any other search engine. All trademarks belong to their respective owners.