Search Autocomplete: Google, YouTube, Bing & eBay Keywords avatar

Search Autocomplete: Google, YouTube, Bing & eBay Keywords

Pricing

from $0.20 / 1,000 suggestions

Go to Apify Store
Search Autocomplete: Google, YouTube, Bing & eBay Keywords

Search Autocomplete: Google, YouTube, Bing & eBay Keywords

Get keyword ideas from the search-box autocomplete of Google, YouTube, Bing and eBay. A-Z and question expansion, recursive long-tail discovery, many countries and languages, dedupe across engines. Clean JSON for SEO and content research. $0.20 per 1,000 suggestions.

Pricing

from $0.20 / 1,000 suggestions

Rating

0.0

(0)

Developer

Naveen Raja

Naveen Raja

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

4 days ago

Last modified

Categories

Share

Search Autocomplete: Google, YouTube, Bing & eBay keyword suggestions

Get the autocomplete suggestions of Google, YouTube, Bing and eBay in one run and one clean JSON format. Expand each seed keyword with A-Z, question words ("how", "what", "best", "vs", "near me" ...) or your own modifiers, and optionally go recursive to dig out long-tail keywords. Choose the country and language for every engine.

Price: $0.20 per 1,000 suggestions ($0.0002 each). You pay only for suggestions saved to the dataset. Apify platform costs are included.

Example (cloud runs, 20 Oct 2026)SuggestionsCost
1 seed, Google + YouTube + Bing, no expansion42about $0.01
1 seed, Google + YouTube + Bing + eBay, A-Z expansion1,485about $0.30
Same, with "Across all engines" duplicate removalabout 1,120about $0.22

What you get

  • One row per suggestion: engine, seed keyword, the exact query typed, the suggestion, its position in the list, recursion depth, country, language and time.
  • Four engines through their public suggestion endpoints. No browser, no login. For Google this is Google's suggestion service as Chrome's address bar uses it (up to 15 suggestions; the google.com search box shows 10 and may rank them differently).
  • Keyword expansion: seed + a...z and 0...9, question and comparison modifiers (localised for German, French, Spanish, Italian, Portuguese and Dutch), or a custom list such as "for kids", "best {seed} 2026".
  • Recursive mode: feed every suggestion back into the same engine (1 or 2 levels) for suggestions of suggestions, with a hard cap on requests.
  • Duplicate removal per engine (default) or across all engines, so you don't pay twice for the same keyword.
  • Only search phrases are kept: Google's website links (e.g. "https://www.facebook.com/") and instant answers (the calculator's "= 4" for "2+2") are left out and not charged.
  • A free SUMMARY record with counts per engine and per seed (what each seed returned, and why a seed returned nothing), and a clean stop when your spending limit is reached.

Supported engines

EngineSuggestions per queryCountry / languageGood for
googleup to 15any country (gl) and language (hl)SEO keyword research, content ideas
youtubeabout 14any country and languageYouTube SEO, video titles and topics
bingup to 25the country's Bing market (mkt, 34 countries)SEO for Bing search
ebayup to 10us, ca, gb, au, at, be, fr, de, it, nl, es, ch, ie, plMarketplace and resale keywords

Countries without their own eBay site use the nearest one (New Zealand uses ebay.com.au) or ebay.com. Bing has markets for 34 countries; when it has no market for your language in that country (for example English in Germany) the country's own market is used (de-DE), and for countries without a Bing market Bing may answer with its default suggestions. The country and language each engine used are in every row, and anything that differs from your input is noted in the run summary.

Amazon and DuckDuckGo were removed on 20 Oct 2026: the robots.txt files of their suggestion services disallow automated access. Inputs, saved tasks and schedules that still list amazon or duckduckgo keep working: those engines are skipped with a free notice row, and the other engines run as usual.

Use cases

  • Keyword research and SEO: collect hundreds of real long-tail queries for a topic in seconds and feed them into your keyword tool.
  • YouTube SEO: find what viewers type after your topic ("standing desk hack", "standing desk health") for titles, tags and video ideas.
  • eBay listings: see the product searches shoppers start (sizes, colors, "with storage") for listing titles.
  • Content ideas and FAQs: the questions mode surfaces "how", "why", "what", "best" and "vs" queries to plan articles and FAQ sections.
  • Market and trend checks: compare what people search for in different countries and languages, or on different engines.

How to use

  1. Enter one or more Seed keywords.
  2. Pick the Engines (Google, YouTube and Bing are selected by default).
  3. Set Country (two-letter code) and, optionally, Language (empty = the country's main language).
  4. Choose a Keyword expansion: none, alphabet, questions or custom.
  5. Optional: Recursive depth 1 or 2, Remove duplicates mode, and limits (Max suggestions in total, Max requests).
  6. Run the Actor and download the results as JSON, CSV, Excel or via API. Per-engine and per-seed counts are in the SUMMARY record of the run's key-value store.

Input example

The input of one of our cloud test runs:

{
"seeds": ["standing desk"],
"engines": ["google", "youtube", "bing", "ebay"],
"country": "us",
"expansion": "alphabet",
"maxSuggestionsTotal": 0
}

It sent 148 queries (37 per engine) and saved 1,485 suggestions in 20 seconds: Google 535, Bing 467, YouTube 392, eBay 91 (1,116 unique across all engines).

Output example

Rows from that run:

[
{
"engine": "google",
"seed": "standing desk",
"querySent": "standing desk f",
"modifier": "f",
"suggestion": "standing desk for home office",
"position": 2,
"depth": 0,
"country": "us",
"language": "en",
"scrapedAt": "2026-10-20T00:12:02Z"
},
{
"engine": "youtube",
"seed": "standing desk",
"querySent": "standing desk h",
"modifier": "h",
"suggestion": "standing desk hack",
"position": 1,
"depth": 0,
"country": "us",
"language": "en",
"scrapedAt": "2026-10-20T00:12:02Z"
},
{
"engine": "bing",
"seed": "standing desk",
"querySent": "standing desk c",
"modifier": "c",
"suggestion": "standing desk converter 2 monitors",
"position": 4,
"depth": 0,
"country": "us",
"language": "en",
"scrapedAt": "2026-10-20T00:12:00Z"
},
{
"engine": "ebay",
"seed": "standing desk",
"querySent": "standing desk w",
"modifier": "w",
"suggestion": "standing desk with storage",
"position": 2,
"depth": 0,
"country": "us",
"language": "en",
"scrapedAt": "2026-10-20T00:12:03Z"
}
]

Output fields

FieldDescription
enginegoogle, youtube, bing or ebay
seedThe input keyword this suggestion belongs to
querySentThe exact text typed into the search box: the seed, seed + modifier, or a suggestion (recursive mode)
modifierExpansion modifier for this query ("a", "how", "vs", your custom text), null for the plain seed and recursive queries
suggestionThe autocomplete suggestion as the engine returned it
position1-based position in the engine's list
depth0 for the seed and its expansions, 1 or 2 for suggestions of suggestions
country, languageCountry and language the engine actually used
scrapedAtISO 8601 time (UTC) when the suggestion was fetched

The dataset has four views: Suggestions, Keyword list (suggestion + engine, easy to copy), All fields and Notices (free).

Notice rows (free)

When something in your input can't be fetched, the dataset gets a free notice row instead of failing the run: suggestion is null, errorKind says what happened and error explains it. To keep only suggestions, filter out rows that have an errorKind.

errorKindWhen
invalid_inputA run-wide setting is invalid (for example expansion "custom" without modifiers, or a bad country code). Nothing is fetched.
invalid_seedThe seed has no letter or digit (e.g. ???). Engines answer such input with unrelated trending searches, so it is not sent.
seed_too_longThe seed is longer than the engine accepts (Google and YouTube: 100 characters). It is not sent to that engine; the other engines still get it.
rejected_by_engineThe engine refused the seed (HTTP 400). Other seeds are not affected.
engine_removedThe input lists amazon or duckduckgo, which were removed from this Actor.
unknown_engineThe input lists an engine name this Actor doesn't know (API input).
proxy_failedEvery request through your own proxy URLs failed: the proxy can't be reached or answered with an error (wrong host, port or credentials).

Expansion, recursion and duplicates

  • None: each seed is typed as is. Fast and cheap: about 40 suggestions per seed on the three default engines.
  • Alphabet: the seed, then seed + a, b, ... z and 0 ... 9 (37 queries per seed and engine). One seed on all four engines returned 1,485 suggestions in our cloud test.
  • Questions: the seed plus question words (how, what, why, which, who, where, when, can, is, does, should ...), "best", "top", "cheap" and comparisons and prepositions (vs, versus, or, and, for, with, without, near me, to, like, under, alternative). About 29 queries per seed and engine. German, French, Spanish, Italian, Portuguese and Dutch get their own question words; other languages use the English set.
  • Custom: the seed plus each of your modifiers. A modifier is appended (for kids gives "coffee maker for kids"); put {seed} where the keyword should go to prepend or wrap (best {seed} 2026). Custom modifiers are ignored with the other expansions (the summary says so).
  • Long seeds: Google and YouTube refuse queries over 100 characters, so longer seeds, and expanded or recursive queries that get too long, are skipped for those two engines and counted in the summary. Bing and eBay accept up to 200 characters.
  • Recursive depth 1 or 2: every new suggestion is typed back into the same engine. Each level multiplies requests by about 10, so Max requests (default 2,000, maximum 20,000) caps the run: the run never sends more, recursion included. The cap is shared fairly between engines; an engine that needs less than its share leaves the rest to the others.
  • Duplicates: with Per engine (default) a suggestion appears once per engine even if several queries return it. Across all engines keeps only the first engine's row. Off keeps every row. The engine echoing your exact query back (for example "standing desk" for the query "standing desk") is never saved.

Pricing

Pay per event, no subscription and no extra usage fees:

EventPrice
suggestion: one suggestion row in the dataset$0.0002 ($0.20 per 1,000)
Actor start (standard Apify event, per run)$0.00005

Good to know:

  • Max suggestions in total (default 5,000) and the run's Maximum cost per run (or maxTotalChargeUsd via API) both cap spending. The Actor stops cleanly when a limit is reached, and everything saved up to then stays in the dataset.
  • Free: duplicates, echoes of your query, website links and instant answers, failed or skipped queries, notice rows and the SUMMARY record.
  • If Apify moves a run to another server mid-run, the run continues where it stopped: suggestions already saved are never saved or charged again. The same holds if you abort a run and then resurrect it: everything saved before the abort stays, and the status message and SUMMARY say how much that was.

Use it from the API

Run synchronously and get the suggestions in one call (keep your own API token in the APIFY_TOKEN environment variable):

curl -X POST "https://api.apify.com/v2/acts/fairfetch~search-autocomplete/run-sync-get-dataset-items?maxTotalChargeUsd=1" \
-H "Authorization: Bearer $APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"seeds": ["standing desk"], "engines": ["google", "youtube"], "expansion": "questions"}'

The items can include free notice rows (for example for a seed that is too long, or an input that still lists amazon). They have suggestion: null and an errorKind: keep only the rows without an errorKind if you just want the keywords.

Performance and limits

  • In the cloud, one seed with alphabet expansion on all four engines (148 queries) finished in 20 seconds using about 60 MB of memory.
  • Requests are polite: at most 2 at a time per engine (configurable 1 to 5), requests to one host are spaced out, and HTTP 429 / 403 / 5xx responses are retried with exponential backoff (honouring Retry-After). Google and YouTube share one host, so they are paced together.
  • If an engine fails 3 queries in a row (for example because it is rate-limiting), that engine stops for the rest of the run, the other engines continue, and the run summary explains what happened. Queries an engine refuses (HTTP 400) don't count towards this.
  • A run fails only if every engine that sent queries failed with blocks or errors, or refused every query it was sent (which points to a change on the engine's side), and nothing was saved. Problems caused by the input (a bad setting, a too-long seed, a removed engine, a mistyped proxy URL) end the run successfully with free notice rows.
  • At most 20,000 seeds per run (a run sends at most 20,000 requests).
  • Each engine decides how many suggestions it shows (see the table above); some queries return fewer or none.

FAQ

Are these search volumes? No. Autocomplete shows what people commonly search for, ranked by each engine, but no numbers. Use the suggestions as keyword ideas and check volumes in a keyword-volume tool if you need them.

Why do I see different suggestions in my browser? Suggestions depend on location, language, trends and sometimes your own history. The Actor asks each engine for the country and language you choose, but engines also look at the IP address the request comes from, so local suggestions (for example "near me" places) reflect the server's location. Results also change over time.

Do I need proxies? Usually not; the Actor keeps request rates low. If the run summary shows an engine stopped with HTTP 429 or 403, enable Proxy configuration with Apify Proxy (the datacenter proxy is usually enough) or lower Parallel requests per engine. With a proxy, every request opens a new proxy connection, so a rotating proxy can use a different IP address each time.

Which countries and languages are supported? Google and YouTube accept any two-letter country and language code. Bing has markets for 34 countries and eBay sites for 14; other countries use the nearest site or the default, and the summary notes it.

Does it work for non-English keywords? Yes, for example "kaffeemaschine" with country de or "コーヒー" with country jp. Alphabet expansion adds Latin letters and digits; for other scripts use the custom modifiers.

What does "position" mean when some numbers are missing? It is the position in the engine's own list. Skipped entries (duplicates, the echo of your query, website links) keep the remaining positions unchanged.

Why did a seed return nothing? SUMMARY.perSeed lists every seed with its status (ok, partial, no_suggestions, failed, skipped, invalid), the suggestions per engine and the reason: too long for an engine, refused by the engine, the request cap, an engine that stopped after errors, or all of its suggestions already saved for an earlier seed. The status message names seeds that returned nothing.

Can I schedule it? Yes. Schedule a run in Apify Console to track how suggestions for your keywords change over time.

This Actor reads the public autocomplete suggestions these services show to anyone typing a search, through public suggestion endpoints used by browsers and the sites' search boxes (for Google, the one Chrome's address bar uses; for Bing, the OpenSearch endpoint browsers use). It does not log in, solve CAPTCHAs or bypass access controls, and it keeps its request rate low. Be aware that the services' terms restrict automated access and reuse:

  • Google and YouTube (suggestqueries.google.com, which has no robots.txt): Google's Terms of Service prohibit automated access that ignores a site's machine-readable instructions such as robots.txt, and YouTube's Terms of Service prohibit automated access without YouTube's prior written permission (except for public search engines).
  • Bing (api.bing.com, whose robots.txt does not load): the Microsoft Services Agreement says the text and other material available on Bing and MSN is for noncommercial, personal use only, and that using it to build your own products is allowed only as far as Microsoft or the rights holders specifically authorize (section 14.f.i, "Bing and MSN Materials"). It also prohibits circumventing restrictions on access to its services, including "impermissible scraping" (section 3.a.vi).
  • eBay (autosug.ebaystatic.com; its robots.txt allows the suggestion path for general user agents): eBay's User Agreement prohibits robots, scrapers and other automated means without eBay's prior permission.

Amazon and DuckDuckGo were removed because their robots.txt files disallow automated access to their suggestion services.

Suggestions are generated by the engines from what many people search for. They can include names of public figures (for example celebrities in trending searches) and, rarely, other text you should handle with care. The Actor does not collect any other personal data. You are responsible for how you use the data and for complying with the terms of these services and the laws that apply to you.

Not affiliated with or endorsed by Google, YouTube, Microsoft/Bing, eBay, Amazon or DuckDuckGo. Names are trademarks of their owners and are used only to describe the data sources.