Skip to module content
Module 14 · ~6 min

Reporting & Dashboards

The client-facing surface that ends in an approval button.

Reading progress
0/8 · 0%

The big idea

💡Key idea
In 2026, dashboards stop being static BI (Business Intelligence) displays and become conversational surfaces over live data — with narrative generation sitting on top. The light tier is a scheduled agent that pulls key metrics via MCP, writes a brief in plain language (metrics, so-what, anomalies, proposed actions), and posts it to Slack. Most clients should start here. The mid tier adds visual dashboards via Porter Metrics or Looker Studio, with a narrative agent generating the interpretation layer on top. For spreadsheet-native clients, Claude in Excel is a natural fit. The heavy tier is a custom Lovable dashboard over a Supabase database, with scheduled MCP pulls and an embedded 'ask your data' chat powered by Claude API and your read-skills as tools. The differentiator that ties all three tiers together: anomaly narration that ends in an APPROVAL BUTTON, not a chart. Dashboards should produce decisions, not just information.
Quick check
1 question · instant feedback
0/1
  1. The 2026 dashboard differentiator is:

Numbers that matter

3
Tiers of dashboard delivery: Slack narrative / visual+narrative / custom Lovable+chat.
Quick check
1 question · instant feedback
0/1
  1. The cheapest, highest-read-rate deliverable is:

Deep dive

3/3 open

Light tier: a scheduled agent pulls metrics via MCP, drafts a narrative brief — metrics, so-what, anomalies, proposed actions — and posts to Slack or email. This is the cheapest option to build and consistently the highest-read-rate option in client relationships. Start here by default.

Mid tier: Porter Metrics or Looker Studio for visual layout, with a narrative agent generating the interpretation layer on top. For clients who live in spreadsheets, Claude in Excel is a natural mid-tier option that meets them where they work.

Heavy tier: a custom Lovable dashboard over a Supabase database, with scheduled MCP data pulls, an 'ask your data' chat interface powered by Claude API, and your existing read-skills as the tool surface the chat uses to answer questions.

Anomaly narration that ends in an APPROVE button is what separates a reporting product from an information product.

When CPL rises 34%, the dashboard shouldn't just display the number. It should explain the likely driver, propose a specific action (add these negatives, pause this ad set, shift this budget), and surface a button that executes the action when approved.

This turns the dashboard from something clients glance at into something they act through. It's also the most visible embodiment of the review-loop promise — the thing that makes 'human in the loop' concrete rather than abstract.

As a side effect, every approval becomes a data point for your eval harness. The client's action is ground truth.

Four anti-patterns are worth calling out proactively in sales conversations — both to differentiate your approach and to establish you as someone who understands the failure modes.

First, platform-self-attributed cross-channel summing (covered in Module 5): adding up conversions across Google, Meta, and LinkedIn without an attribution caveat always double- or triple-counts.

Second, vanity dashboards: nice-looking charts with no decision attached. They consume client attention without producing action.

Third, monthly PDFs: by the time a PDF arrives, the data is 2–4 weeks old and the window to act has closed. Weekly Slack narratives consistently outperform them on both read rate and action rate.

Fourth, chat-over-data without read-skill tools: a general-purpose chat interface pointed at data without validated tool schemas will hallucinate specific numbers confidently.

Quick check
1 question · instant feedback
0/1
  1. Chat-over-data must be wired with:

How to run it

  1. Match tier to client
    Light/mid/heavy — most clients live at light+mid.
  2. Narrative + so-what + action
    Never just metrics.
  3. End in approval where possible
    Approval button closes insight→action.
  4. Ship anomaly detection, not thresholds
    Model narrates the hypothesis and proposed fix.
Quick check
1 question · instant feedback
0/1
  1. An 'ask your data' feature in the heavy tier uses:

In the field

🔬Worked example
'CPL rose 34% — driven by X, here's the hypothesis and the proposed fix, approve?' Reporting that ends in an approval button closes the insight→action gap and visibly embodies the 'review loop' promise on the homepage.
🚫When not to reach for it
Monthly PDFs are dead on arrival vs weekly Slack narratives. Vanity dashboards with no decision attached are worse than nothing — they consume attention without producing action.
Quick check
1 question · instant feedback
0/1
  1. Vanity dashboards are:

Pitfalls & takeaways

Failure modes

  • Cross-channel conversion sums with no attribution caveat.
  • Vanity dashboards — nice charts, no decisions.
  • Monthly PDFs when weekly Slack works.
  • Chat over data with no read-skill tools — the model hallucinates.

Durable takeaways

  • Dashboards end in approval buttons, not charts.
  • Weekly Slack narratives beat monthly PDFs, always.
  • Chat-over-data needs read-skills as tools, not free-form.
  • Attribution caveats belong on every ad-platform report.

Do the work

🏋️Prove you learned it

Build the light-tier deliverable for one client: scheduled agent pulls key metrics via MCP, drafts a narrative brief (metrics + so-what + anomalies + proposed actions), posts to Slack. Include one approval-button anomaly ('CPL rose >20% — approve proposed negatives push?').

0 chars
📦Artifact to produce
Client narrative-brief agent (Slack) + anomaly-narration with approval button.

Sources

  • · GMS Field Manual §14 (Reporting & Dashboards)