Skip to content

Analytics

The Analytics page (/analytics) shows a per-campaign funnel of drafts as they progress through the four canonical states: proposed (pending_review), approved, sent, replied.

Data comes from GET /api/analytics/funnel, which accepts optional campaign_id, from, and to query params and returns { stages: [{ stage, count }] }. Counts are computed with four COUNT(*) queries on the drafts table (joined on runs when filtering by campaign).

The page renders horizontal bars sized proportionally to the largest stage; each bar shows the absolute count and the conversion rate from the previous stage.

AGPL-3.0-or-later · Pitchbox