Message categories

Every message is classified during import. The categories aren't mutually exclusive — a single message can be a question, a mention, and contain duplicate text. The categories appear as counts and percentages on the Overview tab and as filtered grids in Chatter Details.

The seven categories

Commands

A message is a command if its first whitespace-separated token starts with ! followed by a letter. Examples:

Typically used for bot interactions: clip creation, shoutouts, song requests, giveaways.

Questions

A message is a question if it contains a ? anywhere. That's it — no sentence parsing, no natural-language detection. Simple but reliable for chat-style writing.

Rhetorical questions and "?" reactions get caught too, which is usually what you want when surfacing audience curiosity.

Mentions

A message is a mention if it contains any @token pattern. The token must start with @ followed by a username character.

Streamer Tags

A specific subset of mentions: messages containing @streamer_name (where streamer_name is the channel being analysed, matched case-insensitively).

The streamer name comes from the VOD/URL/file at import time. For Chatterino and CSV imports, fill in the Streamer name field in the import dialog to enable this category.

Emote-only

A message is emote-only if every whitespace-separated token in it is a known emote code. "Known" means it appears in one of the loaded emote sources (Twitch / BTTV / 7TV / FFZ / Kick — see How emotes work).

Examples (assuming all codes are loaded):

Note

If a channel-specific BTTV / 7TV / FFZ source for the streamer hasn't been added in the Emote Manager, its custom codes won't be recognised — messages using them will be classified as Other instead of Emote-only.

Duplicates

A message is a duplicate if its text closely matches an earlier message in the log. Small differences — typos, extra spaces, varied punctuation — are forgiven so genuine copypasta still gets caught.

Two guards prevent false positives:

This catches copypasta and spam waves while ignoring the dozens of "LUL" and "yes" you'd otherwise see flagged.

Adjust the similarity threshold and min words in the import dialog.

Other

Everything that didn't match any of the above. Plain conversational messages, mostly.

Where you see the breakdown

Multi-categorisation

A single message like @streamer_name what game is this? KEKW will be counted in Mentions, Streamer Tags, Questions, and possibly Emote-only (if what, game, is, and this happen to be emote codes — unlikely, but this is why the category counts can total above 100%).

This is intentional: it lets you slice the same chat in multiple ways without losing data.