Skip to main content

Insights → Analytics console

The Insights section has many specialized surfaces. Insights → Analytics (console route /insights/analytics, page title “Analytics — real-time communication analytics and insights”) is the general-purpose cross-channel rollup: it stacks volume across SMS, WhatsApp, email, RCS, and voice in one view and updates live as messages deliver. Open it when your question is “across all my channels — volume, delivery, spend — what happened in this window?”

What the page shows

Four header KPI cards — Total messages, Delivery rate, Active contacts, Total spend — computed over the window you pick in the date filter (24h, 7d, 30d, 90d, 12m, or a custom calendar range). The cards carry built-in definitions; hover a card’s info affordance to see exactly what the metric counts (for example, delivery rate = (delivered + read) / terminal messages, in-flight rows excluded). Below the cards, the Ask your data panel answers plain-English questions against the same metrics snapshot — it is fully client-side and deterministic, no LLM call. The rest of the page is the breakdown set, each card scoped to the same selected window:
  • Message volume — a stacked time series with one series per channel (SMS, WhatsApp, email, RCS, voice, and any other channels you send on).
  • Channel distribution — a donut of each channel’s share of the windowed volume.
  • Delivery funnel — sent → delivered → read, with a root-cause drill-down that groups failed messages by rejection code.
  • Geographic distribution and a delivery-by-country table — sent / failed counts and delivery rate per destination country.
  • Peak hours — which hour and day carry your traffic, bucketed in your organization’s timezone.
  • Top recipients — your ten most-messaged contacts in the window.
Filters persist in the URL, so a teammate opening your link sees the same range. A Today: Nh badge appears on the short windows (24h, 7d) so a partial day is not mistaken for a drop, and an Export button pulls every visible section into one CSV. The page refreshes on message.delivered / message.failed / message.sent / campaign.completed events, so a delivery lands in the series within seconds rather than on a fixed poll. Access is role-scoped. Because the page exposes aggregate recipient, geography, and peak-hour breakdowns, the owner, admin, developer, and billing roles see it; agent and viewer see the dashboard-Home summary instead. The Export button hands the same range-filtered reports to stakeholders without console access.

How Analytics differs from the neighboring Insights surfaces

These three pages overlap in vocabulary but answer different questions:
  • Insights → Analytics (this page) — cross-channel volume, delivery, and spend aggregates for a window. Read it for “how much moved, where, and what it cost.”
  • Insights → Costs (/insights/costs) — cost-per-channel detail: spend, volume, and average cost per message per channel, with a daily spend trend. Reach for it when the question is a cost split rather than a delivery funnel.
  • Insights → Conversations (/insights/conversations) — conversation-level intelligence: AI-powered analysis over individual conversations across channels. Reach for it when you need per-thread detail, not aggregates.
The Ask your data panel on this page answers the aggregate questions in sentence form when you do not want to read a chart.

Use-cases per channel

  • Delivery funnel (SMS, WhatsApp, RCS) — where the send → delivered → read chain leaks, with the top carrier rejection codes behind the drill-down.
  • Region split (all messaging channels) — geographic distribution plus the per-country delivery table: sent, failed, and delivery rate per destination.
  • Link clicks (SMS) — campaign-level click-through reporting lives on Insights → SMS CTR (/insights/sms-ctr); pair it with this page’s funnel when “delivered” is not the metric that matters.
  • Voice minutes and spend — the voice series is folded into header KPIs and the Ask-your-data snapshot alongside messaging, so reading total spend does not require the channels → Voice page.

When to use Analytics vs a channels/[channel] tile

The per-channel pages under Channels (for example channels/sms, channels/whatsapp) show that channel’s own configuration and its native tile view. Use Insights → Analytics when the question crosses channels or needs a mixed-channel comparison; use the single-channel page when you already know which channel is implicated. The Analytics page’s channel donut and volume series tell you which single-channel page to open next.

Comparative table — which Insights page answers which question

API parity — the same rollup over GET /analytics

Everything on the page is also readable from the public Analytics API under /api/v1/analytics, so scheduled exports and embedded BI pulls never need console access. Use an API key with the analytics:read scope; analytics endpoints are tenant-rate-limited at 60 requests per minute. For the full endpoint reference — per-channel, per-country, error-code, and cost breakdowns — see the Analytics API page.

Volume and delivery

Per-channel breakdown (the donut)

Per-country delivery (the destination table)

Spend (the Total spend card)

Funnel drop reasons (the drill-down)

Omit start_date / end_date and the API defaults to the last 30 days; both bounds accept ISO 8601 timestamps and the range may not exceed 365 days. A 422 VALIDATION_ERROR names the offending parameter in error.details.issues.

See also