Social Blade Scraper — YouTube, TikTok, Instagram, Twitch Stats avatar

Social Blade Scraper — YouTube, TikTok, Instagram, Twitch Stats

Pricing

from $12.70 / 1,000 user search + profile lookups

Go to Apify Store
Social Blade Scraper — YouTube, TikTok, Instagram, Twitch Stats

Social Blade Scraper — YouTube, TikTok, Instagram, Twitch Stats

Scrape Social Blade stats for YouTube, TikTok, Instagram and Twitch creators: subscribers or followers, views, uploads, engagement, SB grade and ranks, about a month of daily history, and 1-365 day growth deltas. One row per creator, no login or API key needed.

Pricing

from $12.70 / 1,000 user search + profile lookups

Rating

0.0

(0)

Developer

R.L.

R.L.

Maintained by Community

Actor stats

0

Bookmarked

145

Total users

56

Monthly active users

4 days ago

Last modified

Share

Social Blade Scraper — YouTube, TikTok, Instagram & Twitch Stats

Pull Social Blade statistics for any creator without an account, an API key, or a browser. This Actor talks directly to Social Blade's live backend and returns clean, structured JSON for YouTube, TikTok, Instagram and Twitch — including profile summaries, daily historical data, and multi-window growth deltas.

One batched request per creator fetches the profile, ~30 days of history and the growth section together — the same trick the official Social Blade mobile app uses.

What can you scrape from Social Blade?

Result typeWhat you getAccepts
Profile (recommended)Resolves a handle, then returns profile + daily history + growth in a single batched call.handle, ID or URL
SearchSocial Blade's top matches for a term — 6 on YouTube, 5 on TikTok (measured), with no paging. Use it to find an account's ID, not to enumerate a niche.search term
UserProfile / summary stats only (avatar, country, ranks, totals, grade…).platform ID only
HistoryDaily historical data points — about 31 days, which is all Social Blade serves anonymously.platform ID only
GrowthMulti-window growth deltas (3–365 days).platform ID only

What can I paste, and what gets refused? A handle, a platform ID, a profile URL on youtube.com, tiktok.com, instagram.com, twitch.tv (subdomains included, so m.youtube.com and music.youtube.com work) or a socialblade.com account URL. The account is taken from the start of the path, so tiktok.com/@khaby.lame/video/7123… and twitch.tv/ninja/clips both resolve to the account.

Refused, with a message naming the reason and charged nothing: a share link (youtu.be/…, vm.tiktok.com/…) because it names a video or a redirect code rather than an account; a video, post or listing page (youtube.com/watch?v=…, instagram.com/p/…, twitch.tv/videos/…); and any other host, including lookalikes such as youtube.com.evil.example. Nothing is guessed from an unrecognised URL — it used to become a handle built from the last path segment, which turned a pasted TikTok share link into a YouTube lookup.

How far back does history go? About 31 days. Measured 2026-10-21, one run per rung: historyLimit 10 returned 10 rows and 30 returned 30, while 32, 60, 120 and 365 all returned 31 — identically on YouTube, TikTok and Twitch. That is Social Blade's retention for anonymous callers, and nothing in its response says it truncated, so a run that asks for more says so in its status message. Growth deltas are not affected: those windows really do run 1, 3, 7, 14, 30, 60, 90, 180 and 365 days plus year-to-date.

user, history and growth require a resolved platform ID (e.g. a YouTube channel ID UCX6OQ3DkcsbYNE6H8uQQuVA, not the handle mrbeast) — a handle or URL returns an error. Only profile and search accept handles/URLs. To get history or growth from a handle, use profile (which resolves the handle first, then fetches both); you can pick exactly the layers you want with mode (see the mode table). To find an account's ID, run a search first — the id field of each result is what these modes expect.

Which platforms and fields are covered?

PlatformHeadline count fieldDaily historyGrowth deltasID format the user/history/growth modes need
YouTubesubscribersyesyeschannel ID, e.g. UCX6OQ3DkcsbYNE6H8uQQuVA
TikTokfollowersyesyesthe id from a search result (a numeric string)
Instagramfollowersgated by Social Bladegated by Social Bladethe id from a search result (a numeric string)
Twitchfollowersyesyesthe id from a search result

Every platform fills id, displayName, username, sbGrade, avatar and rankSb. The rest differ, because Social Blade publishes different things per platform — measured 2026-10-21 over 42 live accounts (12 YouTube, 10 TikTok, 10 Instagram, 10 Twitch):

ColumnYouTubeTikTokInstagramTwitch
subscribers✅
followers✅✅✅
views✅
likes✅
uploads✅✅✅
following✅✅
verified✅✅
engagementRate, averageLikes, averageComments✅
category, madeForKids✅
countryusually — 10/12
createdAt✅about half✅
socials✅
RanksrankSubscribers, rankViews, rankCategory, rankCountry (10/12)rankFollowers, rankLikes, rankVideosrankFollowers, rankEngagementRate (9/10)rankFollowers

A blank cell is an honest null, not a missing column: the column set is the same for every row of a given mode, so an export never changes shape between accounts.

createdAt is null on about half of TikTok accounts. Social Blade answers with a 1970 epoch artifact for some of them (measured: 1970-12-11 for khaby.lame, 1970-07-04 for zachking, both of whom joined after 2015), so the Actor drops any date earlier than 2000 rather than shipping an account age that is wrong by half a century. Of 10 TikTok accounts measured, 2 were artifacts dropped this way, 3 were null at the source, and 5 carried real dates (2018–2019) and kept them. YouTube (12/12) and Twitch (10/10) are correct to the day.

statsHidden has not been seen true yet. It is false on every Twitch account measured and null elsewhere, so treat it as "Twitch tells us, the others do not" until an account with withheld counts turns up — across 42 accounts, none did.

(Social Blade removed Twitter/X data, so it is not available. Facebook is not covered by this Actor.)

Instagram history & growth are gated by Social Blade. Social Blade only serves Instagram's daily-history and growth sections to logged-in/premium accounts (its public backend answers 401 UNAUTHORIZED). For Instagram, profile runs still return the full profile summary, but the history/growth fields come back null — and you are not charged for a section that wasn't delivered. YouTube, TikTok and Twitch are unaffected.

Why use this Social Blade scraper?

  • No login, no API key. Works against Social Blade's public web backend.
  • Multi-platform in one Actor. Switch between YouTube, TikTok, Instagram and Twitch with a single input field — or mix them in one run by pasting profile URLs.
  • Accepts what identifies an account. Handles (mrbeast), platform IDs, profile URLs (https://youtube.com/@PewDiePie, https://m.youtube.com/@MrBeast, https://tiktok.com/@khaby.lame/video/7123… — the account is read out of the path) and Social Blade URLs all work, and the platform is detected from the URL. A link that names a video or a host the Actor does not read is refused by name instead of being guessed at.
  • Batched profile lookups. Profile mode pulls summary + history + growth in one request, so you spend fewer proxy hits and finish faster.
  • Headline fields surfaced. SB grade, ranks, country, category, total views/uploads, engagement, linked socials and multi-window growth are named top-level columns rather than a nested blob to parse — so they export to CSV and filter in a spreadsheet.
  • Beats Cloudflare without a browser. Social Blade JA3-fingerprints the TLS handshake, so plain Python HTTP clients get a 403 "Just a moment" page. The Actor impersonates a real Chrome TLS/HTTP2 fingerprint (via curl_cffi) and retries with a fresh proxy IP on any remaining challenge — no slow headless browser needed.

How does it compare to the other Social Blade Actors?

Drawn from each Actor's own store listing on 2026-09-27; pricing and features change, so check their pages before deciding.

This Actorradeance/socialblade-apiparseforge/socialblade-scraper
PlatformsYouTube, TikTok, Instagram, Twitchthose four + Facebookthose four + Facebook
Look up one creator by handle / ID / URLyesyesprofile pages and top lists
Daily history time-series (~31 days)yes (Instagram gated)subscriber growth statsnot listed
Multi-window growth deltas (3–365 d)yes (Instagram gated)subscriber growthnot listed
Top-100 / leaderboard listsnoyesyes
Estimated earningsnoyesnot listed
SB grade, ranks, socialsyesyesrank, counts, country
Mixed-platform URLs in one runyes——
Pricing modelpay-per-event, no subscriptionsee its pricing tab (it changed model in 2026)per result

Pick a different Actor if you need Facebook data, Social Blade's Top-100 leaderboards, or estimated-earnings figures — this Actor does none of those. Pick this one if you already know which creators you care about and want their full profile, daily history and growth deltas per creator, with no subscription.

How much does a Social Blade lookup cost?

This Actor uses pay-per-event pricing — no monthly subscription. You only pay for the data you actually receive (failed/empty queries are never charged). The live per-event prices, which vary by your Apify plan, are on the Actor's store page and in the cost estimate shown before you start a run — they are not repeated here, so this page cannot disagree with what you are actually billed.

EventCharged when
User search + profile lookupA search, user, or profile query returns its profile/summary data.
Historical dataA daily history time-series is returned (in history or profile mode).
Growth dataA multi-window growth section is returned (in growth or profile mode).

Pick your layers with mode. The three layers are charged separately, so asking for only the layers you need is the cheapest way to run this Actor — and the two add-on layers are priced below the base lookup, so depth costs less than three separate queries:

modeWhat you getEvents charged
profileStats snapshot onlyprofile lookup
historyDaily history rows onlyhistorical data
growthMulti-window growth onlygrowth data
profile-historySnapshot + daily historyprofile lookup + historical data
profile-growthSnapshot + growth windowsprofile lookup + growth data
allSnapshot + history + growthall three
searchAccount search resultsprofile lookup
userProfile summary only, by platform IDprofile lookup

Platform coverage (verified 2026-10-06):

Platformprofilehistorygrowth
YouTube✅✅✅
TikTok✅✅✅
Twitch✅✅✅
Instagram✅❌❌

Social Blade's API answers 401 UNAUTHORIZED for Instagram history and growth, so those modes stop with an explanatory message and charge nothing; profile-history / profile-growth / all on Instagram deliver and charge the profile layer only.

history and growth are standalone: give them a handle or a profile URL and the Actor resolves the platform ID for you, at no extra charge — you pay for the one layer you asked for. Previously those modes rejected anything that was not already a platform ID.

If you are migrating: the old default (resultType: "profile" with includeHistory and includeGrowth both true) charged all three layers for a request most people make to get a snapshot. That combination is now mode: "all", and mode: "profile" gives the snapshot alone and charges one layer instead of three. Saved tasks that set the old inputs keep working exactly as before.

Platform usage (compute, Apify Proxy, data transfer) is absorbed by this Actor, not billed to you on top of the events above.

What input does it take?

FieldTypeDefaultDescription
platformstringyoutubeyoutube, tiktok, instagram or twitch.
queriesarray of strings—Handles / IDs / profile URLs (or search terms for search). Every mode accepts a handle or URL — history and growth resolve the platform ID themselves at no extra charge. Required.
modestringprofileWhich data layers to fetch — see the mode table above. One of profile, history, growth, profile-history, profile-growth, all, search, user.
resultTypestringprofileDeprecated — use mode. Honoured only when mode is left empty, so saved tasks are unaffected.
includeHistorybooleantrueDeprecated — use mode (profile-history / all). Honoured only when mode is left empty.
includeGrowthbooleantrueDeprecated — use mode (profile-growth / all). Honoured only when mode is left empty.
historyLimitinteger30Daily data points for history / profile. Values above ~31 are accepted but return ~31 rows — see the note under Result types.
maxConcurrencyinteger5Queries processed in parallel (1–50).
maxRetriesinteger6Retries (with IP rotation) per request when Cloudflare challenges (1–20).
proxyConfigurationobjectResidential Apify ProxyProxy settings. Residential is the default; datacenter IPs get hard-blocked by Cloudflare under load.

Example input

{
"platform": "youtube",
"queries": ["mrbeast", "pewdiepie"],
"resultType": "profile",
"historyLimit": 30,
"maxConcurrency": 5,
"proxyConfiguration": { "useApifyProxy": true }
}

What does each row contain?

One record is pushed to the dataset per query. Example (profile, abbreviated):

{
"platform": "youtube",
"resultType": "profile",
"query": "mrbeast",
"id": "UCX6OQ3DkcsbYNE6H8uQQuVA",
"displayName": "MrBeast",
"username": "mrbeast",
"verified": null,
"subscribers": 502000000,
"followers": null,
"views": 130065447496,
"likes": null,
"uploads": 988,
"following": null,
"sbGrade": "A++",
"country": "US",
"category": "entertainment",
"madeForKids": false,
"statsHidden": null,
"createdAt": "2012-02-20T00:00:00.000Z",
"socials": [ "https://instagram.com/mrbeast", "https://x.com/MrBeast" ],
"avatar": "https://yt3.ggpht.com/...",
"rankSb": 13,
"rankSubscribers": 1,
"rankViews": 12,
"rankCountry": 1,
"rankCategory": 1,
"scrapedAt": "2026-06-19T12:00:00+00:00",
"history": [ { "date": "2026-06-18T00:00:00.000Z", "subscribers": 501000000, "views": 129900000000, "videos": 987 } ],
"growth": {
"subscribers": { "3d": 1000000, "7d": 3000000, "30d": 15000000, "90d": 30000000, "365d": 96000000 },
"views": { "3d": 509488425, "30d": 6576018368, "365d": 43252485950 },
"videos": { "3d": 1, "30d": 7, "365d": 111 }
}
}

growth groups subscriber, view and upload deltas by metric, each keyed by the day-window Social Blade returned it for (from 1d up to 365d, plus ytd); history is the daily time-series. Pick the sections with mode — profile for neither, profile-history, profile-growth or all.

The column set belongs to the mode, not to the account. Every row of a run carries exactly the columns its mode can fill, with an explicit null where Social Blade publishes nothing — so row["displayName"] is a null rather than a missing key, and a CSV keeps one shape for the whole run. A history run therefore carries the six identity columns plus history, and not the profile summary it could never fill. The dataset has one view per mode (Profile, Daily history, Growth, Search results) so the Console shows the columns that mode actually uses.

A search record contains a results array; failed queries carry an error string instead of data (the run continues — one bad query never aborts the batch) and are never charged.

Breaking change, 2026-10-21. Three output fields changed shape, so update any workflow that reads them:

wasnow
user — the whole upstream profile object, verbatimremoved. Every scalar worth having is a named column; likes, following, verified, engagementRate, averageLikes, averageComments and statsHidden are new ones lifted out of it. Dropped with it: banner, description, website, secUid, identifiers, stats, hasAuthed, disabled, status.
ranks — an object keyed per metricrankSb, rankSubscribers, rankFollowers, rankViews, rankVideos, rankLikes, rankEngagementRate, rankCountry, rankCategory — one scalar column each, so they export and filter.
socials — a list of {url, title, favicon} objectsa list of URL strings. The title was UI chrome ("Follow") and the favicon a tracking URL.

It was half a YouTube row by weight, it restated the same counts in a stats sub-object as strings, and an upstream shape change altered the output with nobody touching a mapping. If you need a field that went with it, open an issue — it is a one-line addition.

What do Social Blade's metrics actually mean?

  • SB grade (sbGrade) — Social Blade's own letter grade for an account (A++, B, and so on). It is Social Blade's editorial summary of how the account is doing, not a figure YouTube or TikTok publishes; the Actor passes it through unchanged.
  • Ranks (rank…) — position in Social Blade's league tables: rankSb is the overall SB rank, rankSubscribers / rankFollowers / rankViews / rankLikes / rankVideos / rankEngagementRate rank by those totals, and rankCountry / rankCategory rank the account within its own country and content category. Rank 1 is the top.
  • Growth deltas vs. projections — the growth section is historical: how much a metric changed over the last 3, 7, … 365 days. These are measured differences between two past snapshots, not a forecast of future subscribers. If you want a projection, fit it yourself from history.
  • Daily history (history) — one data point per day, each carrying that day's cumulative totals rather than that day's gain. The keys differ by platform (measured): YouTube date, subscribers, views, videos; TikTok date, followers, following, likes, videos; Twitch date, followers. Growth is the opposite — the same windows on every platform, with only the metric set differing. Day-over-day change is the difference between two consecutive points. historyLimit sets how many days you ask for; Social Blade serves about 31 to anonymous callers, and a run that asks for more says so in its status message.
  • Stats hidden (statsHidden) — whether Social Blade is withholding this account's counts. It separates "this creator has no views" from "we are not shown them", which otherwise look identical.
  • Engagement (engagementRate, averageLikes, averageComments) — Instagram only. The rate is a fraction, so 0.02 is 2%.
  • Subscribers vs. followers — the same idea under two names. YouTube reports subscribers; TikTok, Instagram and Twitch report followers. The Actor keeps them in separate fields rather than merging them, so exactly one of the two is populated per row.
  • Handle vs. platform ID — a handle (mrbeast) is the name in the URL and can be changed by its owner; the platform ID (UCX6OQ3DkcsbYNE6H8uQQuVA) is permanent and is what the user mode needs (history and growth resolve a handle for you, at no extra charge). profile mode resolves one to the other for you.
  • Category (category) — Social Blade's content classification for the account (e.g. entertainment), which is also what the category rank is measured within.
  • Made for kids (madeForKids) — the "made for kids" audience flag as Social Blade reports it for a YouTube channel, passed through as a boolean (null where Social Blade has no value).

FAQ

Do I need a Social Blade account, login, or API key? No. The Actor calls the same public backend the Social Blade website uses, so there is no account, no premium subscription and no key to enter. The one exception is Instagram history and growth, which Social Blade itself serves only to logged-in premium accounts — those fields come back null and unbilled.

Can I schedule it to build a growth time-series? Yes — use Apify Schedules and it appends a fresh row per creator per run. A monthly schedule is enough to keep a continuous series, because one run already returns Social Blade's whole anonymous window (about 31 days) in a single call. Beyond that window, the scheduled runs are the archive: Social Blade does not serve older daily rows, so the series you keep is the one you collected.

What does one row contain? One creator per row for profile, user, history and growth: the summary fields as flat columns, the daily series under history and the per-metric deltas under growth. A search row instead holds a results array of matching accounts. Each mode emits only the columns it can fill, and the dataset carries one view per mode.

How is the cost bounded? Each event is charged only for a section actually delivered, so the worst case is three events per creator, in mode: "all"; a single-layer mode (profile, history or growth) charges one. Set Max total charge on the run and the Actor stops starting new queries once that cap is hit, and says in its status message how many queries it never attempted.

Why did search return nothing / only a handful? Social Blade's search returns its top matches — measured at 6 on YouTube and 5 on TikTok — and there is no paging, so it is a tool for finding an account's ID rather than for enumerating a niche. It also ignores very short or very common terms: measured 2026-10-21, a and the return nothing at all while vlog returns 6. An empty search is never charged, and the run's status message says which of the two happened.

Why do I get a Cloudflare challenge or a 403? Social Blade fingerprints the TLS handshake. The Actor already impersonates a real Chrome fingerprint and retries on a fresh IP up to maxRetries times, so the usual cause is the proxy: keep the default residential Apify Proxy, and lower maxConcurrency if challenges persist. Datacenter IPs work at low volume but get hard-blocked under concurrency.

What happens if one creator fails or does not exist? That row is written with an error field instead of data and the run carries on through the rest of the batch — one bad handle never aborts the job, and you are not charged for it.

Does it cover Facebook or Twitter/X? No. Social Blade dropped Twitter/X data entirely, and this Actor's platforms are YouTube, TikTok, Instagram and Twitch. If you need Facebook, use an Actor that lists it.

Can I get Social Blade's Top-100 lists or estimated earnings? No — this Actor is built for per-creator lookups by handle, ID or URL. Leaderboards and earnings estimates are not returned; another Social Blade Actor is the better fit for those.

Can I mix platforms in one run? Yes. Paste full profile URLs (https://tiktok.com/@khaby.lame, https://twitch.tv/pokimane) and the platform is detected per entry, overriding the platform field.

Tips and limits

  • Use residential proxy (the default). Residential IPs reliably succeed across all platforms; datacenter IPs work for low volume but get hard-blocked under concurrency.
  • profile is the cheapest way to get everything — prefer it over running user + history + growth separately.
  • Ask for the history you need. historyLimit accepts up to 365, but Social Blade serves about 31 days to anonymous callers, and fewer where it holds fewer — the run says so in its status message when it returns less than you asked for.
  • This Actor reads publicly available data from Social Blade. Respect Social Blade's terms and applicable laws; use the data responsibly.

How does it get past Cloudflare?

The Actor calls Social Blade's tRPC backend (https://socialblade.com/api/trpc) with GET requests — the same endpoints the website itself uses. Cloudflare fingerprints the TLS handshake, so the Actor uses curl_cffi to impersonate a real Chrome browser's TLS/HTTP2 fingerprint; this gets a normal JSON response without the cost of a headless browser. When a challenge page is still returned instead of JSON, the request is retried on a fresh proxy IP until it succeeds or maxRetries is exhausted.

n8n integration

Use the n8n-nodes-social-blade-lookup community node (source) to run this Actor directly from an n8n workflow.

Community research toolkit

Part of the Community research toolkit — research online communities and creators across forums, link-in-bio pages, and social platforms:

Did you find this useful?

Rate this actor on Apify! Your feedback helps other users find it and helps us keep improving it.