YouTube Channel & Video Scraper – Search, Playlists & Stats
Pricing
from $0.30 / 1,000 results
YouTube Channel & Video Scraper – Search, Playlists & Stats
YouTube Channel Scraper and video scraper in one: search terms, channel URLs, playlists and watch pages become flat rows with title, views, likes, duration, upload date, subscribers, description links and hashtags. No API key or quota. From $1 per 1,000 results. Built for SEO research and n8n.
Pricing
from $0.30 / 1,000 results
Rating
0.0
(0)
Developer
Ani Björkström
Maintained by CommunityActor stats
1
Bookmarked
53
Total users
6
Monthly active users
17 days ago
Last modified
Categories
Share
Scrape YouTube channels, videos, Shorts, playlists and search results into flat, spreadsheet-ready rows: title, views, likes, duration, upload date, subscribers, channel stats, description links and hashtags. No YouTube Data API key, no daily quota, no browser to run. Paste search terms or YouTube URLs, press Start, export JSON or CSV.
Built for YouTube SEO research, competitor tracking, creator lead generation and n8n / Make automations. From $1 per 1,000 results.
What you get
One row per video. Channel and playlist metadata is repeated on every row so the export works in Google Sheets and BI tools without joins.
| Field | Description |
|---|---|
id, url, title | Video id, canonical watch URL and title |
description, descriptionLinks | Description text and the links found in it |
viewCount, likes, commentsCount | Engagement counters as integers |
duration, date | Length (12:34) and upload date |
isShort, isLive, category | Content type flags and category |
hashtags | Hashtags from the description |
thumbnailUrl | Highest-resolution thumbnail |
channelName, channelUrl, channelId | Publishing channel |
numberOfSubscribers, channelTotalVideos | Channel-level stats |
searchTerm, fromYTUrl, inputChannelUrl | Which input produced the row |
playlistTitle, playlistIndex, playlistVideoCount | Playlist position when scraping a playlist |
Fields YouTube does not show for a given page are returned as null.
Input
Search terms – works like the YouTube search bar, combined with the filters below.
{"searchTerms": ["ai for finance", "fp&a automation"],"maxVideosPerSearch": 50,"maxShortsPerSearch": 10,"sortingOrder": "views","dateFilter": "month"}
Direct URLs – channel (@handle, /channel/), playlist, single video or a search-results URL.
{"directUrls": ["https://www.youtube.com/@MrBeast","https://www.youtube.com/watch?v=dQw4w9WgXcQ"],"maxVideosPerSearch": 200,"channelSortBy": "popular"}
Options:
- Maximum videos / Shorts / streams per search – separate caps per content type. Channels and playlists are paged automatically up to your cap.
- Search filters – upload date, content type, duration, sort order, and feature filters: HD, 4K, HDR, 360°, VR180, 3D, live, Creative Commons, has subtitles/CC.
- Channel options – sort channel videos by latest or popular.
- Proxy – Apify residential proxy is on by default because YouTube throttles datacenter IPs on large runs.
Fill nothing in and the actor runs a small demo search so you can see the output shape.
Use cases
- YouTube SEO & content research – the top videos for a keyword with views, dates and hashtags. Pair with our Keyword Research Scraper for YouTube autocomplete ideas.
- Competitor and channel tracking – scrape a channel weekly and chart views per upload and upload cadence.
- Creator lead generation – subscriber counts and channel links for outreach lists by niche.
- Trend research – filter by upload date and sort by views.
- AI agents and RAG – flat rows feed straight into LLM pipelines. For the spoken words use our YouTube Transcript Scraper; for comments use the YouTube Comments Scraper.
Pricing
From $1.00 per 1,000 results, pay per result. No subscription and no minimum. A run that finds nothing fails with an explanation instead of billing you.
Integrations
Works with n8n, Make, Zapier, Google Sheets, Airtable, Slack and webhooks, the Apify API, and Apify's MCP server for AI agents.
from apify_client import ApifyClientclient = ApifyClient("YOUR_APIFY_TOKEN")run = client.actor("nourishing_courier/youtube-scraper").call(run_input={"searchTerms": ["ai for finance"], "maxVideosPerSearch": 50, "dateFilter": "month"})for row in client.dataset(run["defaultDatasetId"]).iterate_items():print(row["title"], row["viewCount"])
curl -X POST "https://api.apify.com/v2/acts/nourishing_courier~youtube-scraper/run-sync-get-dataset-items?token=YOUR_APIFY_TOKEN" \-H "Content-Type: application/json" -d '{"searchTerms":["ai for finance"],"maxVideosPerSearch":20}'
Limits and fair use
- YouTube search returns a few hundred results per query; use several specific terms instead of one broad one.
- This actor does not download transcripts, subtitles or video files.
- Only public data is collected – no login, no private or age-gated content. You are responsible for complying with YouTube's terms and applicable law.
FAQ
Can I scrape a YouTube channel without an API key?
Yes. Paste the channel URL into Direct URLs. No Google Cloud project or quota is needed.
How many videos per run?
Set maxVideosPerSearch per search term or channel; there is no limit on the number of terms or URLs.
Does it scrape Shorts and live streams?
Yes, via maxShortsPerSearch and maxStreamsPerSearch.
Can I get transcripts or subtitles?
Not with this actor – use the YouTube Transcript Scraper.
Can I export to Google Sheets or CSV?
Yes – download CSV, Excel or JSON, or use the Apify Google Sheets integration.
Does it work with n8n, Make or Zapier?
Yes, all three have Apify integrations.