Source to production
Aug 1 – Sep 30 2026 · every rung read from the shared counting rules, none re-derived here.
1 booked case carries a production value we do not trust. It is excluded from the totals below, not counted as zero.
The loop
| Source | Leads | Qualified calls | Consults | Case | production | Lead → Case |
|---|---|---|---|---|---|---|
| google-ads | 6 | 4 | 5 | 3 | $93,800 | 50% |
| meta-ads | 3 | 2 | 0 | 1 | — | 33% |
| organic | 1 | 0 | 1 | 0 | — | 0% |
| referral | 1 | 1 | 1 | 1 | $26,900 | 100% |
| unresolved | 1 | 1 | 0 | 0 | — | 0% |
| Total | 12 | 8 | 7 | 5 | $120,700 | 42% |
How each number is defined
| Rung | Read from | Rule |
|---|---|---|
| Lead | leads_scored.lead_state | counted + unresolved; excluded rows dropped |
| Qualified call | call_logs_scored.is_qualified_lead | 60s floor, dialer bursts removed |
| Consult | consult_stage_scored.counts_as_consult | a lifecycle state, never a row count |
| Case | bookings_scored.is_booking | value from reported_value, never monetary_value |
Every rule lives in the database and is read back as a boolean. Changing one is an UPDATE, not a deploy, and every surface that reads it moves together.