062Usability heuristic
Help users recognize, diagnose, and recover from errors
Error messages should be expressed in plain language (no codes), precisely indicate the problem, and constructively suggest a solution.
Why it matters
Errors are inevitable. Messages that explain what happened and how to fix it reduce support load and rebuild trust.
What to inspect
- Do error messages state what failed in human language and what to do next?
- Are field-level errors tied to inputs with sufficient contrast?
- After recovery, is state clear (what was saved, what was not)?
- Are validation rules discoverable before submit where possible?
Common anti-patterns
- Generic “Something went wrong” with no correlation id for support.
- Blaming the user (“Invalid input”) with no field pointer.
- Clearing entire forms on one invalid field.
Critique prompts
- If this flow fails, can the user fix it without leaving the product?
- Does the error text tell them exactly which value to change?