Twitch Stats Tracker — Top Games, Live Streams & Channel Growth
Pricing
from $1.60 / 1,000 channels
Twitch Stats Tracker — Top Games, Live Streams & Channel Growth
Twitch stats with growth: the top 100 games with rank and viewer changes, the biggest live streams (by game or language), and channel followers, live status and viewers. Run it again or on a schedule to get followers per day and rank changes since the last run. No login, no API key.
Pricing
from $1.60 / 1,000 channels
Rating
0.0
(0)
Developer
Northbell
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
Twitch Stats Tracker
Give it Twitch channels (logins or URLs), or ask for the top games or the biggest live streams, and get one clean row per item: followers, live status, viewers and game for a channel, rank, viewers and followers for a game, viewers, title, game, language and start time for a stream. $2.00 per 1,000 channels, $0.50 per 1,000 games or streams, no login, no API key.
Run it again — or put it on a daily schedule — and every channel and game row also tells you what changed since the last run: followers gained and followers per day for a channel, rank change and viewer change for a game. Twitch only shows you today's numbers; the history comes from your own runs.
What you get
Every row has type (channel, game, stream or error) and observedAt.
Channels ("mode": "channels")
| Field | What it is |
|---|---|
login, displayName, channelId, url | the channel; input repeats what you typed for it |
followers | exact follower count (Twitch does not round it) |
isLive, streamType, viewers, streamTitle, game, tags, streamStartedAt, uptimeMinutes | the current broadcast; null when the channel is offline |
lastBroadcastAt, lastBroadcastTitle, lastBroadcastGame | the most recent broadcast that started (also while offline) |
description, language, createdAt, isPartner, isAffiliate | the channel bio (emails and phone numbers removed), its language setting, when it was created and its status |
previousFollowers, followersChange, followersPerDay, hoursSinceLastRun | the change since your previous run (null on the first run) |
firstSeenAt, observations, growthNote | when this Actor first read the channel, how many times, and a one-line explanation of the growth figures |
Top games ("mode": "topGames")
| Field | What it is |
|---|---|
rank, name, gameId, url | the game (category), in order of live viewers |
viewers, broadcasters | people watching it right now, and channels streaming it |
followers, tags | people following the category, and Twitch's content tags (FPS, IRL…) |
previousRank, rankChange, isNew | rank at the previous run; places moved (positive = moved up); true when it was not in the previous top 100 |
previousViewers, viewersChange, followersChange, hoursSinceLastRun | the change since your previous run |
Live streams ("mode": "liveStreams")
| Field | What it is |
|---|---|
rank, viewers, streamId | position by current viewers, the viewers, and Twitch's id for this broadcast |
login, displayName, url, followers | the channel and its follower count |
title, game, language, tags, streamType | what the stream says it is (title with emails and phone numbers removed); streamType is live for a normal broadcast and rerun for a replay |
startedAt, uptimeMinutes | when it went live and for how long |
Use it for
- Streamer, sponsor and esports research — compare channels by real momentum (followers per day), not just the total
- Game and publisher tracking — see which categories are climbing and which are falling, day by day
- Market snapshots — the biggest streams right now, by game or language, as data you can chart or store
- Your own channels and clients — a follower log with history you own, exportable to Sheets or your BI tool
Input
{ "mode": "channels", "channels": ["riotgames", "https://www.twitch.tv/twitchgaming"] }
{ "mode": "topGames", "maxItems": 100 }
{ "mode": "liveStreams", "game": "Just Chatting", "language": "JA", "maxItems": 30 }
Growth is remembered in a named key-value store in your Apify account (per channel, and one top-games list), so the second run of the same Actor already shows changes. Schedule it (Apify → Schedules) for a daily history.
Pricing
$2.00 per 1,000 channels and $0.50 per 1,000 games or streams, plus $0.01 per run. Error rows (unknown channels, a list Twitch would not give, a note that nothing is live for your filter) are free. The $0.01 run-start fee is the one charge every run pays, even one that returns nothing. Put all your channels in one run and you pay it once.
Notes
- Public data only: what anyone sees on twitch.tv without signing in. No chat, viewer, follower or subscriber names are read, and emails and phone numbers are removed from bios and stream titles.
- Followers are exact, so
followersPerDayis measured over the time since your previous run. If that was under an hour ago,followersChangeis still given butfollowersPerDaystaysnull. - Live fields (
viewers,streamTitle,game,tags,streamStartedAt,uptimeMinutes) are filled only while the channel is live.lastBroadcast*isnullfor a channel that has never streamed.tagsof a game can be empty. - Twitch's limits without a login: the top-games list has 100 entries, and one list of streams has 30. Asking for more than 30 streams makes the Actor merge several lists — the top 30 of each of the 100 biggest games (or, for one game, the top 30 per language) — and it stops once no unread game could hold a bigger stream. A small stream in a small category can still be missing, so past the first 30 the ranks are among the streams found. These runs take longer (about 40 seconds for 150 streams). With both a game and a language, one list is all Twitch gives: up to 30 streams. If the merging is cut short (Twitch busy), you get the streams read so far plus a free error row that says so.
languagefilters on the language the broadcaster has set, so a stream's ownlanguagefield can differ.- Viewer numbers are the live count at the moment of the run and change every minute; schedule runs at the same time of day when you compare days.
- A login that does not exist on Twitch (a typo, or a channel that was renamed) comes back as a free error row. So do the cases where a list ends short for a known reason: channels beyond Maximum items (default 100), more games than Twitch lists (100), a game plus language list (30 at most), and a game or language with nobody live right now.
rankof a game is its position byviewersat the moment of the run (Twitch's own list order lags the live counts a little, so the Actor sorts by the viewers column). Viewers and ranks near the bottom of the list move a few places between two runs minutes apart.
To track YouTube channels the same way (exact views per day, new videos, subscriber change), see YouTube Channel Stats & Growth Tracker. To find channels by keyword, see YouTube Channel Finder.
For AI agents
{"mode": "channels", "channels": ["riotgames"]} returns one channel row with followers, live status and growth since the last run. {"mode": "topGames", "maxItems": 10} returns the 10 biggest games with rankChange. {"mode": "liveStreams", "game": "Minecraft", "maxItems": 20} returns the 20 biggest live streams of that game. Rows have type: channel, game, stream or error.