YouTube Channel Search Scraper
Pricing
from $1.00 / 1,000 channel results
YouTube Channel Search Scraper
Find YouTube creators by keyword. Subscriber count, handle, description and verified badge for every channel, with filters for minimum/maximum subscribers and verified-only. 1.00 USD per 1,000 channels, no minimum charge per run.
Pricing
from $1.00 / 1,000 channel results
Rating
0.0
(0)
Developer
Brahim Sliti
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
4 days ago
Last modified
Categories
Security
Limited permissionsShare
Give it a keyword, get back the YouTube channels that match it. You get one row per channel: name, handle, URL, subscriber count, description and verified badge.
You only pay for channels that pass your filters. A channel removed by a subscriber range or by "verified only" never reaches your dataset, and is never charged.
What people use it for
- Creator discovery for a niche. Search "coffee roasting" and get every channel talking about it, ranked the same way YouTube's own search ranks them.
- Building an influencer shortlist. Set a minimum subscriber count so only channels big enough to matter come back.
- Checking which creators in a space are verified. Turn on "Verified channels only" to skip personal or small accounts.
- Watching several related keywords in one run. Add a few search terms at once; a channel that matches more than one still only costs you once.
How to use it
- Add your keywords in Search terms, one per line, just like you would type them into YouTube's search bar.
- Set Max channels per search term (default 50).
- Optionally set Minimum subscribers, Maximum subscribers, Verified channels only, or Exclude these channels (handles or ids, always free).
- Click Start. Export as JSON, CSV or Excel, or pull the results through the API.
{"searchTerms": ["coffee roasting"],"maxChannelsPerSearchTerm": 50,"minSubscribers": 10000}
What you get
{"channelId": "UCSJAOU3yrZztkTYQNKKKq1g","channelName": "Coffee | One Roast at a Time","channelHandle": "@CoffeeOneRoastataTime","channelUrl": "https://www.youtube.com/@CoffeeOneRoastataTime","description": "Home coffee roasting with the Gene Cafe CBR-301.","numberOfSubscribers": 154,"subscriberCountText": "154 subscribers","channelTotalVideos": null,"isVerified": false,"avatarUrl": "https://yt3.ggpht.com/avatar.jpg","searchTerm": "coffee roasting","rank": 1}
numberOfSubscribers:nullonly when YouTube's own search result did not carry a subscriber count at all, never a guess.channelTotalVideos: usuallynullon a plain search result. Turn on Add About data below to fill it in from the channel's own About page.searchTerm/rank: which of your search terms first found this channel, and its position in that term's results. A channel matching several terms keeps the term and rank of its first hit only.isVerified: YouTube's verified (check mark) badge.
Add About data (optional)
Turning on Add About data: total views, joined date, country, links adds channelTotalViews, channelJoinedDate, channelLocation and channelDescriptionLinks to every channel, from one extra request per channel, at no extra charge.
Pricing
1.00 USD per 1,000 channels. A channel removed by a filter, or seen again under a later search term, is never returned and never charged. Error rows are also free.
No monthly fee, no charge for the Apify platform usage on top. Example: 2 search terms with 50 channels each, all passing your filters and none overlapping, costs 100 x 0.001 = 0.10 USD.
Good to know
- Subscriber counts are read from YouTube's own search result text, the same text you would see on youtube.com.
- Filters (subscribers, verified) are applied to YouTube's channel search results, which are ranked by relevance, not size. A narrow filter can return fewer channels than asked: you then get a free
NO_MORE_RESULTSrow saying how many matched. - You don't need a proxy or a YouTube account.
- Looking for a channel's videos instead of the channel itself? See
youtube-channel-videos. Looking for a channel's email? Seeyoutube-channel-email.
Use it from n8n, Make or an API
- Small inputs: call
run-sync-get-dataset-itemsand read the items back directly. Set Time budget (seconds) (default 240) to how long you are willing to wait: the actor stops starting new search terms before that point and returns what it already has, so you never hit Apify's 300 second run-sync limit and lose the whole run. A term left unfinished comes back as aTIME_BUDGET_EXCEEDEDrow instead of being silently dropped. - Big inputs: start the run with
POST /v2/acts/vakitek~youtube-channel-search/runs, pollGET /v2/actor-runs/<runId>(or addwaitForFinish=60) until the status isSUCCEEDED, then readGET /v2/datasets/<datasetId>/items. Set Time budget (seconds) to0(no limit) for this pattern.
Errors
A bad input never crashes the run. It becomes a row with an error code, and you are not charged for it.
error | What happened | Retry? |
|---|---|---|
NO_RESULTS | A search term matched no channel | No |
NO_MORE_RESULTS | Your filters left fewer channels than you asked for, after scanning YouTube's results for that term (free, the channels found are still delivered) | No |
INVALID_INPUT | A search term or option value is invalid | No |
BLOCKED | YouTube refused us for now, even after trying every proxy tier | Yes |
UPSTREAM_ERROR | Something went wrong on YouTube's side or ours | Yes |
UPSTREAM_UNAVAILABLE | Our API was unreachable | Yes |
TIME_BUDGET_EXCEEDED | The time budget ran out before this search term finished | Yes |
FAQ
I already use another YouTube channel search actor. Do I have to change my code?
Probably not much. We use the same keyword-based search and the same output fields buyers care about: channelId, channelName, channelHandle, numberOfSubscribers, isVerified.
Can I call it from my code or from an AI agent? Yes, like any Apify actor: REST API, the Python and JavaScript clients, or the Apify MCP server. The examples are in the API tab.
Something broke or a result looks wrong? Open an issue on this page. We read every one and usually answer within a day.