# Delight has a budget

> Decide how much delight a moment can carry from how often people see it, tell marketing UI from product UI, and test whether a screen feels right.

Module: How good interfaces think · Level: beginner · 7 min · https://school.agents.org.in/design/philosophy/delight-has-a-budget

Move the slider from "every keystroke" to "rare milestone" and try each example. Notice how much each moment is allowed to do:

*[Interactive demo: The more often people see something, the less it may perform. Rare moments can celebrate.]*

Typing gets nothing. A button gets a tiny dip. Finishing onboarding gets confetti. Swap any two and it feels wrong: confetti on every save would be unbearable by Wednesday.

## The delight-impact curve

This is Benji Taylor's rule, and it is the most useful single question in this course: **how often will someone see this?**

Delight (A small flourish that makes a product feel alive, like a tick on save or confetti at the end of onboarding. It wears out the more often you see it), the small flourishes that make a product feel alive, wears out with repetition. Something you see once a year stays fresh; something you see a hundred times a day becomes friction by lunchtime.

| How often | Delight allowed |
|---|---|
| Every keystroke, every scroll | None. Any animation is friction. |
| Every action (a button press, hovering a row) | Subtle: about 100 to 160ms, a slight press. |
| Daily (save, send) | Small: a tick, a brief highlight. |
| Weekly (new project, share) | Medium: a short stagger or scale-in. |
| Rare milestones (signup done, first export) | Big. Confetti is allowed here. |

So when someone says "let's make this more fun", ask how often people see it. For anything frequent, the right answer is usually *less* visible, not more.

> **The one exception.** First-run moments (onboarding) are rare for each person but matter a lot, so they can carry more delight than their frequency suggests. Once onboarding is over, the budget drops back to normal.

## Marketing UI is not product UI

The same rule explains a mistake you will see everywhere: building the inside of an app like a landing page, or the reverse.

A marketing page (Pages people see once or twice, like a landing page. Their job is to explain and impress, so they can take bigger visual risks) is visited once or twice. Its job is to impress and explain. A product screen (Screens people use hundreds of times inside an app. Their job is to get out of the way: calm, consistent and fast) is used hundreds of times. Its job is to get out of the way.

  **Marketing energy in the product (avoid):**

The dashboard's cards stagger in every time you open it. Headlines in a display font. An off-center, playful layout. Delightful on day one; by session fifty it is slow and the asymmetry looks broken.

  **Each in its place (do this):**

The landing page gets the scroll-driven hero, the custom type and the asymmetric grid. The dashboard is calm, dense, consistent and instant, and earns its personality in small moments like a keyboard shortcut.

| | Marketing | Product |
|---|---|---|
| Seen | Once or twice | Hundreds of times |
| Goal | Convert, explain, impress | Get out of the way |
| Motion budget | Generous | Tight |
| Layout | Can break the system | Must follow the system |
| The real work | The story | The states |

*(Onboarding sits in between: theatrical like marketing, disciplined in layout like product.)*

Before reviewing any screen, ask which one it is. The same animation can be right on the landing page and wrong in the app.

## Feeling right

A screen can be correct, accessible, fast and consistent, and still feel cheap. What is left after every box is ticked is whether it **feels right**, and it is the part an agent is weakest at. Benji Taylor put it plainly after building morphing icons with Claude: the agent got them technically correct but could not tell when something looked wrong. That judgement is yours.

Feeling right is not the same as fancy. A still screen with clear hierarchy and good type feels more right than a busy one with five animations. Restraint reads as confidence; over-design reads as anxiety.

You cannot test feel with an automated check, but you can test it:

  **Step: The next-day review.** Build it, sleep, look again. If you still like it tomorrow, ship it. (Emil Kowalski's habit.)

  **Step: The slow-motion replay.** Record the interaction and play it at a quarter speed. Almost every motion bug shows up frame by frame.

  **Step: The cold-eyes test.** Show it to someone who has never seen it. Their first reaction is the truth.

  **Step: The phone-call demo.** Demo it to a friend over a call. If they say "wait, what?", the timing is off.

Do this last, after correctness and accessibility. When something "works but feels off", the fix is rarely one property; it is usually rhythm and timing across several elements.

**Check the budget (paste into your agent):**

```text
For every animation on this screen, tell me how often a user will see it (every keystroke, every action, daily, weekly, rare) and whether this is marketing or product UI. Remove or shrink anything that performs more than its frequency allows, and list what you changed.
```

**Check yourself:** Your team wants a bouncy, 600ms celebration every time someone saves a note. What does the delight-impact curve say?

- [ ] Great idea, saving should feel rewarding
- [x] Saving is daily: a small tick or highlight at most; save the big celebration for rare milestones
- [ ] Make it 1,200ms so people notice
- [ ] Only animate it on marketing pages

*Why:* Saving happens many times a day. Big delight on a frequent action becomes friction within a week; it belongs on rare moments.

## In the skill

- https://school.agents.org.in/skill/philosophy/delight-impact-curve.md
- https://school.agents.org.in/skill/philosophy/marketing-vs-product-ui.md
- https://school.agents.org.in/skill/philosophy/feeling-right.md
