# Twitch Follower Count & Channel Stats

> Get Twitch follower count, bio, partner status, last game, language and tags for up to 1,000 channels, plus channel search. Your own free Twitch key.

URL: https://cliqtomedia.com/actors/twitch-channels/

Category: Video, audio & streaming · Status: coming soon · Apify profile: https://apify.com/cliqtomedia?fpr=cliqto

Paste Twitch logins or links. Get followers, bio, partner or affiliate status, last game, language and tags. You can also search channels. You use your own free Twitch key.

## How to use it: 3 steps

1. **Follow us on Apify.** The tool is built and waits in the queue for the Apify Store. Apify is the cloud platform where our tools run.
2. **Paste your input and press Start.** No code needed: you fill in a form (the input). It already has a working example. For example: `twitch` in Channels. Each start is one run.
3. **Download the results.** When the run ends, the results are in a table (the dataset). Open Output, press Export and pick Excel or CSV. JSON and the API are there too.

## What it does

Twitch Follower Count & Channel Stats gets the follower count, bio, partner or affiliate status, last game, stream title, language, tags and creation date for a list of Twitch channels. You paste logins or twitch.tv links, or type a search word, and add your own free Twitch Client ID and Client Secret. You get one clean table row per channel, with numbers as numbers.

- Accepts logins (`shroud`), handles (`@pokimane`) and links (`https://www.twitch.tv/twitch`). Upper and lower case do not matter.
- Rows come in the order of your list. A login that appears twice is looked up once.
- Search rows come in Twitch's search order, with their place in `searchRank`. A channel that is already in your list is not saved twice.
- A login with no active channel gets a `not_found` row with your original line. A line that is not a Twitch login gets an `invalid_input` row.
- `null` means "Twitch did not send this value". It is never written as `0`.
- E-mail addresses in a bio are replaced with `[email removed]`. The Actor does not collect contacts.

### Good for

- You have a list of streamers and need their follower counts and status in a table.
- You know the start of a channel name (for example `minecraft` or `speedrun`) and want every matching channel with its size.
- You want an official, stable data source instead of page scraping.

### Not a good fit

- You have no Twitch account with two-factor authentication. You need it to make the free key.
- You need the list of followers, viewer counts of live streams, clips or videos. This Actor gives the follower total and the channel profile only.
- You need e-mails or other contacts of streamers. This Actor does not collect them.

## Price

Prices will be shown after release.

## Questions

### Do I need a Twitch key?

Yes. You make a free Client ID and Client Secret in the Twitch developer console. Two-factor login must be on.

### Can I get the list of followers?

No. Twitch gives that list only to the channel owner. You get the follower total.

### Does it show if a channel is live?

No. Game and title come from the current or last stream. Use a live streams Actor for that.

### Does it return email addresses?

No. Email addresses in bios are replaced with [email removed].

### Do I need a Twitch account?

Yes, to make the free key, with two-factor authentication on. The Actor does not log in to your account and does not use cookies.

### Does it cost Twitch money?

No. The Twitch API is free. You pay only the Apify price above.

### Is personal data included?

Only public channel data that Twitch shows on the channel page. E-mail addresses in bios are removed. No viewer data.

## Data fields

- `status` (string): complete = all stats found; partial = saved, but Twitch did not return some fields (see message); not_found = no active channel with this login (small empty-result fee); invalid_input = not a Twitch login (small empty-result fee); api_key_required = free notice when the Client ID or Secret is missing.
- `input` (string): Your channels entry as typed, or the search query for search results.
- `matchedBy` (string): login = from your channels list; search = from searchQuery.
- `searchRank` (integer): 1-based position in Twitch search results (search rows only).
- `userId` (string): Twitch channel (broadcaster) id; stable even when the login changes.
- `login` (string): Channel login, as in twitch.tv/<login>.
- `displayName` (string): Channel display name.
- `description` (string): Channel bio. E-mail addresses are replaced with [email removed].
- `broadcasterType` (string): partner, affiliate or normal.
- `followers` (integer): Follower total reported by Twitch; null when Twitch sent no number (never a made-up 0).
- `gameId` (string): Twitch category id of the last or current stream; null when none is set.
- `gameName` (string): Category name of the last or current stream, e.g. Just Chatting.
- `language` (string): Broadcast language: ISO 639-1 code or other.
- `title` (string): Stream title set by the streamer (last or current stream).
- `tags` (array): Channel tags set by the streamer.
- `createdAt` (string): When the Twitch account was created (UTC, ISO 8601).
- `profileImageUrl` (string): Profile picture URL.
- `url` (string): Link to the channel on twitch.tv.
- `source` (string): Always twitch-helix: the official Twitch API.
- `fetchedAt` (string): When this row was fetched (UTC, ISO 8601).
- `message` (string): Why a row is partial, not found, invalid or a key notice; null for complete rows.

## Input settings

- `clientId` (string): Client ID of your own Twitch application from dev.twitch.tv/console/apps. Stored encrypted; never written to the dataset, logs or run summary.
- `clientSecret` (string): Client Secret of the same app (Manage → New Secret). Stored encrypted; the app token made from it is revoked at the end of the run.
- `channels` (array): Channel logins, @handles or twitch.tv links, up to 1000. Each one gets a row: channel stats, or a not_found / invalid_input row explaining why there is none (charged as a small empty result).
- `searchQuery` (string): Optional: find channels whose login starts with this text through Twitch channel search (e.g. minecraft, speedrun), up to 100 characters. It does not search games or stream titles. Results come in Twitch's search order and can be combined with the channels list.
- `maxItems` (integer): Stop after this many channels from search (does not limit the channels list). Each saved channel is one paid result.

## Step by step on Apify

1. Get a key (see above).
2. Paste your Client ID and Client Secret.
3. The Channels field already has `twitch`. Add more logins or links, one per line, or type a word into Search channels.
4. Click Start. One channel takes about 3 seconds.
5. Open the Channels view of the dataset, or download it as CSV, Excel or JSON.

## Use cases

| Task | Input | Key fields | Next step |
|---|---|---|---|
| Check streamers before a sponsorship | the creators' logins | `followers`, `broadcasterType`, `gameName`, `language` | Shortlist channels of the right size and language |
| Track follower growth | the same list every week | `followers`, `fetchedAt`, `userId` | Chart the growth in a sheet |
| Find channels by name | `searchQuery` with the start of a channel name | `searchRank`, `followers`, `gameName`, `tags` | Build a list of Twitch channels to study |
| Clean a creator list | a list from a sheet or CRM | `status`, `login`, `url` | Remove renamed or banned channels |
| Enrich data for BI or a model | many logins | all fields | Join on `userId` |

## Tips

- Paste logins, @handles or twitch.tv links. Each form works.
- Use search with the start of a channel name to find similar channels.
- Run it weekly on the same list to see growth.

## Limits

Data comes from the Twitch Helix API under your own Twitch app. Please follow the Twitch Developer Agreement. This Actor is not affiliated with or endorsed by Twitch.

- Up to 1,000 lines in `channels` and up to 1,000 search results per run. We tested both at once: 1,991 channels saved in about 218 seconds.
- The Actor stops looking up channels 15 seconds before the run timeout so it can save the results. It keeps the saved rows and ends as `PARTIAL` with reason `TIME_LIMIT`. The default timeout of 300 seconds is enough for the maximum input.
- If your Twitch app runs out of requests and does not get them back within about a minute, the Actor keeps the saved rows and ends as `PARTIAL` with reason `QUOTA_LIMIT`.
- If Twitch fails again and again, the run keeps saved rows and ends with reason `SOURCE_ERROR`.
- `followers` is live at `fetchedAt` and changes all the time.
- Twitch search matches the start of the channel login (`minecraft` finds `minecraft`, `minecraftlive` and similar). It does not search games, stream titles or bios, and finds only channels that streamed in the last 6 months. Twitch decides the order and may stop giving results before `maxItems`.
- A renamed, banned or deleted channel comes back as `not_found`. Look it up by its new login.

## Sample result

```json
{
  "status": "complete",
  "input": "Shroud",
  "matchedBy": "login",
  "searchRank": null,
  "userId": "37402112",
  "login": "shroud",
  "displayName": "shroud",
  "description": "I'm back baby",
  "broadcasterType": "partner",
  "followers": 11293693,
  "gameId": "771448419",
  "gameName": "AION 2",
  "language": "en",
  "title": "NEW HARDMODE CONTENT GRINDING PHILO STONES AND PVE BOARDS",
  "tags": ["English"],
  "createdAt": "2012-11-03T15:50:32.000Z",
  "profileImageUrl": "https://static-cdn.jtvnw.net/jtv_user_pictures/c754eebf-745b-4e0a-814a-10bcaecaabbc-profile_image-300x300.png",
  "url": "https://www.twitch.tv/shroud",
  "source": "twitch-helix",
  "fetchedAt": "2026-10-22T06:00:53.205Z",
  "message": null
}
```

## Similar tools

- [YouTube Search Results Scraper — No Login](https://cliqtomedia.com/actors/youtube-search-scraper/)
- [Bluesky Scraper — Posts, Profiles, Feeds & Threads, No Login](https://cliqtomedia.com/actors/bluesky-scraper/)
- [Threads Scraper — Posts, Profiles, Replies & Search](https://cliqtomedia.com/actors/threads-scraper/)
- [YouTube Subtitles & Transcript Scraper API](https://cliqtomedia.com/actors/youtube-transcript-scraper/)
- [YouTube Comments Scraper](https://cliqtomedia.com/actors/youtube-comments-scraper/)
- [Apple Podcast Directory & RSS Contacts Scraper](https://cliqtomedia.com/actors/podcast-directory-rss-contacts-scraper/)
