> ## Documentation Index
> Fetch the complete documentation index at: https://recurr.dev/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# The operator dashboard

> What founders and operators see during and after a migration — wave performance, cohort metrics, retention vs the matched holdout, billing health, motion outcomes, and the audit trail.

The dashboard is where the migration becomes operational. Every wave's results land here, gating decisions get made here, and the post-migration motions run from here. This page covers what's on the screens.

The dashboard is operator-facing, not subscriber-facing — your team logs in, your subscribers never see it. Founder, finance, ops, support, and growth roles each have a relevant view; permissions scope what each role sees.

## The four real-time signals

A typical operator first-load sees four numbers above the fold:

<CardGroup cols={2}>
  <Card title="Migration rate" icon="arrow-trend-up">
    Per-wave + cumulative. The percentage of contacted subscribers in each cohort who completed the migration to web billing. Tracked against the gating threshold agreed pre-launch (typically ±10 pp of pilot baseline).
  </Card>

  <Card title="Holdout-relative churn delta" icon="scale-balanced">
    The migrated cohort's retention vs the matched store-billing holdout. The number that answers "is this hurting churn?" Tracked against the gating threshold (typically ±2 pp).
  </Card>

  <Card title="Recovered margin" icon="dollar-sign">
    Cumulative dollars recovered since wave-one launch, computed against your specific blended store fee and Recurr's web cost. Both Y1 (with migration performance fee) and Y2+ steady-state shown.
  </Card>

  <Card title="Cash-flow release" icon="banknote">
    Cumulative dollars pulled forward from the store-to-Stripe settlement-lag differential. Tracks against the migration percentage achieved to date.
  </Card>
</CardGroup>

These four are the gating signal — the numbers a founder or CFO checks first to know whether the program is on track.

## Wave management

Each wave has its own surface:

* **Wave plan** — sequenced cohorts (current wave + next 3–5), each with cohort spec, scheduled send date, and target migration percentage
* **Wave status** — current state (Draft / Scheduled / Sent / Paused / Complete) with the live conversion + churn telemetry
* **Threshold gates** — visualised against the live metrics; a breach surfaces immediately and auto-pauses the next wave
* **Wave report** — generated 7 days post-send, showing conversion + churn vs the matched holdout, support-volume signal, and the gating recommendation

The wave management view is where ops + customer support coordinate the rhythm. Gating decisions land here; sign-off is one click after the report lands.

## Cohort detail

For each migration cohort, the dashboard shows:

* **Composition** — persona × tenure × engagement bands across the cohort
* **Reachability** — email-deliverable count, anonymous-subscriber count requiring the in-app prompt, Apple Sign In private relay count
* **Wave assignment** — which wave this cohort is scheduled in, or which wave it migrated in
* **Migration outcomes per axis** — annual vs monthly migration rate, geo-level rate, engagement-tier rate

Operators use the cohort view to understand *why* a wave performed the way it did, not just *whether* it cleared the gate. The persona × tenure × engagement decomposition is the operational input for tightening or widening the next wave's spec.

## Subscriber-level state

Drill from a cohort into individual subscribers:

* **Subscription state** — current rail (store / web), plan, renewal date, lifetime value
* **Event log** — every event Recurr has fired for this subscriber (activation, renewal, motion attempts, payment events)
* **Identity continuity** — Apple Sign In private relay status, Google Sign In status, any email-collection prompt history

Subscriber-level access is permissioned — most operator roles see aggregate views; CX + ops roles see individual subscribers when handling escalations.

## Billing health

The billing-health view surfaces Stripe-side signal that affects the program:

* **Failed-payment rate** vs Stripe norms for your card mix
* **Smart-retry recovery rate** — what percentage of failed charges Stripe's retry recovers, and what Recurr's dunning sequence picks up after that
* **Refund + dispute rate** vs baseline
* **Per-region payment-method success** for international cohorts

A spike in any of these surfaces is one of the standard gating-breach signals — the wave pauses, the root cause gets investigated.

## Motion outcomes

Once lifecycle motions are running (post-migration), the dashboard shows per-motion performance:

* **Cancel deflections** — attempted, retained, retention conversion rate, performance fee earned
* **Winbacks** — attempted, recovered, recovered ARR, performance fee earned
* **Annual nudges** — converted-to-annual count, lift in subscriber LTV, performance fee earned
* **Payment recovery** — recovered-from-failed count, recovered ARR

Each motion ties back to the per-subscriber event log so the operator can see what triggered the motion, what the subscriber's path through it looked like, and whether the conversion held over the 12-month performance window.

## Audit trail

Every operator action is logged:

* Wave sign-offs, with operator + timestamp
* Cohort spec changes
* Gating threshold adjustments
* Subscriber-level interventions (manual cancellation, credit issuance, etc.)
* Motion-config changes

The audit trail is exportable; it's also the data layer that drives SOC 2 evidence collection when the audit kicks off.

## Role-based views

Different roles see different defaults on first load:

* **Founder** — four real-time signals, current-wave status, recovered-margin counter
* **Finance** — recovered margin, cash-flow release, per-wave revenue decomposition, Stripe payout schedule
* **Ops** — wave plan, gating decisions, cohort spec, support-volume signal
* **CX** — escalation queue, subscriber-level state, support macro library
* **Growth** — motion performance, cohort retention curves, LTV signal by acquisition channel

All views share the same data layer; permissions scope what each role can see and act on.

## Outside the dashboard

A few things intentionally live outside the dashboard:

* **Migration emails** — composed by Recurr, reviewed by you in the wave plan, sent through Recurr's send infrastructure (not from your inbox)
* **Subscriber-facing surfaces** — the branded portal, checkout, and email center subscribers see live at `subscribe.{yourdomain}.com` and are operated by Recurr on your domain
* **The Stripe Dashboard** — every charge, fee, and payout is queryable directly in your Stripe Dashboard, independent of Recurr's view

The dashboard sits between your team and the migration; it isn't the only surface where the data lives.

[Book a Migration Review](https://recurr.dev/apply) to walk the dashboard live against your numbers.
