Metrics
| Metric | Q2 2026 | Q1 2026 | Change | Plan |
|---|---|---|---|---|
| Monthly recurring revenue | $41,200 | $32,900 | +25% | $45,000 |
| Clinics live | 63 | 48 | +15 | 70 |
| Net revenue retention | 118% | 112% | +6 pts | 110% |
| Monthly churn | 1.1% | 0.9% | +0.2 pts | <1.0% |
| Net promoter score | 54 | 57 | −3 | 57 |
| Median onboarding time | 4 days | 9 days | −5 days | 5 days |
| Gross margin | 81% | 78% | +3 pts | 80% |
| Headcount | 7 | 6 | +1 | 8 |
Revenue grew 25% in the quarter and finished 8% below plan. The shortfall is entirely explained by clinic count: we added fifteen clinics against a plan of twenty-two, and our average revenue per clinic was slightly ahead of plan. The plan itself was set from an exceptional March and, in hindsight, was not a forecast.
Two metrics moved against us. Churn crossed 1.0% on the loss of one single-site clinic that closed its practice, and NPS fell three points; every detractor comment referenced SMS delivery, which was a defect we fixed on Jul 18. Onboarding time is the quarter’s clear win — nine days to four — and it is the reason Q3 clinic additions should exceed Q2 without additional headcount.