YouTube Shorts Scraper avatar

YouTube Shorts Scraper

Pricing

from $1.50 / 1,000 results

Go to Apify Store
YouTube Shorts Scraper

YouTube Shorts Scraper

[๐Ÿ’ฐ $1.5 / 1K] Extract YouTube Shorts from any channel, search, or URL โ€” titles, view counts, likes, comment counts, hashtags, durations, thumbnails, and full channel details. Filter by upload date, sort by newest, popular, or oldest, and localize across 40+ countries.

Pricing

from $1.50 / 1,000 results

Rating

0.0

(0)

Developer

SolidCode

SolidCode

Maintained by Community

Actor stats

0

Bookmarked

3

Total users

1

Monthly active users

10 days ago

Last modified

Share

Pull YouTube Shorts at scale โ€” exact view, like, and comment counts, hashtags, durations, upload dates, and full creator profiles for every vertical video. Feed it channels, keyword searches, or pasted URLs and get one clean row per Short. Built for creators, social media marketers, and trend researchers who need Shorts performance data in a spreadsheet instead of copying numbers off the app one video at a time.

Why This Scraper?

  • Three input modes in one run โ€” scrape a channel's entire Shorts tab, run keyword searches that return Shorts only, or paste direct Short, channel, and /hashtag/<tag>/shorts URLs, and mix all three in a single job.
  • Exact view and like counts on every Short โ€” precise figures pulled straight from the video, not the rounded "1.2M"-style numbers shown on cards, plus a per-Short comment count.
  • Full channel profile on every row โ€” channel name, handle, channel ID, subscriber count, and verified badge attached to each Short, so there's no separate table to join.
  • Extended creator About data on demand โ€” one toggle adds channel description, join date, location, avatar, banner, total video count, and lifetime total views.
  • 40+ country and 19-language localization โ€” pull region-specific Shorts and localized titles and metadata for markets from the US and UK to Japan, Brazil, India, and beyond.
  • Rich per-Short metadata โ€” hashtags, exact duration (seconds plus readable "0:24" text), thumbnail URL, ISO upload date, and human "2 weeks ago" published text on every result.
  • Four content flags per Short โ€” members-only, age-restricted, subtitles-available, and comments-turned-off surfaced for filtering and compliance checks.
  • Three sort orders plus a date floor โ€” order the collected Shorts newest, most popular, or oldest, and drop anything older than a date you set ("2024-01-01" or "7 days").
  • Flat, one-row-per-Short output โ€” every Short is a single clean row ready for spreadsheets, BI tools, or a database, with no nested unpacking.

Use Cases

Creator & Channel Analytics

  • Benchmark your Shorts against a competitor's full Shorts tab by view, like, and comment count
  • Track which topics, hashtags, and durations drive the most views on a channel
  • Build a performance dashboard from a creator's entire Shorts back-catalog
  • Measure posting cadence from exact upload dates and published-time text

Trend & Hashtag Research

  • Pull Shorts for a keyword or /hashtag/<tag>/shorts page to see what's surfacing right now
  • Compare how a single trend performs across 40+ country markets
  • Spot rising formats early by sorting a hashtag's Shorts by most popular

Competitor Monitoring

  • Watch rival channels' newest Shorts with a date floor so you only pull recent uploads
  • Compare subscriber counts, verified status, and lifetime total views side by side
  • Track a competitor's Shorts output volume over time

Influencer & Lead Discovery

  • Find creators by keyword search and capture handle, subscriber count, and location
  • Shortlist partners by verified badge and subscriber threshold
  • Vet reach with extended channel profiles โ€” join date, total videos, total views

Data & Integration

  • Feed a flat, one-row-per-Short dataset into BI tools and spreadsheets
  • Enrich an existing creator database with fresh Shorts performance figures
  • Power alerts on new Shorts from a watchlist of channels

Getting Started

Scrape a Channel's Shorts

The simplest start โ€” one channel, sensible defaults:

{
"channels": ["@MrBeast"]
}

Keyword Search with a Result Cap

{
"searchQueries": ["satisfying recipes", "gym motivation"],
"maxResults": 50,
"country": "gb"
}

Multi-Source Run with Channel Details

Mix channels, pasted URLs, a hashtag page, sorting, and a date floor in one job:

{
"channels": ["nasa"],
"startUrls": [
"https://www.youtube.com/@mkbhd/shorts",
"https://www.youtube.com/shorts/XCGVurja73c",
"https://www.youtube.com/hashtag/cooking/shorts"
],
"maxResults": 100,
"sortBy": "popular",
"oldestPostDate": "3 months",
"includeChannelDetails": true
}

Input Reference

What to Scrape

At least one source is required. Combine any of the three.

ParameterTypeDefaultDescription
channelsstring[][]Channel usernames with or without the @ (e.g. nasa, @mkbhd) or channel URLs. Each channel's Shorts tab is scraped independently.
searchQueriesstring[][]Keywords to search on YouTube (e.g. satisfying recipes). Only Shorts are returned. Each query runs independently.
startUrlsstring[][]Paste YouTube URLs directly โ€” channel URLs (/@handle, /channel/UC..., /c/..., /user/...), individual Short URLs (/shorts/...), and hashtag URLs (/hashtag/...).

Results

ParameterTypeDefaultDescription
maxResultsinteger30Maximum Shorts per channel, search query, or hashtag. Set to 0 to fetch every available Short. An individual Short URL always returns exactly one result.

Filters

ParameterTypeDefaultDescription
oldestPostDatestring(none)Only include Shorts uploaded on or after this date. Accepts an exact date (2024-01-01) or a relative window (7 days, 3 months). Applies to channel inputs.
sortByselectNewest firstOrder the collected Shorts: Newest first, Most popular, or Oldest first.

Localization

ParameterTypeDefaultDescription
countryselectUnited StatesLocalize results to one of 40+ countries. Affects which Shorts appear and their localized metadata.
languageselectEnglishInterface language for Short titles and metadata โ€” one of 19 languages, from Japanese and Korean to Arabic, Hebrew, and Portuguese.

Enrichment

ParameterTypeDefaultDescription
includeChannelDetailsbooleantrueEnrich each Short with extended channel details โ€” description, join date, location, avatar, banner, total videos, and total views. Adds one lookup per unique channel. Turn off for faster, leaner results.

Output

Each Short is one flat row. Here's a representative result with channel details enabled:

{
"id": "XCGVurja73c",
"type": "short",
"url": "https://www.youtube.com/shorts/XCGVurja73c",
"title": "I Raced The Fastest Man On Earth",
"text": "Could I beat an Olympic sprinter? #shorts #challenge",
"thumbnailUrl": "https://i.ytimg.com/vi/XCGVurja73c/oardefault.jpg",
"duration": 24,
"durationText": "0:24",
"viewCount": 69694950,
"likeCount": 1730291,
"commentsCount": 14000,
"date": "2026-06-24T16:00:14+00:00",
"publishedText": "2 weeks ago",
"hashtags": ["#shorts", "#challenge"],
"hasSubtitles": false,
"isMembersOnly": false,
"isMonetized": null,
"isAgeRestricted": false,
"commentsTurnedOff": false,
"channelName": "MrBeast",
"channelUrl": "https://www.youtube.com/channel/UCX6OQ3DkcsbYNE6H8uQQuVA",
"channelId": "UCX6OQ3DkcsbYNE6H8uQQuVA",
"channelUsername": "@MrBeast",
"numberOfSubscribers": 507000000,
"isChannelVerified": true,
"channelDescription": "SUBSCRIBE FOR A COOKIE!",
"channelJoinedDate": "2012-02-19",
"channelLocation": "United States",
"channelAvatarUrl": "https://yt3.googleusercontent.com/example-avatar.jpg",
"channelBannerUrl": "https://yt3.googleusercontent.com/example-banner.jpg",
"channelTotalVideos": 992,
"channelTotalViews": 132996068543,
"input": "@MrBeast"
}

Core Short Fields

FieldTypeDescription
idstringShort video ID
typestringAlways "short"
urlstringCanonical Shorts URL (/shorts/<id>)
titlestringShort title
textstringCaption / description text
thumbnailUrlstringThumbnail image URL
durationnumberLength in seconds
durationTextstringHuman-readable length (e.g. 0:24)
datestringUpload date (ISO 8601)
publishedTextstringRelative published text (e.g. 2 weeks ago)
hashtagsstring[]Hashtags found in the caption
inputstringThe source (channel, query, or URL) that produced this row

Engagement

FieldTypeDescription
viewCountnumberExact view count
likeCountnumberExact like count
commentsCountnumberNumber of comments on the Short
commentsTurnedOffbooleanWhether comments are disabled

Content Flags

FieldTypeDescription
hasSubtitlesbooleanWhether captions/subtitles exist
isMembersOnlybooleanMembers-only content flag
isMonetizedbooleanMonetization flag
isAgeRestrictedbooleanAge-restriction flag

Channel

Present on every row.

FieldTypeDescription
channelNamestringChannel display name
channelUrlstringChannel URL
channelIdstringChannel ID (UC...)
channelUsernamestringChannel handle (e.g. @MrBeast)
numberOfSubscribersnumberSubscriber count
isChannelVerifiedbooleanVerified badge

Extended Channel

Populated when includeChannelDetails is on.

FieldTypeDescription
channelDescriptionstringChannel About description
channelJoinedDatestringChannel creation date
channelLocationstringChannel country / location
channelAvatarUrlstringChannel avatar URL
channelBannerUrlstringChannel banner URL
channelTotalVideosnumberTotal videos on the channel
channelTotalViewsnumberLifetime channel view count

Tips for Best Results

  • Start small, then scale โ€” set maxResults to 10-30 on your first run to confirm the data fits your needs, then raise it (or use 0 for every available Short).
  • Turn on channel details only when you need profiles โ€” it adds one lookup per unique channel. Leave it off for faster, leaner runs when the per-Short numbers are all you want.
  • Sorting applies to the collected set โ€” YouTube serves Shorts newest-first, so with a result cap, "Most popular" ranks the Shorts collected under that cap, not YouTube's global ranking. Raise maxResults for a wider popularity pool.
  • Use the date floor on channels and hashtags โ€” those arrive newest-first, so oldestPostDate stops collection as soon as an older Short appears. It doesn't narrow keyword searches.
  • Mix sources freely โ€” channels, keyword searches, and URLs all run in one job and land in one dataset.
  • Match country and language to your target market โ€” a German run localizes titles and metadata, not just which Shorts appear.
  • Captions can be blank โ€” text and hashtags come from a Short's caption/description, which some big-brand creators leave empty, so those fields may be blank even when the on-screen title shows a hashtag.

Pricing

From $1.50 per 1,000 results โ€” well below the going rate for YouTube Shorts data. Bronze, Silver, and Gold subscribers pay progressively less; the table below shows the total cost at each discount tier.

ResultsNo discountBronzeSilverGold
100$0.18$0.17$0.16$0.15
1,000$1.80$1.70$1.60$1.50
10,000$18.00$17.00$16.00$15.00
100,000$180.00$170.00$160.00$150.00

A "result" is one Short row in the output dataset. No compute or time-based charges โ€” you pay per result, plus a small fixed per-run start fee.

Integrations

Export data in JSON, CSV, Excel, XML, or RSS. Connect to 1,500+ apps via:

  • Zapier / Make / n8n โ€” Workflow automation
  • Google Sheets โ€” Direct spreadsheet export
  • Slack / Email โ€” Notifications on new results
  • Webhooks โ€” Trigger custom APIs on run completion
  • Apify API โ€” Full programmatic access

This actor is designed for legitimate research, analytics, and content strategy. You are responsible for complying with applicable laws and YouTube's Terms of Service. Extract only publicly available data, respect creators' rights, and do not use collected data for spam, harassment, or any unlawful purpose. Handle any personal data in line with applicable privacy regulations.