YouTube Shorts Scraper (Channels & Hashtags)
Pricing
from $1.05 / 1,000 short scrapeds
YouTube Shorts Scraper (Channels & Hashtags)
Scrape YouTube Shorts from any channel or hashtag: title, views, likes, comments, publish date, duration, description and hashtags. No API key, no quota. Export to Excel, CSV or JSON.
Pricing
from $1.05 / 1,000 short scrapeds
Rating
0.0
(0)
Developer
Julio Barcellos Rangel
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
7 hours ago
Last modified
Categories
Share
YouTube Shorts Scraper collects the Shorts of any YouTube channel or hashtag with title, views, likes, comment count, publish date, duration, description, hashtags and tags. It is made for creators, agencies, marketers and researchers who want to find viral Shorts, track competitors and export YouTube Shorts data to Excel, CSV or JSON, with no YouTube API key and no login.
What does YouTube Shorts Scraper do?
You give it channels, hashtags, or both. For each channel, the robot opens the channel's Shorts tab. For each hashtag, it opens the hashtag's Shorts page. It then reads the list of Shorts page by page until it reaches your limit per source.
With Include likes, comments, date and description turned on (the default), it also opens every Short to add the exact view count, likes, comment count, publish date, duration, description, hashtags, tags and channel. Turned off, you get a fast list with title, views and link only.
Channels can be given as:
@handles:@MrBeast- Handles without the
@:MrBeast - Channel URLs:
https://www.youtube.com/@MrBeastorhttps://www.youtube.com/channel/UCX6OQ3DkcsbYNE6H8uQQuVA - Channel IDs:
UCX6OQ3DkcsbYNE6H8uQQuVA
Hashtags can be given as cooking, #cooking or https://www.youtube.com/hashtag/cooking.
What comes out: one row per Short, with the source it came from (channel or hashtag) and the Short's data.
What data can you extract?
| Field | What it means | Example |
|---|---|---|
source | The channel or hashtag this Short was found on, as you typed it (hashtags start with #) | #cooking |
sourceType | channel or hashtag | hashtag |
videoId | 11-character video ID of the Short | N0zC0CpwiZc |
title | Title of the Short | Fire Paan |
url | Link to the Short | https://www.youtube.com/shorts/N0zC0CpwiZc |
views | View count as a number (exact with details on, see Tips) | 45927810 |
viewsText | View count as shown in the Shorts list | 45M views |
thumbnail | Thumbnail image URL | https://i.ytimg.com/vi/N0zC0CpwiZc/hqdefault.jpg |
channelName | Channel that posted the Short (details) | Nick DiGiovanni |
channelId | Channel ID (details) | UCMyOj6fhvKFMjxUCp3b_3gA |
durationSeconds | Length in seconds (details) | 26 |
description | Full description of the Short (details) | #cooking #streetfood #viral |
hashtags | Hashtags found in the description (details) | ["#cooking", "#streetfood", "#viral"] |
keywords | Tags the creator set on the video (details) | ["Chef", "Cook", "Learn To Cook"] |
likes | Like count, rounded as YouTube shows it (details) | 595000 |
comments | Comment count, rounded as YouTube shows it (details) | 3700 |
published | Publish date as YouTube shows it (details) | Aug 25, 2026 |
scrapedAt | When the row was collected (ISO 8601, UTC) | 2026-10-08T20:18:10.724Z |
error | Only on error items: why a source gave nothing | Channel or hashtag not found |
Fields marked "(details)" are only filled when includeDetails is on. With it off, each row has source, sourceType, videoId, title, url, views, viewsText, thumbnail and scrapedAt.
The default table view shows source, channelName, title, views, likes, comments, published, durationSeconds and url. All fields are in the full JSON, CSV and Excel exports.
How to use YouTube Shorts Scraper
- Open the robot in Apify Console and go to the Input tab.
- In Channels, add one channel per line. In Hashtags, add one hashtag per line. Both lists come pre-filled with an example (
@MrBeastandcooking), so delete the example you don't want. - Set Max Shorts per channel or hashtag (default 20).
- Keep Include likes, comments, date and description on for full data, or turn it off for a fast list.
- Click Start. Shorts appear in the Output tab while the robot works.
- Click Export to download JSON, CSV, Excel, HTML or XML, or read the dataset through the API.
Input
| Field | Type | Default | What it does |
|---|---|---|---|
channels | array of strings | ["@MrBeast"] | @handles, channel URLs or UC… channel IDs. Their Shorts tab is scraped. |
hashtags | array of strings | empty (the form shows cooking as an example) | Hashtags with or without #, or youtube.com/hashtag/… URLs. Shorts using the hashtag are scraped. |
maxShortsPerSource | integer, minimum 1 | 20 | Stop after this many Shorts for each channel or hashtag. |
includeDetails | boolean | true | Open each Short to add exact views, likes, comment count, publish date, duration, description, hashtags and tags. |
proxy | object | { "useApifyProxy": true } | Apify Proxy settings. |
Example input for channels only (note the empty hashtags list, so the default hashtag is not added):
{"channels": ["@MrBeast", "https://www.youtube.com/@NickDiGiovanni"],"hashtags": [],"maxShortsPerSource": 50,"includeDetails": true,"proxy": { "useApifyProxy": true }}
Output example
One real item from a recent run on the hashtag cooking (the keywords list is shortened here):
{"source": "#cooking","sourceType": "hashtag","videoId": "N0zC0CpwiZc","title": "Fire Paan","url": "https://www.youtube.com/shorts/N0zC0CpwiZc","views": 45927810,"viewsText": "45M views","thumbnail": "https://i.ytimg.com/vi/N0zC0CpwiZc/hqdefault.jpg","channelName": "Nick DiGiovanni","channelId": "UCMyOj6fhvKFMjxUCp3b_3gA","durationSeconds": 26,"description": "#cooking #streetfood #viral","hashtags": ["#cooking", "#streetfood", "#viral"],"keywords": ["Chef", "Cook", "Learn To Cook", "Cooking", "Food"],"likes": 595000,"comments": 3700,"published": "Aug 25, 2026","scrapedAt": "2026-10-08T20:18:10.724Z"}
If a channel or hashtag can't be found, you get an error item:
{"source": "@this-channel-does-not-exist","error": "Channel or hashtag not found"}
How much does it cost?
The robot uses pay per event pricing. You pay only for the Shorts returned, and Apify platform usage is already included in the price.
| Event | Price (Free plan) |
|---|---|
| Short scraped | $0.0015 per Short, which is $1.50 per 1,000 Shorts |
The price is the same with details on or off. Paid Apify plans get a discount:
| Plan | Price per 1,000 Shorts |
|---|---|
| Free | $1.50 |
| Bronze (-10%) | $1.35 |
| Silver (-20%) | $1.20 |
| Gold and higher (-30%) | $1.05 |
Worked examples on the Free plan:
- The default input (1 channel + 1 hashtag, 20 Shorts each) = 40 Shorts: $0.06.
- 100 channels × 50 Shorts = 5,000 Shorts: $7.50 ($5.25 on Gold).
- 10,000 Shorts from hashtags: $15.00 ($13.50 on Bronze, $12.00 on Silver, $10.50 on Gold).
What is NOT charged:
- Error items (
Channel or hashtag not found,No Shorts found). - The same Short seen twice on one channel or hashtag page (it is saved once).
Use cases
- Find viral Shorts in your niche: scrape a hashtag and sort by
viewsorlikesto see which formats and topics work. - Track competitors: schedule daily runs on competitor channels and compare views, likes and comments over time.
- Influencer discovery: collect the channels that post under a hashtag (
channelName,channelId) and build an outreach list. - Engagement analysis: compute likes per view and comments per view for each Short or each creator.
- Content planning: study titles, descriptions, hashtags and tags (
keywords) of the top Shorts before you publish your own. - Brand monitoring: follow a campaign hashtag and see who uses it and how the Shorts perform.
- Feed other tools: pass the Shorts URLs to a transcript or comments scraper for AI analysis.
Tips and limits
- Clear the example you don't need. In the Console form both lists come pre-filled. From the API,
channelsdefaults to["@MrBeast"], so send"channels": []for a hashtag-only run;hashtagsis empty unless you send it. - Details are slower. With
includeDetailson, the robot opens each Short (about 3 at a time). Turn it off when you only need titles, links and views. - Some detail fields can be missing. The exact
views,durationSecondsandkeywordscome from YouTube's video player data, which YouTube does not always return. When it is missing,durationSecondsisnull,keywordsis empty andviewskeeps the rounded number from the Shorts list (for example50M viewsbecomes50000000). Likes, comments, date and description come from a second source and are usually still filled. - Likes and comments are rounded the way YouTube shows them:
856Kbecomes856000. publishedis a date text such asSep 27, 2026, not an ISO date.keywordsare the creator's tags. Many Shorts have none, so an empty list is normal.hashtagscome from the description. If a Short has no hashtags in its description, the list is empty.- Order. Shorts are returned in the order YouTube lists them on the channel's Shorts tab or the hashtag page.
- No hard cap.
maxShortsPerSourcehas no upper limit in the input. The robot stops when YouTube serves no more Shorts for that source, so you may get fewer. - Error items are pushed for
Channel or hashtag not foundandNo Shorts found. They are free. - Proxy. Requests go through Apify Proxy, with retries on new IPs and a last try on the Residential proxy group when your account has access to it.
Use it from the API, Python or JavaScript
JavaScript (Node.js):
const { ApifyClient } = require('apify-client');const client = new ApifyClient({ token: 'YOUR_TOKEN' });const input = {channels: ['@MrBeast'],hashtags: [],maxShortsPerSource: 50,includeDetails: true,};const run = await client.actor('juliob.rangel/youtube-shorts-scraper').call(input);const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(items.length, 'Shorts');
Python:
from apify_client import ApifyClientclient = ApifyClient('YOUR_TOKEN')run_input = {'channels': [],'hashtags': ['cooking', 'recipe'],'maxShortsPerSource': 50,'includeDetails': True,}run = client.actor('juliob.rangel/youtube-shorts-scraper').call(run_input=run_input)items = client.dataset(run['defaultDatasetId']).list_items().itemsprint(len(items), 'Shorts')
You can also call it over plain HTTP with the Apify API (for example the run-sync-get-dataset-items endpoint of juliob.rangel~youtube-shorts-scraper).
It works with Make, Zapier, n8n, Google Sheets export, webhooks and AI agents through the Apify MCP server.
FAQ
Do I need a login, cookies or a YouTube API key? No. The robot reads public Shorts pages the way a logged-out visitor sees them.
Can I export YouTube Shorts data to Excel or CSV? Yes. Click Export in the Output tab and choose Excel, CSV, JSON, HTML or XML.
How many Shorts can I get per channel or hashtag?
Up to your maxShortsPerSource value, as long as YouTube keeps serving more Shorts for that page.
Why are durationSeconds or keywords empty on some rows?
YouTube did not return its player data for that Short during the run. The other fields (likes, comments, date, description) come from a second request and are usually still filled, and views falls back to the rounded number from the list.
Can I scrape regular (long) videos with it? No. It reads Shorts tabs and hashtag Shorts pages only. For long videos, use the channel videos or video details scrapers below.
Why did I get an error item?
The channel or hashtag could not be resolved (Channel or hashtag not found), or the page had no Shorts (No Shorts found). Check the spelling of the handle or hashtag. Error items are not charged.
Is scraping YouTube Shorts legal? The robot only collects publicly available data. You are responsible for complying with YouTube's terms and with privacy laws such as GDPR and LGPD. If you store personal data, you need a legitimate reason.
Related scrapers
- YouTube Video Details Scraper (Views, Likes, Comments)
- YouTube Channel Videos Scraper (Fast & Cheap)
- YouTube Comments Scraper (Fast & Cheap)
- YouTube Transcript Scraper (Fast & Cheap)
- TikTok Video Scraper (Views, Likes, Comments, Shares)
- Instagram Posts Scraper (Reels, Likes, Views, Captions)
YouTube Shorts Scraper (PT-BR)
Coleta Shorts do YouTube de qualquer canal ou hashtag: visualizações, curtidas, comentários, data, duração, descrição e hashtags. Sem chave de API e sem login. Você paga só por Short retornado. Exporte para Excel, CSV ou JSON.