Common workflows
- Highlight reel curation — sort by emote density (PogChamp / KEKW / OMEGALUL bursts mark hype moments). Use
timestampto jump straight to that VOD second. - Mod log audit — filter
badges contains "moderator"to see exactly when mods were active and what they said. - Sub-only retention — pivot by
is_subscriberY/N to see how much of your active chat is paying. - Bits leaderboard — sort by
bitsdesc; thank top cheerers in the next stream. - Sponsored-segment sentiment — pull a 60-second window around your sponsor read; chart positive vs negative chat reactions.
Live streams vs VODs
Twitch stores chat per-VOD for 14 days for non-affiliates and indefinitely for partners — once a stream is no longer available, neither are its chat logs. Export sooner rather than later. Live-stream chat (during broadcast) requires a different scraping approach; the URL pattern this page covers is the post-stream VOD URL.
Plan limits
Per-VOD size scales with your plan. Free (no signup): up to 100 messages per VOD. Personal: 5,000. Premium: 50,000. Business: 250,000 — see pricing for the full feature comparison and API tiers for the API-specific limits.
FAQ
Twitch Chat Exporter — FAQ
Is the Twitch chat exporter free?
The free tier (no signup) returns up to 100 messages per VOD. Larger messages and CSV/JSON require a paid plan: Personal 5,000, Premium 50,000, Business 250,000. See pricing.
Does it work on live streams?
This page covers VODs (post-stream). Live chat scraping is on the roadmap; for now, save your VOD and export after the stream.
Are emotes captured?
Yes —
emotes column contains the emote codes used. BTTV/FFZ third-party emotes are captured when their codes are present in the chat payload.How long does Twitch keep VOD chat?
14 days for non-affiliate accounts, indefinitely for partners. Export sooner rather than later.
Are sub tier and badges included?
Yes — separate columns for
is_subscriber, sub_tier, and a comma-separated badges column.Can I export many VODs at once?
Yes — bulk URL upload on a paid plan processes each URL as a separate export and bundles the resulting files in one ZIP (one file per URL).
Is there an API?
Yes — JSON-over-HTTP API on Premium and Business plans.