The feature chart was green. Support tickets were not.
Activation looked strong. Users were abandoning on the last step of onboarding. The metric counted starts, not completions.
Dashboard looked healthy
We had basic request metrics and a dashboard. Product trusted the headline number.
Starts counted, not finishes
We instrumented servers, not the workflow users cared about. Failures were silent until support escalated.
Instrument the journey
Log and metric the steps in the journey. Alert on user impact, not only CPU.
Review signals with product after each release.
One log and metric contract
{
"event": "onboarding.step_failed",
"step": "verify_phone",
"userId": "…",
"errorCode": "sms_timeout"
}Close the loop with product
Close the loop with product, not only engineering. A green chart that misses pain is worse than no chart.