GlossaryError States

The moments that define whether users trust your product

Error states are not edge cases — they're high-stakes UX moments. How your product handles failure tells users more about your design maturity than almost anything else.

What Error States Are

An error state is what a user sees when something goes wrong — a failed form submission, a broken connection, a validation failure, a search with no results, a server timeout. Every product has them. Very few products treat them with care.

Error states aren't edge cases. In complex B2B products, they're regular occurrences. And how your product handles them is one of the clearest signals of design maturity — or its absence.

Why They Hurt Retention

Bad error handling doesn't just frustrate users — it erodes trust. A user who hits an unhelpful error at a critical moment (submitting an invoice, completing a data import, finishing a configuration) doesn't just close the tab. They start questioning whether the product is reliable enough to depend on.

Research from Baymard Institute shows that poor inline validation alone accounts for a significant portion of form abandonment. In B2B SaaS — where users are performing more complex, higher-stakes tasks — the damage compounds.

Support tickets are often the most visible symptom. If your queue is full of "I got an error and didn't know what to do" messages, you have a systemic error state problem.

Anatomy of a Useful Error Message

A well-designed error message answers three questions:

  1. What went wrong — be specific. "Something went wrong" tells users nothing. "Payment declined — card number doesn't match billing address" is actually useful.
  2. Why it happened — where relevant, give enough context that users understand the failure
  3. What to do next — every error message needs a clear recovery path, even if that path is just "contact support"

Form validation errors have an additional requirement: proximity. The message should appear next to the field that caused the problem, not at the top of the page after a failed submission. Inline validation, shown while users are still typing, catches errors before they become blockers.

Common Mistakes Teams Make

Most error state problems fall into a handful of patterns:

  • Generic messages — "An error occurred" tells users nothing actionable
  • Technical jargon — stack traces and HTTP status codes belong in logs, not in interfaces
  • Blame language — "You entered an invalid email" vs "That doesn't look like a valid email" land very differently with users
  • No recovery path — an error message with no next step is a dead end
  • Suppressing errors entirely — some teams hide failures to appear polished; users notice anyway, and the experience feels worse for the confusion

If you're running a {{LINK:heuristic-evaluation}}, error prevention and recovery is one of Nielsen's ten heuristics for exactly this reason.

What Good Looks Like

Stripe's error messages are frequently cited as a benchmark — specific, readable, and always actionable. When a card fails, Stripe tells you exactly why and what to try next.

The standard to aim for: a user should be able to resolve any error without leaving the screen, contacting support, or feeling blamed. Most products are nowhere near this bar. Getting there doesn't require a redesign — it requires treating error states as first-class design surfaces, not afterthoughts.

Pair this work with solid {{LINK:usability-testing}} and you'll surface the most painful failure moments before they make it to production.