TwitchTracker Analytics Scraper
Pricing
from $3.00 / 1,000 results
TwitchTracker Analytics Scraper
Scrape TwitchTracker.com channel analytics, category/game stats, top-streamer and top-subscriber leaderboards, top-games rankings, per-language Twitch statistics, and site-wide Twitch statistics. No login, no cookies, no proxy required.
Pricing
from $3.00 / 1,000 results
Rating
0.0
(0)
Developer
Crawler Bros
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
10 days ago
Last modified
Categories
Share
Scrape TwitchTracker.com — the most popular independent Twitch analytics tracker. Look up any Twitch channel's rank, average/peak viewers, hours watched, followers gained and subscriber counts; get the same 30-day analytics for any game or category; browse the top-streamer and top-games leaderboards; or pull aggregate live/7-day statistics for any of 35 stream languages. No login, no cookies, no proxy required.
What this actor does
- Seven modes:
channel,game,topStreamers,topGames,topSubscribers,language,siteStatistics - Channel analytics: rank, average/peak viewers, hours watched, followers gained (30 days), total followers, current/paid/gifted active subscribers, all-time high subscribers, partner/affiliate status
- Game/category analytics: average viewers, average channels, rank, hours watched — by name or numeric Twitch category ID
- Leaderboards: top streamers (8 sort orders, 35 language filters, personality/esports category filter), top games, and top subscribers (current or all-time peak), with pagination
- Language stats: live viewers, 7-day average viewers/channels, top live streams and top channels for any tracked language
- Empty fields are omitted — every field in the output is real data; nothing is ever a placeholder
Output: per-channel (mode = channel)
channelName,displayNamechannelId— TwitchTracker's internal channel IDavatarUrl,bannerUrllanguage,createdAt— Twitch account creation datepartnerStatus—PartnerorAffiliate(omitted if neither)rank— TwitchTracker's algorithmic rank based on the trailing 30 daysavgViewers,maxViewers,minutesStreamed,hoursStreamed,hoursWatchedfollowersGained30d— can be negative if unfollows outpaced new followsfollowersTotalcurrentActiveSubs,paidActiveSubs,giftedActiveSubs,allTimeHighActiveSubstwitchUrl,sourceUrlrecordType: "channel",scrapedAt
Channels with no streaming activity in the last 30 days (e.g. retired streamers) will be missing the
rank/avgViewers/hoursWatched/followers*fields — the record still includes every profile field (subs, language, avatar, etc.) that TwitchTracker can populate.
Output: per-game (mode = game)
gameId(when looked up by numeric ID) orgameName(when looked up by name)avgViewers,avgChannels,rank,hoursWatched— trailing 30 daystwitchCategoryUrl— Twitch's own category directory page (only when the game was looked up by name)sourceUrlrecordType: "game",scrapedAt
Output: per-streamer row (mode = topStreamers)
channelName,displayName,avatarUrlrank— overall algorithmic rank;sortPosition— position within the requested sort orderavgViewers,timeStreamedHours,allTimePeakViewers,hoursWatched,followersGained30d,followersTotal,totalViewscurrentGame,liveViewers,gameSharePercent,viewershipSharePercent— only present whensortBy: live(a real-time snapshot instead of the 30-day leaderboard)leaderboardSort,languageFilter,categoryFilter— the filters actually applied to this rowtwitchUrl,sourceUrlrecordType: "streamer",scrapedAt
Output: per-game row (mode = topGames)
rank,gameId(omitted for Twitch's uncategorized "Variety" bucket),gameName,boxArtUrlavgViewers,weeklyChangePercent(signed — negative means viewership dropped),twitchSharePercenttwitchCategoryUrl,sourceUrlrecordType: "game",scrapedAt
Output: per-channel row (mode = topSubscribers)
rank,channelName,displayName,avatarUrlcurrentActiveSubs,paidActiveSubs,primeActiveSubs,giftedActiveSubs,tier1ActiveSubs,tier2ActiveSubs,tier3ActiveSubs— only whensubSortBy: current(the default)allTimePeakActiveSubs,achievementDate,currentActiveSubs,isActiveStreamer— only whensubSortBy: allTimesubscriberSort,languageFilter(current only — TwitchTracker doesn't support combining the all-time leaderboard with a language filter)twitchUrl,sourceUrlrecordType: "subscriberLeaderboard",scrapedAt
Output: per-language aggregate (mode = language)
languageliveViewers,avgViewers7d,liveChannels,avgChannels7dtopLiveStreams[]— up to 10 entries:channelName,displayName,avatarUrl,viewers,twitchUrltopChannelsByViewership[]— up to 10 entries with the same shapesourceUrlrecordType: "language",scrapedAt
Output: site-wide statistics (mode = siteStatistics)
One record per run, shaped by the requested statCategory:
statCategory— the category that was fetchedoverview:liveViewers,avgViewers7d,liveChannels,avgChannels7dviewers:liveViewers,avgViewers24h,avgViewers7d,allTimePeakViewers,allTimePeakViewersDatechannels:liveChannels,avgChannels24h,avgChannels7d,allTimePeakChannels,allTimePeakChannelsDategames:liveGames,gamesStreamedPastWeekactiveStreamers:totalStreamersThisMonth,allTimePeakStreamers,allTimePeakStreamersDate,avgActiveStreamersDaily,activeStreamersYesterdaystreamTime:totalStreamHoursThisMonth,allTimePeakStreamHours,allTimePeakStreamHoursDate,avgStreamHoursDaily,streamHoursYesterdaywatchTime:totalWatchHoursThisMonth,allTimePeakWatchHours,allTimePeakWatchHoursDate,avgWatchHoursDaily,watchHoursYesterdaysourceUrlrecordType: "siteStatistics",scrapedAt
Input
| Field | Type | Default | Description |
|---|---|---|---|
mode | select | topStreamers | topStreamers / channel / game / topGames / topSubscribers / language / siteStatistics |
channelNames | array | – | Twitch usernames to look up (mode=channel) |
gameNames | array | – | Game/category names or numeric Twitch category IDs (mode=game) |
sortBy | select | ranking | Leaderboard sort (mode=topStreamers): ranking, viewership, peak-viewers, hours-watched, followers-growth, most-followers, most-views, live |
subSortBy | select | current | Subscriber leaderboard type (mode=topSubscribers): current or allTime |
language | select | any | Optional filter for mode=topStreamers/topSubscribers (current only); the language to fetch for mode=language (35 languages) |
category | select | any | Optional channel category filter for mode=topStreamers: personality or esports |
statCategory | select | overview | Site-wide statistics page (mode=siteStatistics): overview, viewers, channels, games, activeStreamers, streamTime, watchTime |
maxItems | int | 20 | Hard cap on emitted records (1–500) |
Example: look up specific channels
{"mode": "channel","channelNames": ["kaicenat", "shroud", "hasanabi"]}
Example: look up a game by name or ID
{"mode": "game","gameNames": ["Just Chatting", "League of Legends", "509658"]}
Example: top German esports streamers by peak viewers
{"mode": "topStreamers","sortBy": "peak-viewers","language": "german","category": "esports","maxItems": 50}
Example: top games leaderboard
{"mode": "topGames","maxItems": 100}
Example: top subscriber counts (current)
{"mode": "topSubscribers","subSortBy": "current","maxItems": 50}
Example: all-time peak subscriber counts
{"mode": "topSubscribers","subSortBy": "allTime","maxItems": 50}
Example: Korean-language Twitch statistics
{"mode": "language","language": "korean"}
Example: site-wide watch-time statistics
{"mode": "siteStatistics","statCategory": "watchTime"}
Use cases
- Influencer/creator analytics — benchmark a streamer's viewership, growth, and subscriber trends
- Esports & agency scouting — find rising or top-ranked streamers by category and language
- Market research — track which games are gaining or losing Twitch viewership week over week
- Localization strategy — see which languages/regions have the most active Twitch audiences
- Competitive intelligence — compare average viewers, peak viewers, and follower growth across channels
- Content calendars — identify the best-performing games and streamers to inform sponsorship decisions
Limitations
TwitchTracker's /clips (curated clip gallery) page renders its grid entirely from a client-side data blob (there's no server-rendered clip data or documented API for it), so it isn't exposed as a mode. The /statistics/* pages' historical trend charts are similarly client-rendered from a proprietary compressed blob and aren't exposed, but their static top-line current/24h/7-day/all-time figures are — via mode: siteStatistics. Every other tabular/JSON-backed surface on the site (channel profiles, game/category summaries, the 8 top-streamer leaderboard sorts, top games, current + all-time subscriber leaderboards, per-language aggregate stats, and site-wide statistics) is fully supported.
FAQ
What is TwitchTracker? An independent, long-running analytics site that tracks Twitch channel and game statistics going back years, including historical rank, viewership, and subscriber trends not exposed by Twitch itself.
Why do some channels have fewer fields than others? TwitchTracker's 30-day analytics (rank, average/peak viewers, hours watched, followers gained) require the channel to have streamed within the last 30 days. Inactive channels still return every profile field TwitchTracker can populate (subscriber counts, language, avatar, account creation date, partner status).
Why can followersGained30d be negative? It's the net follower change over the trailing 30 days — new followers minus unfollows. Large or declining channels can show a negative number.
What's the difference between rank and sortPosition on a topStreamers row? rank is TwitchTracker's overall algorithmic rank across all of Twitch. sortPosition is the row's position within whichever leaderboard you requested via sortBy — these differ whenever sortBy isn't ranking.
Why do sortBy: live rows look different from the others? The live leaderboard is a real-time snapshot of who's currently streaming (current game, live viewer count, share of that game's viewers), not a 30-day aggregate — so fields like hoursWatched and followersGained30d don't apply and are omitted.
Can I combine language and category filters on the leaderboard? Yes for most sort orders. The live sort order only supports one filter at a time; if both are supplied, the actor automatically drops the category filter and reports which filter was actually applied on each record via languageFilter/categoryFilter.
Do I need to know a game's numeric Twitch category ID? No — gameNames accepts either the human-readable name (e.g. Just Chatting) or the numeric ID (e.g. 509658); both resolve to the same analytics.
How fresh is the data? TwitchTracker recalculates its 30-day and 7-day rolling statistics daily; leaderboards and live snapshots reflect current data at the time of the run.
What's the difference between subSortBy: current and allTime on topSubscribers? current ranks channels by their active subscriber count right now (with a breakdown of paid/prime/gifted/tier splits); allTime ranks channels by the highest active-subscriber count they've ever reached, along with the month that peak happened and whether the channel is still active. TwitchTracker doesn't support combining allTime with a language filter, so language is ignored (and never included on the record) when subSortBy: allTime.
Is a proxy or login required? No. The actor reads TwitchTracker's publicly accessible pages and JSON endpoints directly — no authentication, cookies, or paid proxy needed.
Is this affiliated with TwitchTracker or Twitch? No, this is a third-party actor using TwitchTracker's publicly accessible pages and endpoints. It is not affiliated with, endorsed by, or sponsored by TwitchTracker or Twitch.
What does mode: siteStatistics give me that topStreamers/topGames don't? It's Twitch-wide, not per-channel or per-game: total live viewers/channels right now, 24-hour/7-day averages, all-time peaks (with the date/month they happened), and month-to-date totals for streamers, stream hours, and watch hours. Use it to track overall platform trends rather than any single channel or game.