YouTube Shorts Scraper β Metadata & Stats
Pricing
from $1.00 / 1,000 results
YouTube Shorts Scraper β Metadata & Stats
Extract public YouTube Shorts metadata from URLs. Get titles, descriptions, channels, engagement, thumbnails, chapters, and available caption-track details.
Pricing
from $1.00 / 1,000 results
Rating
0.0
(0)
Developer
ScrapingMonkey
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
Collect the public metadata behind known YouTube Shorts links. YouTube Shorts Details Scraper keeps the title, description, channel, engagement, thumbnail references, and available caption information in one row.
Use it to enrich a Shorts catalogue, review campaign clips, or connect a short-form content list with the channel and metrics behind each link.
| At a glance | Details |
|---|---|
| π₯ Input | Full YouTube Shorts or other supported video URLs |
| π€ Output | Title, description, channel, metrics, thumbnails, chapters, and caption metadata |
| π Login required | No YouTube credentials or cookies |
| β‘ Processing | Up to 5 requests concurrently with automatic retries |
| πΎ Delivery | One detail row per processed input |
What the YouTube Shorts scraper extracts π
The Actor retrieves public watch-page metadata for each video ID. Available fields include:
- Video ID, canonical, watch and embed URLs, title, description, and duration
- Publish and upload dates, category, keywords, hashtags, and description links
- Channel identity, handle, avatar variants, verification, and visible subscriber count
- View, like, and comment counts, plus available count labels
- Thumbnail variants, chapters, caption tracks, and translation-language options
- Available live, upcoming, embedding, privacy, and paid-promotion indicators
How to scrape YouTube Shorts π
- Add full Shorts URLs to
inputList. - Start the Actor and review each result's status.
- Choose the metadata columns needed for your catalogue or report.
- Export the dataset or join it to existing records by video ID.
{"inputList": ["https://www.youtube.com/shorts/5mU6SRS2Bxo"]}
YouTube Shorts data fields and output π¦
| Field group | Included data |
|---|---|
| Video | Identity, title, description, duration, dates, category, and keywords |
| Channel | ID, name, handle, URL, avatars, verification, and subscribers |
| Engagement | View, like, and comment counts, plus available source labels |
| Media context | Thumbnails, chapter timing, caption tracks, and translation options |
| Access and live state | Available playback, embedding, live, upcoming, and promotion indicators |
Complete illustrative success item. The content and values below are fictional examples, not a live result:
{"input": "https://www.youtube.com/shorts/TrailWalk01x","status": "success","id": "TrailWalk01x","url": "https://www.youtube.com/shorts/TrailWalk01x","watch_url": "https://www.youtube.com/watch?v=TrailWalk01x","embed_url": "https://www.youtube.com/embed/TrailWalk01x","type": "short","title": "A quiet forest moment","description": "A short forest walk. Route notes: https://example.com/trail #Hiking","duration_seconds": 45,"duration_text": "0:45","publish_date": "2026-09-01","upload_date": "2026-09-01","category": "Travel & Events","thumbnail_url": "https://example.com/forest-path.jpg","thumbnails.url": ["https://example.com/forest-path-small.jpg","https://example.com/forest-path.jpg"],"thumbnails.width": [640,1280],"thumbnails.height": [360,720],"keywords": ["hiking","forest walk"],"author.id": "UCaaaaaaaaaaaaaaaaaaaaaa","author.name": "Trail Journal","author.handle": "@trailjournal","author.url": "https://www.youtube.com/@trailjournal","author.avatar_url": "https://example.com/trail-avatar.jpg","author.avatar_thumbnails.url": ["https://example.com/trail-avatar-small.jpg","https://example.com/trail-avatar.jpg"],"author.avatar_thumbnails.width": [80,160],"author.avatar_thumbnails.height": [80,160],"author.is_verified": false,"author.subscribers_text": "18.4K subscribers","author.subscribers": 18400,"statistics.views": 12400,"statistics.views_text": "12,400 views","statistics.likes": 286,"statistics.likes_text": "286","statistics.comments": 18,"statistics.comments_hidden": false,"captions.name": ["English"],"captions.language_code": ["en"],"captions.vss_id": [".en"],"captions.url": ["https://www.youtube.com/api/timedtext?v=TrailWalk01x&lang=en"],"captions.is_auto_generated": [false],"captions.is_translatable": [true],"translation_languages.language_code": ["es"],"translation_languages.name": ["Spanish"],"chapters.title": [],"chapters.start_seconds": [],"chapters.timestamp": [],"live.is_live_content": false,"live.is_live_now": null,"live.is_upcoming": false,"live.start_at": null,"live.end_at": null,"live.concurrent_viewers": null,"availability.status": "OK","availability.reason": null,"availability.is_private": false,"availability.is_unlisted": false,"availability.is_family_safe": true,"availability.is_age_restricted": false,"availability.allow_ratings": true,"availability.is_embeddable": true,"availability.available_countries": [],"is_shorts_eligible": true,"is_paid_promotion": false,"description_links": ["https://example.com/trail"],"hashtags": ["#Hiking"]}
Each result stays in one row, with the same literal dotted keys in the table and JSON. Thumbnail URLs and dimensions align by position, as do caption-track and chapter columns. Caption entries are track references; the transcript text is collected by the separate transcript Actor.
Missing optional fields can be null, empty strings, or empty lists. Some flags default to false when no signal is present. A failed row retains input, sets status to failed, and leaves the result-data fields null.
Input requirements and coverage βοΈ
| Parameter | Type | Default | Rules |
|---|---|---|---|
inputList | array of strings | Required | At least one full YouTube video URL; bare IDs are not accepted. |
Supported video links include /watch?v=, youtu.be, /shorts/, /live/, /embed/, and /v/ forms on the accepted YouTube hosts. URLs must identify an 11-character video ID. Bare IDs, channel links, and playlist-only links are not accepted.
Output uses a /shorts/ URL and type: short. This Actor does not independently verify that the target is a Short: supported watch links also work. Check is_shorts_eligible when YouTube supplies it, and submit known Shorts for a Shorts-only dataset.
Repeated input entries are processed separately, even when they refer to the same target. Remove duplicate entries before the run if you want to avoid repeated results.
YouTube short use cases π―
Content catalogue enrichment
Add descriptions, channel identity, publication dates, and thumbnail references to an existing video list.
Campaign reporting
Compare the available engagement and public metadata for a selected set of campaign links.
Caption and chapter planning
Inspect available caption languages and chapter times before selecting videos for transcript collection or manual review.
Publication checks
Review accessible embedding, availability, and live-state indicators for videos included in your own catalogue.
Pricing and billable short rows π°
Check the Actor's Pricing tab for the current charging model and rate.
Under dataset-item pricing, each saved success or failed row can be billable. Automatic retries do not independently create extra rows. Repeated input entries can produce repeated billable results.
Thumbnails, chapters, and caption-track references remain in the same result row; they do not create separate dataset items.
YouTube Short Details Scraper API and integrations π
Use the Actor ID from the API tab as $ACTOR_ID and your Apify token as $APIFY_TOKEN.
curl -X POST "https://api.apify.com/v2/acts/$ACTOR_ID/runs?token=$APIFY_TOKEN" \-H "Content-Type: application/json" \-d '{"inputList":["https://www.youtube.com/shorts/5mU6SRS2Bxo"]}'
This request starts a run. Retrieve the default dataset after completion, or use schedules and webhooks to connect it to a recurring workflow. Export JSON, CSV, or Excel, or send selected fields to Google Sheets, Make, Zapier, or your own application.
Reliability and limits β οΈ
Temporary request failures are retried. Invalid or unavailable targets produce failed rows while other inputs can continue. If a required collection step cannot be completed, the target can fail even when some public information is visible in a browser.
The Actor checks that returned metadata belongs to the requested video ID. Private, deleted, age-restricted, or otherwise unavailable videos can fail. Some optional fields remain null even on a successful row.
Counts can be parsed from rounded public labels. Read numeric values with their accompanying text, where supplied. Availability and live flags reflect the retrieved page; missing or false values are not a guarantee of current playback. Media references can expire.
Frequently asked questions β
Does it return the transcript text?
It returns available caption-track references and language information. Use YouTube Video Transcript Scraper for caption text and timed segments.
Can I submit a bare video ID?
No. Submit a full supported YouTube video URL.
Are view and subscriber counts exact?
They depend on the values YouTube exposes. Counts derived from abbreviated labels can be rounded; retain the original text where available.
Does it collect comments or download the video?
No. It returns metadata, media references, and available comment totals. Comment text and media downloads are separate tasks.
Does a success result prove the video is a Short?
No. It normalizes supported video IDs into the Shorts output format without independently validating the content type.
Support, responsible use, and related actors π
For a reproducible issue, share the run ID, a safe public input, and the field or behavior you expected through the Actor's support channel. Keep tokens and other credentials out of support messages.
Use public content in accordance with applicable privacy, copyright, contractual, and platform requirements.