YouTube Video & Channel Scraper
Pricing
from $0.33 / 1,000 video or channel records
YouTube Video & Channel Scraper
Public YouTube video and channel metadata — search, channel video lists, playlists, single-video details, Shorts and trending — in one unified, typed, null-safe dataset. No API key, no login.
Pricing
from $0.33 / 1,000 video or channel records
Rating
0.0
(0)
Developer
Leonardo Santos
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
Public YouTube video and channel metadata in one unified, typed, null-safe
dataset: search, channel video lists, playlists, single-video details, Shorts
and trending. Give it a handle (@MrBeast), a channel URL, a search phrase, a
playlist, or a video URL — it returns clean JSON rows with stable field names
(videoId, viewCount, publishedAt, …) that map directly onto YouTube's own
public Data API vocabulary. No API key, no login, no download.
Why this actor?
- One actor for the whole metadata surface — the incumbent splits search, channel, video, Shorts and playlist across four actors; this one covers all six modes with a single typed schema.
- Typed, null-safe flat rows — every row carries
recordType, its stable id andscraped_at; absent optional fields are explicitnull, never dropped rows or crashes.*Countfields are integers, not"1.6M"strings. - Price at the floor — $0.0005 per record undercuts the leader's FREE-tier $0.004/video and matches the cheapest incumbent, for a superset of surfaces.
- API/MCP-ready — field names match YouTube's public Data API, so agentic and API consumers can map rows without re-learning a schema.
- No upstream cost — the public metadata surface needs no key and no per-video fee; you pay only for the delivered, typed rows.
Input
{"mode": "channel","channel": "@MrBeast","maxResults": 10,"sort": "latest","includeShorts": false}
mode is required (channel, search, playlist, video, shorts,
trending); everything else defaults sensibly. maxResults (default 50, hard
cap 100) is the total row budget and is enforced locally — for channel mode it
includes the channel record, so maxResults: 1 returns the channel only.
Output
One row per public record; recordType discriminates video vs channel:
{"recordType": "video","videoId": "dQw4w9WgXcQ","title": "…","channelId": "UC…","channelName": "…","publishedAt": "2009-10-25T06:57:33.000Z","durationSeconds": 212,"viewCount": 1600000000,"likeCount": 17000000,"commentCount": 1300000,"thumbnailUrl": "https://i.ytimg.com/vi/dQw4w9WgXcQ/hqdefault.jpg","description": "…","tags": ["…"],"error": null,"scraped_at": "2026-08-15T00:00:00.000Z"}
Channel rows carry handle, subscriberCount, videoCount and country
instead of the video-only fields. Dataset views (videos, channels) split the
two shapes for you.
Pricing
Pricing
Pay per event, and the platform usage is on us — the price you see is the price you pay, with no compute bill on top.
| Event | Price | What one charge buys |
|---|---|---|
| Video or channel record | $0.0005 | Charged once per delivered public video or channel record (one dataset row). Rows are charged only after they are pushed to the dataset; a missing/invalid mode, an unresolvable handle or id, an empty search, and an upstream bot-wall/5xx/timeout are free error items and never charged. |
| Actor Start | $0.002 | One run, whatever it returns. |
Higher Apify subscription tiers pay less on every event (Silver −20%, Gold −35%).
Use cases
- Channel audits — pull a channel's profile and its latest videos in one run.
- Search pipelines — keyword search over YouTube returned as typed rows.
- Single-video enrichment — resolve one URL to id, title, views, likes, comments, duration and tags.
- LLM/MCP tooling — clean, typed JSON with YouTube-native field names; no scraping or parsing the site yourself.
FAQ
Does this actor need an API key or login? No. It reads YouTube's public metadata surface; there is no upstream cost. (Reachability from datacenter IPs is gated on an on-platform probe before this actor goes live.)
How many rows can I get? Up to maxResults (default 50, hard cap 100). The
cap is enforced locally before/instead of trusting upstream, so you are never
billed for more than you asked for.
What is a "record" for billing? One dataset row — one video or one channel record. A channel enumeration returns the channel record plus its videos.
What happens when nothing matches? An empty search/playlist, an
unresolvable handle, a missing mode, or an upstream bot-wall becomes a free
error item with the message in the error field — never a charged empty
success.
This Actor is an independent tool and is not affiliated with, endorsed by, or sponsored by YouTube or Google LLC. It reads only public video and channel metadata.