Stream analytics

Coming soon

See what worked, post-stream.

Every archived stream gets a structured analytics page in the app — peak chat moments, top chatters, top emotes, sentiment, raids, sub bombs, category swaps. Plus a self-contained HTML report that ships next to the VOD in your storage so you can drop it in Discord, share with a sponsor, or open it offline a year from now.

Two surfaces, same data

In-app for now, on disk forever

In-app

Live analytics page

Visit /streams/{stream}/analytics for a live, interactive dashboard. Watch on Twitch / Open replay / Download HTML report action row up top. While the stream is currently live, the page polls every 30 seconds for fresh event data.

In your storage

Self-contained HTML report

After every stream's chat + events finish archiving, we generate vod-stem.highlights.html and upload it next to the VOD. No internet required to view — all CSS inlined, no external scripts.

What you see

A snapshot of how the stream actually went

Stat cards

At-a-glance numbers

Total messages, unique chatters, messages per hour, peak messages per minute, total bits, total subs.

Top chatters

Who showed up

Top 10 chatters by message count, with sentiment indicators. Click a chatter (in the app) to see their messages in context.

Top emotes

What chat said

Top 10 emotes for the stream as a horizontal bar chart. Pulls from chat fragments — global emotes, channel emotes, and BTTV / FFZ if your chat archive includes them.

Memorable timeline

The big moments

Raids, hype trains, gift sub bombs, category changes — chronologically with timestamps and headline data. Click any event in the in-app view to jump to that moment in the replay.

Sentiment

Vibe check

Light-heuristic sentiment over Twitch emote vocabulary + a small keyword set. Not psycholinguistic — don't use for serious research. Useful for "was the room hyped?" pattern recognition.

Event breakdown

Full event list

Counts and totals across the full event surface — subs, gifts, bits, raids, redemptions, follows, hype trains. Numbers you can quote in a sponsor pitch.

Events depend on OAuth scopes

Chat aggregates work for any account. Events (bits, subs, raids, hype trains, channel-point redemptions, follows) require granting the matching OAuth scope group when you connect your Twitch account. The analytics page tells you which scopes are missing with a one-click upgrade button if you want to fill them in.

Free for everyone

See what worked — without a tracking pixel in sight

Stream analytics ship with every archive. No setup, no third-party trackers, no data sold. The HTML report lands in your storage and is yours to keep.