Social Blade Scraper
Pricing
$9.99/month + usage
Social Blade Scraper
Extract Social Blade channel stats, including grades, subscriber counts, monthly growth, and estimated earnings for YouTube, TikTok, Twitch, Instagram, and Facebook creators. Supports single profiles and bulk ranking list scrapes.
Pricing
$9.99/month + usage
Rating
0.0
(0)
Developer
Kawsar
Actor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
Social Blade Scraper: Extract Channel Stats, Rankings, and Growth Data
Pull subscriber counts, grades, estimated earnings, monthly growth trends, and ranking list data from Social Blade for any creator — across YouTube, TikTok, Twitch, Facebook, and Instagram. No browser needed, no rate-limit headaches, just structured data ready for your spreadsheet, dashboard, or pipeline.
What you can do with this actor
- Profile lookups: get full Social Blade stats for one creator or a batch of hundreds
- Ranking lists: scrape any Social Blade top or worst list page and get every entry in one run
- Growth tracking: schedule runs daily or weekly and watch subscriber trends over time
- Influencer vetting: verify real audience size and grade before committing to a sponsorship
- Competitive research: benchmark channels side-by-side with grades, subscriber counts, and earnings estimates
- Data pipelines: feed results directly into Google Sheets, Airtable, or a database via Apify integrations
Input
Profile mode
Provide one username, or a list of usernames, and pick the platform. The actor looks up each profile on Social Blade and returns a result row per channel.
| Parameter | Type | Default | Description |
|---|---|---|---|
username | string | Single username or channel name (e.g. MrBeast, ninja, cristiano) | |
usernames | string[] | Batch list — one username per line | |
platform | select | youtube | youtube, tiktok, twitch, facebook, instagram |
maxItems | integer | 100 | Maximum number of profiles to process (up to 1000) |
requestTimeoutSecs | integer | 30 | Per-request timeout in seconds |
Example — single channel:
{"username": "MrBeast","platform": "youtube"}
Example — batch:
{"usernames": ["MrBeast", "PewDiePie", "ninja", "pokimane"],"platform": "youtube","maxItems": 50}
List mode
Paste any Social Blade ranking list URL into listUrl. The actor fetches the whole page and returns every entry — rank, username, grade, and subscriber count. When listUrl is set, username and platform fields are ignored.
| Parameter | Type | Description |
|---|---|---|
listUrl | string | Any Social Blade top or worst list URL (see examples below) |
maxItems | integer | Cap on how many entries to return from the list |
Supported list URL formats:
https://socialblade.com/youtube/lists/top/50/subscribers/all/globalhttps://socialblade.com/youtube/lists/top/100/subscribers/entertainment/UShttps://socialblade.com/tiktok/lists/top/100/followershttps://socialblade.com/twitch/lists/top/50/followershttps://socialblade.com/facebook/lists/top/50/followershttps://socialblade.com/instagram/lists/top/50/followershttps://socialblade.com/instagram/lists/worst/100/followerswww.socialblade.com/youtube/lists/top/50/subscribers/all/AL
Example — list mode input:
{"listUrl": "https://socialblade.com/youtube/lists/top/50/subscribers/all/global","maxItems": 50}
Output
Profile mode output
One dataset row per channel. Example:
{"username": "MrBeast","displayName": "MrBeast","channelId": "UCX6OQ3DkcsbYNE6H8uQQuVA","platform": "youtube","channelUrl": "https://socialblade.com/youtube/user/MrBeast","grade": "A++","sbRank": 3,"subscriberRank": 1,"viewsRank": 2,"countryRank": 1,"categoryRank": 1,"subscribers": 340000000,"totalViews": 85000000000,"uploads": 820,"country": "US","channelType": "Entertainment","createdDate": "2012-02-19","channelDescription": "SUBSCRIBE FOR A COOKIE","monthlySubscribers": 8500000,"monthlyViews": 2100000000,"estimatedMonthlyEarnings": "$145K - $362K","scrapedAt": "2025-03-15T08:42:11.000000+00:00","error": null}
| Field | Type | Description |
|---|---|---|
username | string | Channel or account name |
displayName | string | Display name as shown on Social Blade |
channelId | string | Internal Social Blade channel ID |
platform | string | Platform (youtube, twitch, instagram, etc.) |
channelUrl | string | Social Blade profile URL that was scraped |
grade | string | Social Blade letter grade (A++, A+, A, B+, B, C, D, F) |
sbRank | integer | Overall Social Blade rank |
subscriberRank | integer | Rank by subscriber count |
viewsRank | integer | Rank by total views |
countryRank | integer | Rank within the channel's country |
categoryRank | integer | Rank within the channel's content category |
subscribers | integer | Total subscriber or follower count |
totalViews | integer | Cumulative video or profile views |
uploads | integer | Total videos, posts, or uploads |
country | string | Country code on Social Blade |
channelType | string | Content category or channel type |
createdDate | string | Account creation date (YYYY-MM-DD) |
channelDescription | string | Channel description |
monthlySubscribers | integer | Net subscriber change over the last 30 days |
monthlyViews | integer | Net view change over the last 30 days |
estimatedMonthlyEarnings | string | Estimated monthly earnings range (YouTube only) |
scrapedAt | string | ISO-8601 UTC timestamp |
error | string | Error reason if this profile failed; null on success |
List mode output
One row per entry in the ranking list. Example:
{"rank": 1,"username": "cristiano","displayName": "Cristiano Ronaldo","channelId": "FP-cristiano","platform": "instagram","channelUrl": "https://socialblade.com/instagram/user/cristiano","country": "PT","channelType": "Sports","subscribers": 665000000,"totalViews": 12000000000,"uploads": 3800,"createdDate": "2012-06-14","listUrl": "https://socialblade.com/instagram/lists/top/50/followers","scrapedAt": "2025-03-15T08:42:11.000000+00:00"}
| Field | Type | Description |
|---|---|---|
rank | integer | Position in the list |
username | string | Channel or account name |
displayName | string | Display name as shown on Social Blade |
channelId | string | Internal Social Blade channel ID |
platform | string | Platform inferred from the list URL |
channelUrl | string | Social Blade profile URL for this entry |
country | string | Country code on Social Blade |
channelType | string | Content category or channel type |
subscribers | integer | Subscriber or follower count |
totalViews | integer | Total view count |
uploads | integer | Total uploads or posts |
createdDate | string | Account creation date (YYYY-MM-DD) |
listUrl | string | The list URL that was scraped |
scrapedAt | string | ISO-8601 UTC timestamp |
Platforms supported
| Platform | Profile lookup | List pages |
|---|---|---|
| YouTube | Yes | Yes |
| TikTok | Yes | Yes |
| Twitch | Yes | Yes |
| Yes | Yes | |
| Yes | Yes |
More example inputs
Top 100 most-followed Instagram accounts:
{ "listUrl": "https://socialblade.com/instagram/lists/top/100/followers" }
Top 50 YouTube channels by subscribers globally:
{ "listUrl": "https://socialblade.com/youtube/lists/top/50/subscribers/all/global" }
Top YouTube entertainment channels in the US:
{ "listUrl": "https://socialblade.com/youtube/lists/top/50/subscribers/entertainment/US" }
Batch of Twitch streamers:
{"usernames": ["ninja", "shroud", "xQc", "Pokimane", "summit1g"],"platform": "twitch"}
Compare three Instagram accounts:
{"usernames": ["cristiano", "kyliejenner", "selenagomez"],"platform": "instagram"}
How it works
- You provide usernames, a platform, or a Social Blade list URL.
- The actor builds the correct Social Blade page URL for each target.
- Each page is fetched reliably — anti-bot protection is handled automatically.
- The HTML is parsed to extract grades, counts, earnings, and growth figures.
- Results land in your Apify dataset, one clean row per channel or list entry.
- If one profile fails (e.g. private or not found), it is recorded with an
errorfield and the run continues.
Integrations
Connect the Social Blade Scraper to other tools using Apify integrations:
- Google Sheets — push results directly to a spreadsheet for reporting
- Make / Zapier — trigger workflows when new data arrives
- Slack — get notified when a scheduled run completes
- Webhooks — send data to any endpoint the moment results are ready
- Airbyte / data warehouses — pipe Social Blade data into your analytics stack
Use cases
- Influencer marketing: rank candidates by grade, subscriber count, and monthly growth before outreach
- Agency reporting: pull weekly stats for all managed channels in one scheduled run
- Trend research: monitor which niches are growing fastest using list scrapes
- Creator economy analysis: track estimated earnings ranges across verticals
- Brand safety checks: verify channel grade and growth trajectory before partnership
- Academic research: collect longitudinal social media growth data at scale
FAQ
Which platforms does this actor support?
YouTube, TikTok, Twitch, Facebook, and Instagram. Use the platform field in Profile mode or let List mode infer the platform from the URL.
How many channels can I scrape in one run?
Up to 1,000 per run using the maxItems limit. For larger datasets, split the username list across multiple runs or chain them using the Apify API.
What is a Social Blade grade? Social Blade assigns letter grades (A++, A+, A, B+, B, C+, C, D+, D, F) based on subscriber count, growth rate, and engagement. A++ is the top tier.
Does the actor handle channels that are not found on Social Blade?
Yes. If a channel does not exist on Social Blade, the result row contains "error": "Page not found" and the run continues with the remaining channels.
Can I scrape country-specific or niche-specific ranking lists? Yes. Social Blade list URLs support country codes and content categories. Examples:
socialblade.com/youtube/lists/top/50/subscribers/entertainment/US— US entertainmentsocialblade.com/youtube/lists/top/50/subscribers/all/AL— Albania, all categories
How fresh is the data? Data reflects whatever Social Blade shows at the time of the run. For up-to-date tracking, schedule the actor to run daily or weekly from the Apify console.
What happens if a request fails? The actor retries gracefully and records a clean error message in the dataset row. It never crashes the entire run because of a single failed profile.