YouTube Video Scraper [FAST] | Views, Duration & Thumbnails
Pricing
from $5.00 / 1,000 results
YouTube Video Scraper [FAST] | Views, Duration & Thumbnails
Turn any YouTube channel into a clean dataset. Pull titles, url, views, durations, thumbnails, and publish dates for up to 1,000 videos in one run, great for content research, competitor tracking. Most runs finish in under 10 seconds. Pay $0.005 per video, only when it succeeds. Failures are free.
Pricing
from $5.00 / 1,000 results
Rating
5.0
(4)
Developer
Apizy
Maintained by CommunityActor stats
3
Bookmarked
7
Total users
4
Monthly active users
3 days ago
Last modified
Categories
Share
YouTube Video Scraper
Scrape videos from any YouTube channel and get titles, views, durations, thumbnails, publish dates, and per-video insights. Works on any channel URL format and returns clean JSON in seconds.
You are only charged for videos that come back with real data. Failed requests and empty results are free.
What does YouTube Video Scraper do?
YouTube Video Scraper pulls video data directly from any YouTube channel and turns it into a clean, structured dataset ready to use.
It can extract:
- Video titles and URLs
- View counts (raw string and normalized integer)
- Video durations (string, milliseconds, and seconds)
- Thumbnail URLs
- Publish dates
- Per-video insights: views per day, views per second, watch hours, and duration category
Why Scrape YouTube Videos?
A channel's video list tells you more than just what was posted. Views, duration, and publish date together reveal what content actually performs, how often a channel publishes, and which formats drive the most watch time.
Here are some ways you could use this data:
- Track competitor channels and monitor new uploads over time
- Identify which video lengths and topics get the most views in a niche
- Build datasets for content research, trend analysis, or machine learning
- Feed video metadata into dashboards, spreadsheets, or automation tools
- Analyze upload frequency and publishing patterns across channels
How to Use
Scraping a YouTube channel takes about 10 seconds. No setup needed beyond the channel URL.
- Click Try for free
- Enter the YouTube channel URL, for example:
https://www.youtube.com/@mkbhd - Pick how many videos to fetch: 10, 20, 50, 100, 300, 500, or 1,000
- Click Run
- When done, preview or download your data from the Dataset tab
To continue from where a previous run stopped, paste the nextCursor value from the last output into the cursor field.
Input
{"channelUrl": "https://www.youtube.com/@mkbhd","maxVideos": "100"}
To resume from a previous run:
{"channelUrl": "https://www.youtube.com/@mkbhd","maxVideos": "100","cursor": "4qmFsgLdCBIYVUNCSnljc21kdXZZRUw4M1JfVTRK..."}
Input Fields
| Field | Type | Default | Description |
|---|---|---|---|
channelUrl | string | none | YouTube channel URL (required). Supports /@handle, /channel/ID, /c/name, /user/name |
maxVideos | string | "20" | How many videos to scrape. Options: 10, 20, 50, 100, 300, 500, 1000 |
cursor | string | none | Value from a previous run's pagination.nextCursor. Leave empty to start from the top. |
Output
Each video is saved as one item in the Dataset. The run summary goes to the Key-Value Store under OUTPUT. Pagination info is saved separately under PAGINATION.
Video item
{"videoId": "QrT4S9i3agE","title": "Top 5 Android 17 Features: I Swear It's New!","videoUrl": "https://www.youtube.com/watch?v=QrT4S9i3agE","publishedAt": "2026-06-24","publishedAtRaw": "18 hours ago","duration": "9:24","durationMs": 564000,"durationSeconds": 564,"views": 781000,"viewsRaw": "781K views","thumbnailUrl": "https://i.ytimg.com/vi/QrT4S9i3agE/hqdefault.jpg","insight": {"ageInDays": 1,"viewsPerDay": 781000,"viewsPerSecond": 1384.75,"estimatedWatchHours": 121805.56,"durationCategory": "5-15 min"}}
Run summary
{"summary": {"channelName": "Marques Brownlee","channelId": "UCBJycsmduvYEL83R_U4JriQ","channelUrl": "https://www.youtube.com/@mkbhd","successCount": 100,"failedCount": 0,"successRate": "100%","totalCharged": 0.5,"startedAt": "2026-06-25T10:00:00.000Z","finishedAt": "2026-06-25T10:00:05.000Z","totalDurationSeconds": 5}}
Output Fields
Video data
| Field | Description |
|---|---|
videoId | YouTube video ID |
title | Video title |
videoUrl | Direct link to the video |
publishedAt | Publish date in YYYY-MM-DD format |
publishedAtRaw | Raw publish string from YouTube (e.g. "3 days ago") |
duration | Duration in MM:SS or HH:MM:SS |
durationMs | Duration in milliseconds |
durationSeconds | Duration in seconds |
views | View count as an integer (781000, not "781K") |
viewsRaw | Raw view string from YouTube (e.g. "781K views") |
thumbnailUrl | Thumbnail URL |
Insight (nested inside each video item)
| Field | Description |
|---|---|
ageInDays | How many days since the video was published |
viewsPerDay | Average views per day since publish date |
viewsPerSecond | Views per second of video content |
estimatedWatchHours | Total estimated watch hours (views x duration / 3600) |
durationCategory | < 1 min, 1-5 min, 5-15 min, 15-30 min, or 30+ min |
Pagination (separate dataset)
| Field | Description |
|---|---|
currentPage | Page number of this run, starting at 1 |
pageSize | Number of videos requested |
totalPages | Estimated total pages based on channel video count |
hasNextPage | true if more videos are available |
nextCursor | Pass this as cursor on the next run to get the following page |
Pricing
Pay per successfully scraped video. Failed requests are free.
| Videos | Cost | Est. time |
|---|---|---|
| 10 | $0.05 | ~2s |
| 100 | $0.50 | ~5s |
| 300 | $1.50 | ~15s |
| 500 | $2.50 | ~20s |
| 1,000 | $5.00 | ~40s |
$0.005 per video.
For runs over 500 videos, set No timeout in Run options.
Notes
- All channel URL formats work:
/@handle,/channel/ID,/c/name,/user/name - View counts are integers, not strings.
781000instead of"781K", ready to sort and filter without extra parsing. - Duration comes in three formats: raw string (
"9:24"), milliseconds, and seconds. - Pagination is cursor-based. Pass
nextCursorback ascursoron the next run. No duplicates or gaps between runs.
More Actors You Might Like
Built by the same team and backed by the same transparent pricing philosophy: no hidden attempts, no wasted credits, no charge for failed results.
| Actor | Description |
|---|---|
| YouTube Video Detail Scraper | Full video metadata: views, likes, comments, keywords, duration, and engagement insights. |
| YouTube Comment Scraper | Scrape comments from any video with author details, like counts, reply counts, and engagement flags. |
| YouTube Channel Scraper | Channel profiles with subscriber counts, engagement rates, contact info, and social links. |
| YouTube Channel Scraper Fast | Same channel data at faster speed. Better for large batches. |
| YouTube Transcript Scraper | Extract the full transcript from any YouTube video, with optional timestamps per segment. |
Get in Touch
Have questions, need custom scraping solutions, or want to integrate with your existing stack? We're here to help!
- Email: apizy.studio@gmail.com
We build custom scraping solutions tailored to your specific needs that are fast, reliable, and transparent.