Twitch Scraper - Live Streams, Channels, VODs & Clips avatar

Twitch Scraper - Live Streams, Channels, VODs & Clips

Pricing

from $1.00 / 1,000 results

Go to Apify Store
Twitch Scraper - Live Streams, Channels, VODs & Clips

Twitch Scraper - Live Streams, Channels, VODs & Clips

Scrape Twitch without an API key: live streams by game or language, top categories, channel profiles with followers and socials, recent VODs, top clips and channel search. $1 per 1,000 results.

Pricing

from $1.00 / 1,000 results

Rating

0.0

(0)

Developer

kfir messika

kfir messika

Maintained by Community

Actor stats

0

Bookmarked

3

Total users

2

Monthly active users

a day ago

Last modified

Categories

Share

Twitch Streams, Channels & Clips Scraper

Collect public Twitch data through Twitch's GraphQL endpoint. Get live streams, category rankings, channel profiles, recent VODs, popular clips, and channel search results in a clean dataset.

What it collects

  • Current top live streams overall and for named games or categories, including viewer count, language, start time, tags, broadcaster, game, preview image, and channel URL.
  • Top games/categories, with viewer totals, follower totals, and box art.
  • Channel profiles by login or Twitch URL, including description, followers, partner/affiliate status, live status and current stream, creation date, profile image, and available social links.
  • A channel's recent VODs and most viewed clips when enabled.
  • Channel search results by keyword.

All data comes from public, unauthenticated Twitch GraphQL queries. Twitch can change its schema or limit requests at any time. Twitch does not expose a language filter on the queried stream fields, so the actor filters the returned stream page locally.

Use cases

  • Track live audiences and category activity for creator research.
  • Build channel and clip discovery lists for marketing or media analysis.
  • Feed normalized Twitch records to dashboards, data pipelines, AI agents, or MCP-connected tools.
  • Compare public profile and stream metadata over repeated runs.

Input

FieldMeaningDefault
gamesCategory names to collect live streams fromCounter-Strike prefill
channelsChannel logins or URLs for profilesshroud prefill
searchTermsKeywords for channel searchEmpty
topStreamsCollect top streams and categoriestrue
includeVideosInclude recent VODs for each channelfalse
includeClipsInclude top clips for each channelfalse
languageStream language code such as en or jaEmpty
maxItemsPerSourceMaximum results per source, from 1 to 100100 (prefill 20)

The default run searches overall streams, Counter-Strike streams, the top categories, and the shroud profile. Set games and channels to empty arrays to omit those sources.

Output

Each data row has a type: stream, game, channel, video, or clip. A real trimmed example from the probe:

{
"type": "stream",
"title": "LIVE: Team Falcons vs. Team Spirit - ESL Pro League Season 24 - Playoffs",
"viewers": 69356,
"language": "EN",
"startedAt": "2026-10-09T07:27:28Z",
"tags": [],
"login": "eslcs",
"displayName": "ESLCS",
"game": "Counter-Strike",
"thumbnail": "https://static-cdn.jtvnw.net/previews-ttv/live_user_eslcs-440x248.jpg",
"url": "https://www.twitch.tv/eslcs"
}

Profile rows include followers, isPartner, isAffiliate, isLive, currentStream, socials, and profileImageURL. Video rows include views, durationSeconds, createdAt, and a Twitch VOD URL. Clip rows include the same fields and Twitch's clip URL.

Pricing

$1.00 per 1,000 results

Only data rows are charged through the result event. Summary and error records are free.

Limits and notes

  • Maximum requested results per source is 100.
  • Twitch's public API controls the available page size and fields.
  • Language is filtered from returned live stream rows because the public GraphQL fields reject a language argument.
  • Social links are included only when Twitch provides them.
  • Public VOD and clip availability varies by channel and region.

FAQ

Do I need a Twitch account or API token?

No. The actor uses public Twitch GraphQL queries and does not ask for an account token.

Can I pass channel URLs?

Yes. Provide a Twitch channel login, @login, or URL such as https://www.twitch.tv/shroud.

Why are there no video rows?

Enable includeVideos or includeClips. A channel may also have no public VODs or clips.

Is the language filter applied by Twitch?

No. The endpoint returns language in each stream row but rejects a language argument, so the scraper filters a wider returned page locally.