YouTube Video/Shorts Stats Scraper avatar

YouTube Video/Shorts Stats Scraper

Pricing

from $2.00 / 1,000 results

Go to Apify Store
YouTube Video/Shorts Stats Scraper

YouTube Video/Shorts Stats Scraper

Scrapes YouTube videos and Shorts for views, likes, comments and metadata using yt-dlp

Pricing

from $2.00 / 1,000 results

Rating

0.0

(0)

Developer

Cyrolix

Cyrolix

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Categories

Share

YouTube Video & Shorts Scraper

Scrape YouTube videos and Shorts for views, likes, comments, channel info, and direct video URLs. No API key or login required.

Handles regular videos, YouTube Shorts, and playlist URLs (auto-extracts the first entry).


Features

FeatureDetails
Likes
Views
Comment Count
Video Title
Video Description
Upload Date
Duration (seconds)
Thumbnail URL
Direct Video URL✅ (CDN link, time-limited)
Channel Name
Channel Handle✅ (without @ prefix)
Channel URL
Channel ID
Subscriber Count✅ (human-readable, e.g. "65.3K subscribers")
Live Stream Detection
YouTube Shorts Support
No Login / API Key Required
Batch URLs

Supported URL Formats

TypeExample
Standard videohttps://www.youtube.com/watch?v=XXXXXXXXXXX
Short URLhttps://youtu.be/XXXXXXXXXXX
YouTube Shortshttps://www.youtube.com/shorts/XXXXXXXXXXX
Playlist (first video)https://www.youtube.com/playlist?list=XXXXXXXXX

Input

FieldTypeRequiredDescription
urlStringNo*Single YouTube video or Shorts URL
urlsArray of StringsNo*Multiple YouTube URLs to scrape

*At least one of url or urls must be provided.

Example Input

{
"url": "https://www.youtube.com/watch?v=XXXXXXXXXXX"
}
{
"urls": [
"https://www.youtube.com/watch?v=XXXXXXXXXXX",
"https://youtu.be/YYYYYYYYYYY",
"https://www.youtube.com/shorts/ZZZZZZZZZZZ"
]
}

Output

Each scraped URL produces one result object pushed to the dataset.

Full Output Schema

{
"url": "https://www.youtube.com/watch?v=XXXXXXXXXXX",
"videoId": "XXXXXXXXXXX",
"status": "available",
"views": 1420000,
"likes": 48200,
"comments": 3100,
"title": "Video Title Here",
"description": "Full video description text...",
"durationSeconds": 312,
"datePosted": "2026-08-10T00:00:00.000Z",
"isLive": false,
"channelName": "Channel Display Name",
"channelId": "UCxxxxxxxxxxxxxxxxxxxxxxxxx",
"channelUrl": "https://www.youtube.com/@channelhandle",
"username": "channelhandle",
"subscriberCount": "65.3K subscribers",
"thumbnailUrl": "https://i.ytimg.com/vi/XXXXXXXXXXX/maxresdefault.jpg",
"videoUrl": "https://rr1---sn-xxx.googlevideo.com/...",
"scrapedAt": "2026-08-22T12:00:00.000Z",
"error": null
}

Output Fields Reference

FieldTypeDescription
urlStringCanonical YouTube video URL
videoIdStringYouTube video ID (11-character string)
statusString"available" on success, "error" on failure
viewsNumber / nullTotal view count
likesNumber / nullTotal like count
commentsNumber / nullTotal comment count (may be null if disabled)
titleStringVideo title
descriptionString / nullFull video description
durationSecondsNumber / nullVideo length in seconds
datePostedISO 8601 / nullUpload date
isLiveBooleanWhether the video is a live stream
channelNameString / nullChannel display name
channelIdString / nullYouTube channel ID (UC...)
channelUrlString / nullLink to the channel page
usernameString / nullChannel handle without the @ prefix
subscriberCountString / nullHuman-readable subscriber count (e.g. "65.3K subscribers")
thumbnailUrlString / nullVideo thumbnail image URL
videoUrlString / nullDirect CDN video URL (googlevideo.com, time-limited)
scrapedAtISO 8601Timestamp of when the scrape ran (UTC)
errorString / nullError message if status is "error"

Error Response

{
"url": "https://www.youtube.com/watch?v=XXXXXXXXXXX",
"videoId": "XXXXXXXXXXX",
"status": "error",
"error": "Video unavailable or removed",
"scrapedAt": "2026-08-22T12:00:00.000Z"
}

Limitations

  • Only works on public YouTube videos — private, unlisted, and age-restricted videos may not be accessible
  • Direct video CDN URLs (videoUrl) are time-limited (typically a few hours) — download promptly if needed
  • Comment counts may be null if comments are disabled on the video
  • Like counts may be hidden if the channel has disabled like visibility
  • YouTube Shorts and videos with DRM protection may not return a usable videoUrl
  • For very large batches, yt-dlp may be rate-limited — space out runs if needed