AI Adoption GuideMarketingReport
Conversational reporting in Slack
A bot answers ad-hoc KPI questions and posts daily summaries in chat.
Marketing processResearchPlanCreateLaunchMeasureReport
By Don, DoneThat’s AI coach · updated
Why KPI questions stall in Slack
Marketing ops leads live in Slack. A campaign owner asks for yesterday’s ROAS by channel. A finance partner wants paced spend versus plan. A brand manager needs a quick read on email conversion after a creative swap. Each question is reasonable. Each one often waits on someone who can open the right dashboard, apply the right filters, and paste a number back into the thread.
That delay is not usually a tooling shortage. It is a mismatch between how people ask for performance and how reporting systems expect them to retrieve it. Dashboards favor scheduled views and fixed dimensions. Chat favors incomplete questions, shifting time windows, and follow-ups in the same thread. When the only path is a manual pull, every ad-hoc request competes with scheduled reporting work.
Conversational reporting closes that gap. A bot listens in designated channels, interprets a KPI question against approved metric definitions and accessible data, and drafts a reply in Slack. The same system can post a short daily summary so the team starts the day with a shared baseline instead of a scramble of DMs.
What the bot should answer, and what it should refuse
Treat the bot as a draft author, not a source of record for decisions that move budget or change forecasts. It should answer questions that map cleanly to defined metrics and data the system can reach: spend, impressions, clicks, conversions, CPA, ROAS, delivery, and similar measures scoped by channel, campaign, geo, or date range the warehouse already exposes.
It should refuse or return empty output when either of two conditions fails. First, the metric name is ambiguous or undefined in the metric catalog (for example, “engagement” with no agreed formula). Second, the requested slice is not in accessible data (for example, a creative attribute that never landed in the warehouse). Empty output is better than a confident guess. Ops should configure a clear refusal message that names the gap: missing definition, missing permission, or missing source field.
High-stakes claims need a human check before they become the team’s answer. Examples include period-over-period swings that imply a channel cut, attribution of a lift to a single creative, or any figure someone will paste into an executive update. The bot drafts; an analyst verifies the claim, the filter set, and the comparison window, then confirms or corrects in-thread.
How a Slack question becomes a draft reply
A workable flow starts with channel and intent rules. Limit the bot to marketing performance channels so random workspace chatter does not trigger pulls. Require a mention or a slash command for ad-hoc questions so ambient conversation stays quiet. Parse the ask into metric, dimensions, time range, and comparison (if any). Resolve synonyms through the metric catalog (“cost per acquisition” and “CPA” must point to one formula).
Next, run a governed query against only approved sources. Prefer warehouse tables or semantic layers that already power official dashboards, so chat and slides do not diverge. Format the draft reply with the number, the definition in plain language, the time range, and the filters applied. If the question is underspecified, ask one clarifying question instead of inventing a default that hides the choice.
Thread hygiene matters. Post the draft in the same thread as the question. Include a short “verify before you act” note when the magnitude or decision risk is high. Log the question, resolved metric IDs, query fingerprint, and who confirmed the answer so later disputes have a trail.
Daily summaries follow a different pattern. Schedule a morning post with a fixed template: paced spend versus plan, top movers by channel, and open anomalies worth a glance. Keep the summary short. Link out to the dashboard or the deeper narrative report for anyone who needs the full cut. Related work on narrative reporting and review decks covers those longer artifacts; Slack is for speed and shared awareness, not the board pack.
Metric definitions and data access come first
Conversational reporting fails when the catalog is soft. Publish a metric dictionary with formula, grain, owner, and allowed dimensions. Align naming with how people speak in Slack, but keep one canonical ID under the hood. When two teams mean different things by “conversion,” the bot must not pick a side silently; it should surface the conflict or require a qualified metric name.
Access control belongs in the same design. The bot should inherit least-privilege credentials. If a user asks for a region or brand they cannot see in the BI tool, the chat answer should fail closed. Do not invent a “helpful” aggregate that mixes restricted rows. Ops and security should agree which channels may receive which metric families, especially for spend and revenue figures that are sensitive inside the company.
When definitions or accessible data are missing, empty output is the correct product behavior. Track those refusals. A rising refusal rate on a metric name is a backlog item for the catalog, not a prompt-engineering problem.
Operating model for marketing ops
Assign ownership. Marketing ops owns channel policy, summary templates, and escalation paths. Analytics owns metric definitions and query correctness. The bot’s job is to draft faster; humans own correctness when money or reputation is on the line.
Start with a narrow pilot: one channel, a small set of metrics, and daily summaries that mirror an existing morning checklist. Measure cycle time from question to usable answer, refusal rate, and how often analysts edit drafts. Expand only when edits stay rare and refusals point to fixable catalog gaps rather than endless ambiguity.
Keep related report-stage work in view. Anomaly explanations help when a summary flags a mover and someone asks why. Auto-generated review decks and narrative reports remain the place for structured storytelling. Slack conversational reporting is the fast path for operational questions and a shared daily pulse, with analysts verifying high-stakes claims before the team treats a draft as fact.
Is this worth automating for you?
Whether this pays back depends on how much time it takes your team today. Most teams estimate that from memory, and the estimate is usually wrong in one direction or the other.
DoneThat reconstructs where the time actually went, with no timers to forget, so you can measure the baseline before committing to a project and check the gain afterward.
Measure the baseline first