Reporting

GTM dashboards: one funnel from first touch to closed won

The Monday question is whether the motion is working. One curated view answers it, and every figure traces back to the primitive that produced it instead of to a spreadsheet.

try

Most early teams answer the pipeline question with a sheet somebody updates on Sunday. The numbers are stale, nobody quite agrees what counts as a reply, and the answer lands after the week it could have changed. The curated view is opinionated instead: touches, replies, positive replies, meetings, deals, won, and what needs a person today.

It is a pure projection and causes nothing: no sends, no writes. Touches and replies come from Sequences, positive replies from Messages, and meetings, deals, and won from Records, so read the conversion rates as direction, not a cohort. The terminal, the web view, and the widget all read one API.

Example searches

Ask for it the way you'd say it

Each example is a request in plain words, with what it returns underneath.

  • The Monday question

    is the motion working this month, and which channel is carrying it

    The funnel returns counts per stage with a channel split and the revenue booked inside the period you asked for.

  • What needs me today

    what is waiting on a human right now, unread replies and failed sends included

    Triage counts unread replies, positive email replies waiting, failed sends, cold deals, and paused mailboxes, each linked to where you clear it.

  • Explain a number I distrust

    where did this reply count come from and which conversations sit behind it

    Each stage counts one primitive. The Replies page splits replies by channel and links to the Unibox, where the conversations live.

Plays

Three motions you can run this week

Each one is a chain of OXYGEN primitives: the same hosted objects your workspace already has, composed.

  • Run the week from one view

    A founder answers the pipeline question in a minute, without assembling a report first.

    1. 1Read the funnel summary for the period and note where the drop actually is.
    2. 2Work the needs-action queue before opening any other surface.
    oxygen dashboards summary
  • Compare channels honestly

    Email, LinkedIn, and messaging get judged on the same funnel rather than on separate vanity screens.

    1. 1Read persisted sequence status separately from current operational state.
    2. 2Compare per-channel replies against sends before shifting any budget.
    oxygen sequences analytics
  • Find the cost behind the result

    The credits that produced this month's meetings become visible next to the meetings themselves.

    1. 1List recent provider calls with their status, provider, and estimated and actual credits.
    2. 2Trace the expensive ones back to the column or workflow that queued them.
    oxygen observability events

Capabilities

What you get

  • A funnel that ships configured

    Touches, replies, positive replies, meetings, deals, and won are defined for you, so the first week produces a number instead of a configuration project. Reading it is unmetered on every tier, free included, because the view makes no provider call.

  • Traceable figures

    Every metric resolves to a query over a named primitive. A number nobody can explain is treated as a defect here, not as a quirk of the reporting layer.

  • A needs-action queue

    Unread replies, positive email replies waiting, failed sends, cold deals, and paused mailboxes. The triage strip counts what is blocked on a person, not everything open.

  • Same answer on every surface

    The web dashboard, the terminal summary, and the widget read one API, so a number quoted in chat matches the one on screen without anyone reconciling them.

Boundaries

What Dashboards does not own

Dashboards project and never act. Run timelines, costs, retries, and provider errors belong to Observability, which this only summarizes. A threshold that should trigger something is a Workflow subscribing to Signals rather than a dashboard feature.

Data sources

Data sources and CRM connections

  • PredictLeads

    A live-source widget on your own dashboard can show a read-only PredictLeads lookup, refreshed only when you ask and capped per refresh.

  • WhatsApp

    Your connected WhatsApp number: its sequence messages count as touches in the channel split, and its replies count in the reply stage.

  • RB
    RB2B

    Once support connects RB2B, a bound feed lands each website visit it names as a free table row that a chart on your own dashboard can count.

Use managed credits where available, or connect a supported provider key on an eligible paid plan. Your provider bills its calls; OXYGEN adds a per-call platform fee. Signed-in CRM connections such as HubSpot have no per-call fee. Connected sending accounts reserve monthly credits. See pricing and supported integrations.

Limits

Where this stops

  • The curated funnel is fixed on purpose and answers what an early revenue team asks every week. Build anything else as your own dashboard in the CRM.
  • A funnel is only as honest as the data under it. Unlinked conversations and un-promoted rows do not appear, which is an argument for tidy identity resolution rather than for distrusting the view.

FAQ

Questions people ask first

Can I build my own dashboard?
Yes. CRM → Dashboards holds your own: tabs of charts over any table or CRM object, saved views, notes, embeds, sandboxed code, and live sources. Only a live source can spend, and only when you refresh it, within its cap.
Where do the numbers actually come from?
From the primitives that own them: touches and replies from Sequences, positive replies from Messages, and meetings, deals, and revenue from Records. Credits used and recent runs sit beside the funnel on the web. Nothing is recomputed into a copy that can drift.
What counts as a touch or a positive reply?
A touch is any outbound sequence action marked sent: an email, a LinkedIn invite, message, or InMail, a WhatsApp message, and also profile visits and post likes. The reply rate divides only by touches someone could answer. A positive reply is an enrolled lead whose reply was triaged interested or read as positive, on any channel. Meetings and won come from CRM activities and deals.
Is the terminal answer the same as the web one?
Yes, by construction. The summary command, the web view, and the widget call the same API, so the number you paste into a board update is the number on the screen you read it from.
Can it alert me when something moves?
Alerting is not a dashboard feature here. A threshold that should cause action is a workflow subscribing to signals, which keeps causing things in one place rather than scattering triggers across reporting.
What exactly is needs-action triage?
The work blocked on a person today: unread replies, positive email replies waiting, failed sends, open deals quiet for 14 days, and mailboxes paused for deliverability. Each count links to where you clear it, and the list stays smaller than everything open.

Try Dashboards in your own workspace

Sign up, get a working workspace with a one-time credit grant, and run the first play from the web app, the CLI, or your AI assistant over MCP.