Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Apply the Peak-End Rule — a flow is remembered by its most intense moment and its last. Use when designing completion, celebration, or cancellation moments. For sustaining engagement mid-flow, use `zeigarnik-effect`.
.claude/skills/owl-listener-peak-end-rule/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-08 | ✗→✓ | ▲ Improved | 10% | 0% |
| case-09 | ✗→✓ | ▲ Improved | 71% | 0% |
| case-01 | ✗→✓ | ▲ Improved | 32% | 0% |
| case-03 | ✗→✓ | ▲ Improved | 42% | 0% |
| case-21 | ✓→✗ | ▼ Worse | 30% | 0% |
You are an expert in experience design and the psychology of retrospective evaluation.
You apply the Peak-End Rule to identify the moments in a user journey that dominate how the experience is remembered and rated — and design those moments deliberately.
Daniel Kahneman's research found that people do not evaluate experiences as a running average of moment-to-moment quality. Retrospective judgement is dominated by two moments:
The duration and average quality of everything in between contribute far less. This is "duration neglect": people are poor judges of how long something took, but accurate judges of how it felt at its extremes.
If the experience has a natural moment of resolution, success, or payoff, make it genuinely satisfying:
If the experience contains an unavoidable negative peak — a long wait, a failed action, a rejection — design around it: set expectations before it arrives, provide something useful during it, and make the recovery the new peak.
The final moment of a session shapes overall impression more than most of what preceded it:
| Flow | Peak to design | End to design | |---|---|---| | Checkout | Order placed — confirmed, named, visualised | Warm confirmation with clear next steps | | Onboarding | First output the user cares about | State showing their work is saved and accessible | | Signup | "You're in" — the first landing inside the product | Dashboard or landing that demonstrates immediate value | | Data-heavy tasks | Completing the most complex required step | Summary or confirmation of what was saved | | Error recovery | The fix moment, not the error state | Clear signal that the issue is fully resolved |
Users will rate a 10-minute experience that ended well above a 5-minute experience that ended poorly. Practical implications:
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-19 | pass→pass | 10,314 | 9,888 | -4% | 1 | 1 | 0% | 1,553 | 2,249 | +45% | 0 | 0 | — |
case-06 | pass→pass | 12,733 | 13,487 | +6% | 1 | 1 | 0% | 1,960 | 2,490 | +27% | 0 | 0 | — |
case-07 | pass→pass | 10,673 | 12,516 | +17% | 1 | 1 | 0% | 1,669 | 2,520 | +51% | 0 | 0 | — |
case-08 | fail→pass | 13,126 | 8,716 | -34% | 1 | 1 | 0% | 1,978 | 2,176 | +10% | 0 | 0 | — |
case-09 | fail→pass | 9,302 | 12,168 | +31% | 1 | 1 | 0% | 1,528 | 2,607 | +71% | 0 | 0 | — |
case-10 | pass→pass | 9,880 | 9,779 | -1% | 1 | 1 | 0% | 1,641 | 2,326 | +42% | 0 | 0 | — |
case-17 | pass→pass | 12,429 | 12,337 | -1% | 1 | 1 | 0% | 1,935 | 2,623 | +36% | 0 | 0 | — |
case-18 | pass→pass | 10,656 | 9,115 | -14% | 1 | 1 | 0% | 1,569 | 2,129 | +36% | 0 | 0 | — |
case-01 | fail→pass | 16,816 | 22,361 | +33% | 1 | 1 | 0% | 2,548 | 3,354 | +32% | 0 | 0 | — |
case-02 | pass→pass | 13,043 | 10,113 | -22% | 1 | 1 | 0% | 1,855 | 2,248 | +21% | 0 | 0 | — |
case-03 | fail→pass | 14,467 | 16,283 | +13% | 1 | 1 | 0% | 2,094 | 2,977 | +42% | 0 | 0 | — |
case-04 | pass→pass | 11,214 | 6,670 | -41% | 1 | 1 | 0% | 1,666 | 1,804 | +8% | 0 | 0 | — |
case-05 | pass→pass | 17,389 | 14,115 | -19% | 1 | 1 | 0% | 2,869 | 2,735 | -5% | 0 | 0 | — |
case-11 | pass→pass | 11,577 | 10,765 | -7% | 1 | 1 | 0% | 1,484 | 2,221 | +50% | 0 | 0 | — |
case-12 | pass→pass | 10,354 | 9,510 | -8% | 1 | 1 | 0% | 1,509 | 2,202 | +46% | 0 | 0 | — |
case-13 | pass→pass | 17,961 | 18,038 | +0% | 1 | 1 | 0% | 2,683 | 3,528 | +31% | 0 | 0 | — |
case-14 | pass→pass | 15,969 | 13,047 | -18% | 1 | 1 | 0% | 2,437 | 2,795 | +15% | 0 | 0 | — |
case-15 | pass→pass | 13,071 | 11,391 | -13% | 1 | 1 | 0% | 1,960 | 2,423 | +24% | 0 | 0 | — |
case-16 | pass→pass | 13,784 | 15,354 | +11% | 1 | 1 | 0% | 2,128 | 3,021 | +42% | 0 | 0 | — |
case-20 | fail→fail | 10,607 | 13,103 | +24% | 1 | 1 | 0% | 1,885 | 2,960 | +57% | 0 | 0 | — |
case-21 | pass→fail | 11,922 | 12,597 | +6% | 1 | 1 | 0% | 2,196 | 2,863 | +30% | 0 | 0 | — |
case-22 | pass→pass | 8,524 | 8,439 | -1% | 1 | 1 | 0% | 1,163 | 2,289 | +97% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 22 cases were attempted. The headline lift of +14 percentage points is the difference between those two pass rates over the 22 comparable cases. 1 case got worse with the skill loaded, and it is included in that figure.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.