Twitch & Kick Scraper — Streams, Channels, Micro-Streamers
Pricing
from $1.75 / 1,000 channel profiles
Twitch & Kick Scraper — Streams, Channels, Micro-Streamers
Live channels and streams from Twitch and Kick in one schema: followers, viewers, category, language, tags and — on Kick — the streamer's social links. Sort by fewest viewers to find micro-streamers. No login or API key.
Pricing
from $1.75 / 1,000 channel profiles
Rating
0.0
(0)
Developer
Chorelet
Maintained by CommunityActor stats
0
Bookmarked
3
Total users
2
Monthly active users
3 days ago
Last modified
Categories
Share
Live channels and streams from Twitch and Kick in one schema: followers, viewers, category, language, tags, account age and — on Kick — the social links the streamer published. As JSON, CSV or Excel, or through the API.
Three ways in: browse a category's live channels, look up a list of channels by name, or search both platforms by keyword. No account, no API key, no proxy — everything comes from the endpoints the platforms' own web apps call.
Why this Actor
- Two platforms, one table. Twitch and Kick with identical fields, so a category sweep or a watchlist lands in a single spreadsheet instead of two.
- Finds the small channels. Sort by fewest viewers and cap followers, and the run returns streamers with 0–200 followers — the people sponsorship and affiliate programmes look for and ranked lists never show.
- Socials where they exist. Kick publishes Instagram, X, YouTube, TikTok and Discord for its streamers; those become links in the row. Twitch hides them from server-side clients and this Actor says so rather than shipping an empty promise.
- Cheap listings, paid profiles. A row that rides along with a category page costs a quarter of a row that needed its own profile lookup, so a wide sweep stays cheap.
Sample output
One item of the dataset (long values shortened):
{"platform": "twitch","channelName": "akaNemsko","followers": 380196,"isLive": true,"viewers": 2570,"streamCategory": "Just Chatting","language": "EN","channelUrl": "https://twitch.tv/akanemsko"}
What you get
- Both platforms, one row shape, with a
platformcolumn — no second tool for Kick - Micro-streamer discovery: sort a category by fewest viewers and cap the follower count to surface channels with 0–200 followers, the ones sponsorship and affiliate programmes actually want to find
- Kick socials: Instagram, X, YouTube, TikTok, Facebook and Discord, turned into links
- Follower counts, bio and account age for every channel found, with one profile lookup per channel
- Language filter that doubles as a way past Twitch's 100-row cap per category
- Monitored daily
Input
- Categories —
Just Chatting,Software and Game Development,Chess. Twitch reads the category's live channels; Kick has no public category listing, so its live feed is filtered by category name. - Channels — names or URLs on either platform.
- Search queries — keyword search across both.
- Sort live channels by — most viewers, fewest viewers (micro-streamers) or recently started.
- Languages, Minimum/Maximum followers, Minimum/Maximum viewers, Live channels only, Include channel details, Max results per target.
Limits and notes
- Twitch does not expose streamer socials to server-side clients. The field exists in its API but is behind an integrity check that a datacenter IP cannot pass, so
socialsis filled for Kick channels and empty for Twitch ones. This Actor will not pretend otherwise, and it does not try to defeat the check. - Twitch returns at most 100 live channels per category per request and blocks paging beyond that the same way. Add languages to widen a sweep: each language is a separate request with its own 100.
- Kick publishes no follower count in its live feed or search results — those rows get it from the profile lookup, which is why Include channel details is on by default.
viewersis a snapshot at the moment of the run; for a trend, schedule the Actor and keep the dataset.- Every bound (
minFollowers,maxViewers…) treats0as "no limit".
Input example
{"platforms": ["twitch","kick"],"categories": ["Just Chatting"],"sortBy": "viewers-desc","minFollowers": 0,"maxFollowers": 0,"minViewers": 0,"maxViewers": 0,"onlyLive": false,"includeChannelDetails": true,"maxResults": 50}
How much does it cost?
Pay per channel — no subscription, no minimum, no charge for platform usage.
| Volume | Price |
|---|---|
| 1,000 channels | $2.50 (+ $1.00 with stream) |
| 10,000 channels | $25.00 (+ $10.00 with stream) |
| 100,000 channels | $250.00 (+ $100.00 with stream) |
The Apify free plan includes $5 of usage every month — about 2,000 channels with this Actor, no card needed. Nothing else is charged: platform usage is included in the price, and Apify Bronze, Silver and Gold subscribers get 10%, 20% and 30% off these prices.
Use it from code, n8n, Make, Zapier or an AI agent
Run the Actor and download the dataset in one call (JSON by default; add &format=csv or xlsx):
curl -X POST "https://api.apify.com/v2/acts/chorelet~live-streams-scraper/run-sync-get-dataset-items?token=$APIFY_TOKEN" \-H "Content-Type: application/json" \-d '{"platforms": ["twitch", "kick"], "categories": ["Just Chatting"], "sortBy": "viewers-desc", "minFollowers": 0, "maxFollowers": 0, "minViewers": 0, "maxViewers": 0, "onlyLive": false, "includeChannelDetails": true, "maxResults": 50}'
Python:
from apify_client import ApifyClientclient = ApifyClient("YOUR_APIFY_TOKEN")run = client.actor("chorelet/live-streams-scraper").call(run_input={"platforms": ["twitch", "kick"], "categories": ["Just Chatting"], "sortBy": "viewers-desc", "minFollowers": 0, "maxFollowers": 0, "minViewers": 0, "maxViewers": 0, "onlyLive": false, "includeChannelDetails": true, "maxResults": 50})for item in client.dataset(run["defaultDatasetId"]).iterate_items():print(item)
- n8n, Make, Zapier — use the Apify node/module: run the Actor, then "get dataset items".
- Google Sheets, Slack, webhooks — add an integration on the run's Integrations tab.
- AI agents — the Actor is available as a tool through the Apify MCP server; the dataset schema describes every field for the model.
- Schedules — run it hourly, daily or weekly from the Schedules tab.
FAQ
Can I get Twitch streamers' social links?
No, and no Actor running on a server can: Twitch puts that field behind an integrity check that datacenter IPs cannot pass. Kick publishes them openly, and this Actor returns them for Kick channels.
How do I find small streamers to sponsor?
Pick a category, set Sort live channels by to fewest viewers and set Maximum followers to your ceiling. A test run on Software and Game Development returned channels with 0, 1, 10 and 90 followers, all live.
Why do I only get 100 channels from a category?
That is Twitch's cap per request, and paging past it is blocked. Add languages — each one is a separate request with its own 100 rows — or run several categories.
What is the difference between a profile row and a listing row?
A listing row comes from a category or search page and is charged as a stream. A profile row needed its own lookup — that is where the bio, account age, follower count and Kick socials come from — and is charged as a channel.
Does it need a Twitch or Kick account?
No. Both platforms serve this data to anonymous visitors, and the Actor uses the same public endpoints their websites do.
Support
Questions, missing fields or a source that changed? Open an issue on the Issues tab or write to support@chorelet.app — problems are usually fixed within a day, and the Actor is checked every morning by an automated test run. If the Actor saved you time, a short review on its Store page helps other people find it.