YouTube Channel Scraper — Fast & Cheap, Official API avatar

YouTube Channel Scraper — Fast & Cheap, Official API

Pricing

Pay per event

Go to Apify Store
YouTube Channel Scraper — Fast & Cheap, Official API

YouTube Channel Scraper — Fast & Cheap, Official API

Scrape YouTube channel data and videos using the official YouTube Data API. Get channel stats, video titles, views, likes, descriptions, thumbnails. 1000 videos in 30 seconds. Bring your own API key. $0.001/video — 3x cheaper than alternatives.

Pricing

Pay per event

Rating

0.0

(0)

Developer

Ken Digital

Ken Digital

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

0

Monthly active users

8 days ago

Last modified

Categories

Share

YouTube Channel & Search Scraper — Videos, Shorts, Stats, No API Key

List every video and Short a channel has published, with views, duration, publish date and channel stats on each row, or pull YouTube search results in YouTube's own order. It reads the same internal endpoints the youtube.com page uses, so there is no API key, no daily quota, no login and no proxy to set up. A 500-video channel takes about half a minute on 256 MB of memory.

  • Channels by handle, URL or ID. @veritasium, youtube.com/@veritasium, youtube.com/channel/UC..., /c/..., /user/... all work.
  • Whole back catalog. Set the per-channel limit to 0 to walk every page.
  • Shorts tab on demand. includeShorts adds the channel's Shorts, up to the same per-channel limit.
  • Search. Any query, paged as far as you like, with channel, views, duration and description snippet.
  • Channel stats. One channel row per channel: subscribers, video count, description, keywords, avatar, RSS feed.
  • Pay per video row. Channel rows and error rows are free.

Quick start

{
"channels": ["@veritasium", "https://www.youtube.com/@mkbhd"],
"maxVideosPerChannel": 100,
"includeShorts": true,
"searchQueries": ["openclaw ai assistant"],
"maxResultsPerQuery": 40
}

Input

FieldTypeDefaultDescription
channelsarrayHandles, channel URLs or UC... IDs.
maxVideosPerChannelinteger50Newest first. 0 = whole channel.
includeShortsbooleanfalseAlso list the Shorts tab. The per-channel limit applies to each tab separately.
searchQueriesarrayYouTube search terms.
maxResultsPerQueryinteger500 = keep paging until YouTube stops.
languagestringenInterface language (hl). Changes relative dates and search ranking.
countrystringUSCountry (gl) for search ranking.

At least one of channels or searchQueries is required.

Output

Channel row:

{
"type": "channel",
"channelId": "UCHnyfMqiRRG1u-2MsSQLbXA",
"channelTitle": "Veritasium",
"channelHandle": "@veritasium",
"channelUrl": "https://www.youtube.com/channel/UCHnyfMqiRRG1u-2MsSQLbXA",
"channelDescription": "An element of truth - videos about science, education, and anything else we find interesting.",
"channelKeywords": "\"science videos\" science \"science education\"",
"channelAvatar": "https://yt3.googleusercontent.com/...",
"channelSubscribers": 21300000,
"channelSubscribersText": "21.3M subscribers",
"channelVideoCount": 535,
"channelRssUrl": "https://www.youtube.com/feeds/videos.xml?channel_id=UCHnyfMqiRRG1u-2MsSQLbXA",
"source": "channel:@veritasium",
"scrapedAt": "2026-09-21T20:00:00+00:00"
}

Video row (from a channel or a search):

{
"type": "video",
"videoId": "JsBZOcqZerk",
"url": "https://www.youtube.com/watch?v=JsBZOcqZerk",
"title": "The Machine that cracked the Nazis' \"Unbreakable\" Code",
"viewCount": 130000,
"viewCountText": "130K views",
"publishedTimeText": "2 hours ago",
"durationSeconds": 2862,
"durationText": "47:42",
"thumbnail": "https://i.ytimg.com/vi/JsBZOcqZerk/hq720.jpg",
"isShort": false,
"descriptionSnippet": null,
"badges": [],
"channelId": "UCHnyfMqiRRG1u-2MsSQLbXA",
"channelTitle": "Veritasium",
"channelHandle": "@veritasium",
"channelUrl": "https://www.youtube.com/channel/UCHnyfMqiRRG1u-2MsSQLbXA",
"channelSubscribers": 21300000,
"source": "channel:@veritasium",
"scrapedAt": "2026-09-21T20:00:00+00:00"
}

View counts and subscriber counts are parsed from YouTube's abbreviated figures ("130K", "21.3M"), so they carry YouTube's own rounding; search results usually carry exact counts. Publish dates are the relative text YouTube shows in listings. For per-video likes, exact views, full descriptions and comments, pass the video URLs to the YouTube Comments Scraper.

Pricing

Pay per event: one video event per video row, plus a tiny actor-start fee. Channel rows and error rows are free.

Use cases

  • Channel audits and competitor tracking: full upload history with views and cadence
  • Content research: what a niche's channels publish, how long, how often
  • Building datasets of video IDs for downstream analysis (transcripts, comments)
  • Monitoring search results for a keyword over time

Integrations

Run it from the Apify API, the JavaScript or Python client, the CLI, schedules, or as an MCP tool. Export to JSON, CSV, Excel, or push to Google Sheets, Make, Zapier or n8n.

from apify_client import ApifyClient
client = ApifyClient("<YOUR_API_TOKEN>")
run = client.actor("joyouscam35875/youtube-channel-scraper").call(run_input={
"channels": ["@veritasium"],
"maxVideosPerChannel": 0,
})
for row in client.dataset(run["defaultDatasetId"]).iterate_items():
if row["type"] == "video":
print(row["publishedTimeText"], row["viewCount"], row["title"])

FAQ

Why no API key? The YouTube Data API caps you at 10,000 units a day and a channel listing burns through it fast. This actor reads the public page data instead, with no quota.

Does it get exact view counts? Channel listings show YouTube's abbreviated counts. Search results are usually exact. For exact per-video numbers, use the comments scraper linked above on the video URLs.

Members-only or unlisted videos? No. Only what a logged-out visitor sees.

Is it legal? The actor reads publicly visible data. You are responsible for how you use it and for complying with YouTube's terms and local law.

Feedback

Missing a field, hit a bug, or need an input this actor doesn't take yet? Open an issue on the actor's Issues tab. If the YouTube Channel & Search Scraper saved you time, a short review on the Store page helps other people find it.

ActorWhat it does
YouTube Comments ScraperComments, replies and video stats, no API key
TikTok Video & Profile ScraperTikTok stats by URL and exact profile counts
Google Trends ScraperInterest over time, related queries, regions
Instagram Profile ScraperFollowers, bio, recent posts