YouTube Autocomplete Scraper | Keyword Suggestions avatar

YouTube Autocomplete Scraper | Keyword Suggestions

Pricing

from $0.17 / 1,000 suggestions

Go to Apify Store
YouTube Autocomplete Scraper | Keyword Suggestions

YouTube Autocomplete Scraper | Keyword Suggestions

YouTube autocomplete scraper for keyword research: 1 keyword returned 429 YouTube search suggestions in 2 seconds, 18 fields each. Get rank, best rank, question, alphabet and preposition expansions and channel cards in any country and language. For SEO, video titles and tags. No account or API key.

Pricing

from $0.17 / 1,000 suggestions

Rating

0.0

(0)

Developer

SilentFlow

SilentFlow

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Share

YouTube Autocomplete Scraper | Keyword Suggestions, Questions and Channels (2026)

1 keyword. 429 YouTube Autocomplete suggestions. 18 fields per suggestion.

From SilentFlow. Creators of Facebook Search Scraper and Pinterest Scraper, with 490,000+ combined lifetime runs.

Every phrase YouTube suggests while people type, for any keyword, country and language, in rows you can sort, filter and turn into video titles, tags and content plans.

Why choose this actor?

Still typing a keyword letter by letter into the YouTube search box to see what comes up? Copying suggestions into a spreadsheet by hand, one market at a time? Paying per seat for a keyword tool when you only need the raw suggestions?

  • More to work with on every row. Each suggestion comes with 25 documented fields: the query that surfaced it, its rank, its best rank, how many queries returned it, its word count, whether it is a question, and the channel or topic card YouTube attaches to it. On our coffee grinder run, at least 13 data fields were filled on more than half of the 429 rows.
  • Start from a keyword or from a YouTube search URL. Type a seed keyword, or paste the address of any YouTube search page from your browser: its search words become the keyword and its country and language are kept. One run with the keyword "mr" and a Taylor Swift search URL returned 730 suggestions, 364 of them from the URL.
  • Nothing to fill in before you run. No field is required: every setting is optional or has a working default, so a teammate, a schedule or an AI agent can launch it with only a keyword or only a URL. The default run on "coffee grinder" returned 429 suggestions from 52 queries.

Try YouTube Autocomplete Scraper

Try your first keyword suggestions

Paste this input in the Input tab, or send it from the API, and run. You get every suggestion YouTube shows in the United States for "coffee grinder", for "coffee grinder a" to "coffee grinder z", for the question forms (who, what, why, how...) and for the preposition forms (for, with, without...). Our test run returned 429 unique suggestions, 48 of them questions.

{
"keywords": ["coffee grinder"]
}

The Apify Free plan is enough to run it: no credit card, no YouTube account, no API key.

How it works

Copy to your AI assistant

Paste this block into Claude, ChatGPT or Cursor to give it full context about this scraper:

You have access to the YouTube Autocomplete Scraper on Apify: silentflow/youtube-autocomplete-scraper
Input (no field is required, but give at least one keyword or one URL):
- keywords (array of string): seed keywords, e.g. "coffee grinder", "how to edit videos".
A YouTube search URL pasted here is read as a URL.
- startUrls (array of {url} or string): YouTube search pages,
e.g. https://www.youtube.com/results?search_query=coffee+grinder.
gl (country) and hl (language) in the address are kept for that keyword.
- maxItems (integer, default 1000, minimum 1): suggestions in the whole run, across all keywords.
- country (string, default "us"): 2-letter code, 3-letter code or English name
("au", "aus", "Australia"). 109 countries in the list, any code accepted.
- language (string, optional): interface language, code or English name ("fr", "pt-BR", "Spanish").
Empty = main language of the country (fr for France, pt for Brazil, en for the US).
- expansions (array, default ["alphabet","questions","prepositions"]):
any of alphabet (a-z, 26 queries), questions (14), prepositions (11),
comparisons (vs, or, versus, and), numbers (1-9 and the current year).
Words are in the run language for fr, es, pt, de, it, nl; English otherwise.
[] sends the plain keyword only.
- customModifiers (array of string): words added after the keyword ("review"),
or around it with * ("best * 2026").
- depth (integer 1 or 2, default 1): 2 also asks YouTube for the suggestions
of every suggestion found (up to 200 more queries per keyword, and up to
each keyword's share of maxItems so every keyword is read).
- debugMode (boolean, default false)
Output: one row per unique suggestion. A suggestion already delivered under an
earlier keyword of the same country and language is not repeated.
Fields (25):
- id (string, stable per country + language + suggestion), url (YouTube results page),
suggestion (string)
- keyword (seed), query (string sent), suggestionType ("query" | "channel" | "entity"),
expansion ("direct" | "alphabet" | "question" | "preposition" | "comparison" |
"number" | "custom" | "depth"), modifier (string or null), depth (1 or 2),
wordCount (integer), hasKeyword (boolean), isQuestion (boolean)
- entityName, entityDescription, entityId, channelId, channelHandle, channelUrl
(string or null; set when YouTube shows a channel or topic card)
- rank (integer, position in the list of its first query, 1 = top),
bestRank (integer, best position across the keyword's queries),
timesSuggested (integer, how many of the keyword's queries returned it)
- country (2-letter code, upper case), language (hl code)
- imageUrl (string or null, picture of the channel or topic)
- scrapedAt (string, RFC 3339 UTC)
Use apify-client for Python or JavaScript, or the Apify MCP server: https://mcp.apify.com/?tools=silentflow/youtube-autocomplete-scraper

How to scrape YouTube search suggestions

Get every suggestion for one keyword

The plain keyword, a to z, questions and prepositions, in the United States, in English.

{
"keywords": ["coffee grinder"]
}

Research a topic in another country and language

Pick the country by name and leave the language empty: the run reads the suggestions in the main language of that country. With French selected, the question family asks "comment", "pourquoi", "quand" and the other French question words.

{
"keywords": ["recette crรชpe"],
"country": "France",
"expansions": ["questions", "comparisons", "numbers"],
"maxItems": 400
}

Expand a list of YouTube search pages into the long tail

Paste search pages straight from your browser. Each one is read with the country and language in its address, then expanded a to z and one level deeper.

{
"startUrls": [
{ "url": "https://www.youtube.com/results?search_query=taylor+swift" },
{ "url": "https://www.youtube.com/results?search_query=recette+crepe&gl=FR&hl=fr" }
],
"expansions": ["alphabet"],
"depth": 2,
"maxItems": 2000
}

Input parameters

FieldTypeDefaultWhat it does
keywordslist of textnone (prefilled with coffee grinder)Seed keywords, one per line. A YouTube search URL pasted here is read as a URL.
startUrlslist of URLsnoneYouTube search pages. The search words become the keyword; gl and hl in the address set the country and language of that keyword.
maxItemsnumber1000Suggestions in the whole run, across every keyword and URL. Keywords are read in order.
countrytextusCountry whose suggestions you want: code (au), 3-letter code (aus) or English name (Australia).
languagetextmain language of the countryInterface language: code (fr, pt-BR) or English name (Spanish).
expansionslistalphabet, questions, prepositionsFamilies of queries sent besides the plain keyword: alphabet, questions, prepositions, comparisons, numbers.
customModifierslist of textnoneYour own words after the keyword (review), or around it with * (best * 2026).
depthnumber12 also reads the suggestions of every suggestion found, up to 200 more queries per keyword and up to each keyword's share of maxItems.
debugModetrue / falsefalseDetailed logs, for troubleshooting.

Formats accepted. Keywords are plain text in any language and script: coffee grinder, recette crรชpe, ใƒฉใƒผใƒกใƒณ. Search URLs can be https://www.youtube.com/results?search_query=..., youtube.com/results?search_query=... or the mobile m.youtube.com form, with or without gl and hl. Countries accept us, usa, United States, uk, United Kingdom, South Korea, kor. Languages accept en, eng, English, pt-BR, pt_BR, zh-TW, Traditional Chinese.

How many rows to expect. One query returns up to 14 suggestions. With the default families a keyword sends 52 queries and, after removing duplicates, our coffee grinder test returned 429 unique suggestions. A very short seed ("mr") with the alphabet family returned 366. Depth 2 multiplies the long tail: "recette crรชpe" in France returned 386 suggestions from 175 queries.

What data can you extract from YouTube?

Each row is one unique suggestion YouTube shows under its search box, with 25 fields in six groups:

  • Identity (3): id (stable for the same suggestion in the same country and language, from run to run), url (the YouTube results page of that suggestion, with its country and language), suggestion.
  • Context (9): keyword (your seed), query (the exact text sent, such as coffee grinder for), suggestionType (query, channel or entity), expansion (the family that surfaced it), modifier (the letter or word added), depth, wordCount, hasKeyword (every word of your seed is in the suggestion), isQuestion.
  • Channel or topic card (6): entityName, entityDescription, entityId, channelId, channelHandle, channelUrl. YouTube attaches a card to some suggestions: a channel (MrBeast, @MrBeast) or a topic such as a film, an artist or a show ("Mr. Bean, British sitcom"). Plain suggestions have these fields set to null.
  • Measures (3): rank (position in the list of the query that surfaced it first, 1 is the top), bestRank (best position across all the queries of the keyword), timesSuggested (how many of those queries returned it). A suggestion that comes back from many queries is one YouTube pushes hard: "coffee grinder for espresso" came back from 8 different queries in our run.
  • Place (2): country, language.
  • Media (1): imageUrl, the picture of the channel or topic.
  • Meta (1): scrapedAt, the moment the row was read, in RFC 3339 UTC.

Two views are ready in the dataset tab: Suggestions (suggestion, keyword, expansion, rank, times suggested, type, country, results page) and Channels and topics (picture, name, handle, description, channel link).

Output example

{
"id": "725613bc3616e12b",
"url": "https://www.youtube.com/results?search_query=mrbeast&gl=US&hl=en",
"suggestion": "mrbeast",
"keyword": "mr",
"query": "mr",
"suggestionType": "channel",
"expansion": "direct",
"modifier": null,
"depth": 1,
"wordCount": 1,
"hasKeyword": true,
"isQuestion": false,
"entityName": "MrBeast",
"entityDescription": null,
"entityId": "/g/11ffmnm29k",
"channelId": "UCX6OQ3DkcsbYNE6H8uQQuVA",
"channelHandle": "@MrBeast",
"channelUrl": "https://www.youtube.com/@MrBeast",
"rank": 1,
"bestRank": 1,
"timesSuggested": 3,
"country": "US",
"language": "en",
"imageUrl": "https://yt3.googleusercontent.com/nxYrc_1_2f77DoBadyxMTmv7ZpRZapHR5jbuYe7PlPd5cIRJxtNNEYyOC0ZsxaDyJJzXrnJiuDE=s88-c-k-c0x00ffffff-no-rj",
"scrapedAt": "2026-10-19T04:05:35Z"
}

Advanced usage

Mine the questions your audience asks

Keep only the question family and filter the dataset on isQuestion. Each question is a ready-made video title or FAQ entry. Our coffee grinder run returned questions such as "what coffee grinder should i buy" and "how to calibrate coffee grinder".

{
"keywords": ["coffee grinder", "espresso machine"],
"expansions": ["questions"],
"maxItems": 500
}

Build a comparison and "best of" list

Comparisons surface the "X vs Y" searches; custom modifiers with * put words before your keyword. Sort by timesSuggested to see which pairs YouTube pushes most.

{
"keywords": ["iphone 17", "galaxy s26"],
"expansions": ["comparisons", "numbers"],
"customModifiers": ["best * case", "* review", "* camera test"]
}

Find the channels YouTube suggests for a niche

Short seeds with the alphabet family bring up the channels and topics YouTube attaches a card to. Open the Channels and topics view to get names, handles, descriptions and channel links in one table.

{
"keywords": ["mr", "how to"],
"expansions": ["alphabet"],
"maxItems": 1000
}

Compare one topic across several markets

The country and language of a search URL override the run settings, so one run can read the same topic in several markets. Each market gets its own rows and its own ids.

{
"startUrls": [
{ "url": "https://www.youtube.com/results?search_query=air+fryer&gl=US&hl=en" },
{ "url": "https://www.youtube.com/results?search_query=air+fryer&gl=GB&hl=en" },
{ "url": "https://www.youtube.com/results?search_query=air+fryer&gl=DE&hl=de" }
],
"expansions": ["alphabet", "questions"],
"maxItems": 1500
}

Track how suggestions change every week

Schedule the same input weekly from the Schedules tab and compare the id column between runs: an id that appears is a new search trend, an id that disappears has dropped out of the box. The id of a suggestion does not change between runs, whichever keyword surfaced it.

{
"keywords": ["ai video editor", "ai voice generator"],
"country": "United States",
"depth": 2,
"maxItems": 3000
}

FAQ

What does this scraper return? One row per suggestion YouTube shows under its search box for your keywords: the suggestion text, the query that surfaced it, its rank, best rank and number of queries that returned it, the family and modifier that found it, word count, question flag, and the channel or topic card when YouTube shows one.

Do I need a YouTube account, a Google account or an API key? No. The scraper reads the same public suggestions anyone sees in the search box. Nothing to log in to, nothing to connect.

Can I start from a URL instead of a keyword? Yes. Paste any YouTube search page, such as https://www.youtube.com/results?search_query=coffee+grinder, in the URL field or among the keywords. The search words become the keyword, and a gl or hl in the address sets the country and language for that keyword.

Which countries and languages are supported? The country list holds the 109 countries YouTube localizes its search for, and the language list holds 54 interface languages. You can also type any other 2-letter code. Leave the language empty and the run uses the main language of the country.

Are these the same suggestions I see in my own browser? They are the suggestions YouTube shows to a visitor who is not signed in, for the country and language of the run. When you are signed in, YouTube also mixes in your own watch and search history, so your personal box can differ.

Does it give search volume? No. YouTube does not publish search volume. What you get are the signals YouTube does expose: the position of each suggestion (rank, bestRank) and how many of your queries returned it (timesSuggested). A suggestion at rank 1 that comes back from many queries is one people type often.

How many suggestions do I get per keyword? It depends on the keyword. With the default families, "coffee grinder" gave 429 unique suggestions in our test, and "mr" with the alphabet family gave 366. Depth 2 reads further: "recette crรชpe" in France gave 386 suggestions from 175 queries. A rare keyword can return few or none, and that is not an error: YouTube simply has nothing to suggest.

Why is a suggestion I expected missing from the second keyword? A suggestion is delivered once per run for a given country and language. If "coffee grinder for espresso" already came from your first keyword, it is not repeated under the second. The row keeps the keyword that surfaced it first.

How fresh is the data? Live. Every run asks YouTube at that moment, nothing comes from a cache. Suggestions follow search trends, so a weekly schedule shows you what is rising and what is fading.

Are the links permanent? url is a YouTube results page and channelUrl a channel page: both stay valid. imageUrl is the picture of a channel or topic and changes when the channel updates its picture.

Can I run many keywords at once? Yes. Add as many keywords and URLs as you like and raise maxItems to fit: the run reads the keywords in order and stops at maxItems suggestions in total.

What is depth 2 for? Depth 1 reads the suggestions of your keyword and its expansions. Depth 2 also asks YouTube for the suggestions of each suggestion it found, up to 200 more queries per keyword. With several keywords, each one goes deeper only up to its share of maxItems, so the last keyword is read as well as the first. Use it for long-tail research; leave it at 1 when you want a quick list.

More SilentFlow scrapers

๐Ÿ›’ E-commerce

๐Ÿ’ผ Jobs

๐Ÿ  Real estate

๐Ÿ“ฃ Social media

๐Ÿข Business data

โœˆ๏ธ Travel

๐ŸŽฏ Lead generation

๐Ÿ”Ž SEO

๐Ÿ“ˆ Marketing

๐Ÿงฐ More tools

Support

Need something this scraper doesn't do yet? We ship features fast.

  • Feature requests go straight to our backlog
  • Enterprise needs? We do custom integrations and high-volume plans
  • Pricing questions? Check the Monetization tab on the actor page

Response time: usually under 24 hours.

This Actor extracts publicly available data from YouTube (youtube.com): the search suggestions any visitor sees in the search box. It does not bypass any login, paywall or CAPTCHA. Users are responsible for complying with YouTube's terms of service and applicable data protection laws (GDPR, CCPA, and PIPL where relevant). Suggestions can contain the names of public figures and channels, and channel cards carry a channel name, handle and picture: handle them accordingly and only for a lawful purpose. The data returned is informational; verify accuracy for regulated use cases.

YouTube Autocomplete Scraper by SilentFlow: every phrase YouTube suggests, for every market, ready for your video titles, your keyword research and your content plan.