Heuristics H5 5 min read

The best error is the one that never happens

05 Heuristic 5 Error Prevention

Carefully design systems that prevent problems from occurring. Eliminate error-prone conditions, or check for them and present users with a confirmation before they commit.

It's not about how beautifully you design an error message. It's about making sure that error never needs to appear in the first place. Prevention over cure — in medicine, in life, and in design.

01 — Real-world story

The waterfall detour that didn't need to happen

Personal story — Western Ghats, 2021

The notice board was at the gate. It should have been on the highway

In 2021, as lockdowns were easing across India, I decided to visit a beautiful waterfall in the Western Ghats. I turned off the highway, took a smaller road toward the main entrance, and after about five minutes of driving, hit a long queue of cars.

Oddly, many vehicles were reversing and turning back. When I reached the gate, I finally saw the reason — a small board that read: "Only people with a COVID-negative report or two doses of vaccination allowed."

I had neither. I turned around and left — alongside dozens of others who made the same wasted journey.

That notice board was hanging right at the gate. If it had been placed on the main highway, everyone could have made an informed decision before turning off — saving time, fuel, and frustration for hundreds of people.

The information existed. The timing was wrong. Moving the sign upstream prevented every wasted trip.

"Could I have prevented this error earlier in the journey? That's the question every designer should ask — not just when things break, but when designing the flow from the start."

— The core question of H5

02 — Digital examples

Prevention shows up everywhere in good products

The waterfall principle appears everywhere in digital design. The product already has the information — the question is only when it chooses to share it with the user.

Left: stock status shown at listing level — no wasted checkout. Right: inline validation catches a typo before login is attempted. Both prevent errors before they can happen.

Out of stock after adding to cart is a classic error that could be caught earlier. When stock status appears at listing level, users don't waste effort adding, carting, and checking out something they can't buy.

Inline login validation — catching a letter typed instead of a digit before the user hits submit — turns a frustrating blocked login into a quick self-correction. The system spotted the error before it became one.

03 — Don Norman's framework

Not all errors are the same — slips vs mistakes

This distinction comes from Don Norman's theory of human error, and it's directly relevant to how we design for prevention. Understanding the type of error changes how you prevent it.

Slip

Right intention, wrong execution

Definition

A slip happens when the user knows what they want to do — but their execution goes wrong. Often caused by habits, autopilot behaviour, or interface layout.

Real-world example

You reach for toothpaste on autopilot — but someone moved the shaving cream to the same spot. You grab it without thinking. Your intention was right; the context changed without you noticing.

UX example

You mean to click "Reply" in an email — but hit "Reply All" instead, because both buttons sit right next to each other. The intention was correct. The layout caused the slip.

How to prevent
  • Separate destructive actions from safe ones
  • Use spatial distance between Reply and Reply All
  • Add confirmation for high-stakes actions
Mistake

Wrong intention from the start

Definition

A mistake happens when the intention itself is wrong — due to incorrect assumptions, missing knowledge, or misunderstanding the context entirely.

Real-world example

You feel body pain and assume it's from your gym session — but it's actually a fever. You had the wrong mental model of the situation, so every action based on that model was wrong from the start.

UX example

A new user tries to enter a PAN number into a field meant for GSTIN. The form gave no guidance — so they made a logical assumption that happened to be incorrect for this system.

How to prevent
  • Clear labels and field-level instructions
  • Avoid ambiguous terminology
  • Inline tooltips and examples
  • Smart defaults that guide correctly

Slips are interface problems. Mistakes are information problems. Both are preventable — but only if you know which one you're dealing with.

04 — Why it matters

Prevention feels like magic to the user

Error prevention = peace of mind

Catch problems before they become blockers. Users never experience the frustration of something that was quietly prevented.

Not all errors are equal

Understand whether users are making slips or mistakes. The cause determines the cure — and therefore the prevention strategy.

Clarity and timing matter

The earlier you surface a potential issue, the less frustrating the experience. Don't wait until checkout to share information that was available at listing.

Prevention makes users feel smart

When a system guides users away from failure, they don't feel warned — they feel capable. That's the quiet power of good error prevention.

05 — Closing thought

Don't just write great error messages. Design systems that don't need them

Great UX doesn't wait for users to fail. It removes the obstacle before users reach it — like a sign on the highway instead of at the gate. The waterfall notice board didn't need better design. It needed better placement.

Ask this question for every critical moment in your product: could I have caught this earlier? Usually, the answer is yes.

The lesson from H5

The best error message is one that never needs to appear. Design the system so users don't need rescuing — and when they occasionally do, then show them the way out.

T1

Apply this to your next design

Pick any form or multi-step flow in your product. Map every point where a user could fail. Then ask: could this have been prevented one step earlier? Validation, warnings, smart defaults — move them upstream.

T2

Up next

H6: Don't Make Them Remember. Show Them. Why making users remember things is a design failure — and how showing instead of asking changes the entire experience.