Zum Inhalt springen
Search the hub

← All suppliers

Collab

Slack

Channels/messages: collaboration metrics — Conversations API; usually do not load message text.

Templates only — grain, filters, custom fields and ownership are firm-specific.

Copy formulas into the KPI Definition Card, then adapt grain and filters.

Example

Messages sent

How many messages were sent (without loading bodies)?

COUNT(*) FROM message_meta WHERE ts IN period AND subtype IS NULL AND is_bot = false
Grain
Message meta
Fields
Message.channel_id, Message.ts, Message.subtype, User.is_bot
Dimensions
channel_type, team, is_bot

Many orgs do not land message text — meta from Conversations History / Analytics APIs.

Adapt: Lock thread parents vs all replies and DM exclusion.

Example

Active channels

How many channels had messages in the period?

COUNT(DISTINCT channel_id) FROM message_meta WHERE ts IN period
Grain
Channel
Fields
Message.channel_id, Message.ts, Channel.is_private
Dimensions
channel_type, team

Filter archived and shared channels.

Adapt: Define a minimum message threshold for “active”.

Files shared

How many files were shared (meta)?

COUNT(*) FROM file_meta WHERE created IN period
Grain
File meta
Fields
File Meta.id, File Meta.created, File Meta.filetype
Dimensions
channel_type, team, is_bot

files.list / events — do not store binaries.

Adapt: Count external shares and snippets separately.

Reactions count

How many reactions were given?

SUM(count) FROM reaction WHERE message_ts IN period
Grain
Reaction
Fields
Reaction.name, Reaction.count
Dimensions
channel_type, team

Engagement possible without message text.

Adapt: Clarify unique reactors vs total reaction events.

Thread replies

How many thread replies were there?

COUNT(*) FROM message_meta WHERE thread_ts IS NOT NULL AND ts != thread_ts AND ts IN period
Grain
Reply message meta
Fields
Message.thread_ts, Message.ts, Message.reply_count
Dimensions
channel_type, team, is_bot

Caution: many orgs should not land message text — meta only for replies.

Adapt: Choose reply_count on parent vs reply rows.

Formula overview

Same formulas as a table — copy into KPI cards or SQL drafts.

Label Formula Grain Fields
Messages sent COUNT(*) FROM message_meta WHERE ts IN period AND subtype IS NULL AND is_bot = false Message meta Message.channel_id, Message.ts, Message.subtype, User.is_bot
Active channels COUNT(DISTINCT channel_id) FROM message_meta WHERE ts IN period Channel Message.channel_id, Message.ts, Channel.is_private
Files shared COUNT(*) FROM file_meta WHERE created IN period File meta File Meta.id, File Meta.created, File Meta.filetype
Reactions count SUM(count) FROM reaction WHERE message_ts IN period Reaction Reaction.name, Reaction.count
Thread replies COUNT(*) FROM message_meta WHERE thread_ts IS NOT NULL AND ts != thread_ts AND ts IN period Reply message meta Message.thread_ts, Message.ts, Message.reply_count

Tour