Track user journeys with intent context and friction signals. Use when instrumenting onboarding, checkout, or any multi-step flow where you need to understand WHY users fail.
This skill inherits all available tools. When active, it can use any tool Claude has access to.
Track not just WHAT users do, but WHETHER they accomplished their goal.
Every journey event should help answer: "Why did users fail to complete their intended task?"
| Field | Example | Purpose |
|---|---|---|
job_name | "checkout" | User's intended task |
job_step | "payment" | Current step in journey |
job_progress | "3/4" | How far they got |
outcome | "success" / "friction" / "abandon" | Did they succeed? |
Detect user struggle before they contact support:
| Signal | Detection |
|---|---|
| Rage taps | 3+ taps same element in 1s |
| Retry exhaustion | 3+ retries of same action |
| Quick abandonment | Exit within 5s of error |
| Navigation loops | 3+ back navigations without progress |
Not just success/failure:
"Completed with friction" is often the most actionable signal.
| Topic | Reference |
|---|---|
| Full methodology | references/user-focused-observability.md |
| Job-based patterns | references/jtbd.md |
| Friction detection code | references/user-journeys.md |
| Journey correlation | references/user-journeys.md |
Before adding journey instrumentation:
If no to all three → probably don't need it.
skills/instrumentation-planning for prioritization frameworkskills/interaction-latency for friction detection on key actionsskills/navigation-latency for screen transition context