Users hate error messages. Not because errors happen. But because the messages don't help.
Error messages are often cryptic, blaming, or irrelevant. When you see error message, your first thought should be 'I can fix this' not 'I'm doing something wrong.'
Why Error Messages Matter
When something goes wrong, users are already frustrated. The error message is your only chance to help or make it worse.
| Quality of Message | User Emotion | Action Taken | Outcome |
|---|---|---|---|
| Confusing technical | Frustrated | Tries random things | Gives up |
| Blaming | Annoyed | Blames themselves | Low trust |
| Unclear what's wrong | Confused | Seeks outside help | Abandons app |
| Clear, helpful | Empowered | Fixes problem | Success |
Clear error messages reduce support tickets by 30-40 percent.
The Anatomy of Good Error Message
| Component | Purpose | Example |
|---|---|---|
| Problem statement | What went wrong | Your password must contain uppercase |
| Why it happened | Context | We saw special characters but no numbers |
| How to fix it | Clear action | Add at least one number (0-9) |
| When to reach out | Safety valve | If problem persists, contact support |
Problem: Bad Error Message
User tries uploading file. Message appears: Error 405. Method not allowed.
Why it's bad: Technical jargon means nothing to user. No guidance. No next step. User thinks 'What does 405 mean?' then gives up.
Solution: Good Error Message
Your file is too large to upload (maximum 10 MB). Please compress your image or choose a smaller file, then try again.
Why it's good: Explains problem. Shows limit. Suggests solution. User knows exactly what to do.
Error Message Guidelines
1. Be Specific, Not Generic
| Generic | Specific |
|---|---|
| Error: Invalid input | Your email address is missing the @ symbol |
| Server error occurred | We're temporarily experiencing heavy traffic. Please try again in 2 minutes. |
| Format not supported | We accept JPG, PNG, and GIF files. You selected TIFF. |
| Connection failed | Your internet connection dropped. Check WiFi and try again. |
The specific message gives actionable information. Generic message gives nothing.
2. Use Plain Language
| Technical | Plain Language |
|---|---|
| HTTP 401 Unauthorized | You need to log in to access this |
| Payload validation failed | The information you sent wasn't complete |
| Authentication token expired | Your login time ran out, please log in again |
| Query syntax error | Your search didn't work. Try fewer words. |
Avoid acronyms. Avoid technical jargon. Use words regular people understand.
3. Don't Blame the User
| Blaming | Helpful |
|---|---|
| Invalid format entered | Date should be MM/DD/YYYY |
| Wrong credentials provided | Email or password incorrect |
| Too many failed attempts | You've tried 4 times. Try again in 15 minutes. |
| Improper file type | We accept PDF files. You selected DOC. |
Blaming makes users feel stupid. Being helpful builds trust.
4. Provide Solutions
| Problem-Only | Problem Plus Solution |
|---|---|
| Username already exists | This username is taken. Try adding a number (e.g., John2026) or choose something different. |
| Payment declined | Your card was declined. Check: card number, expiration date, CVV. Or try a different card. |
| Download failed | Download failed. Check your internet connection and try again. If it continues, try a different browser. |
Always provide next steps. Even if just 'contact support.'
Common Error Message Mistakes
| Mistake | Problem | Better Approach |
|---|---|---|
| Too technical | Users don't understand | Translate to everyday language |
| No solution offered | Users stuck | Always offer next step |
| Appears too briefly | Users miss it | Keep visible or make dismissible |
| All caps | Feels like yelling | Normal capitalization |
| Red text only | Color blind users miss | Use text plus icon |
| Generic codes | Meaningless | Descriptive text always |
Error Message Examples by Context
Password Requirements
Bad: Special characters required.
Good: Your password must have at least one special character (!@#$%) and be at least 8 characters long. You entered 7 characters with no special characters.
Form Validation
Bad: Invalid email.
Good: We need a valid email address. Make sure you include the @ symbol and a domain (like gmail.com).
Payment Error
Bad: Card declined.
Good: Your card was declined. This might happen if funds are insufficient, the card is expired, or fraud detection flagged it. Try: checking your balance, confirming the expiration date, or contacting your bank.
Upload Error
Bad: File too large.
Good: Your image is 45 MB but maximum is 10 MB. You can: compress the image (we recommend under 8 MB), choose a different image, or contact us for large file options.
Network Error
Bad: Connection timeout.
Good: We couldn't reach the server. Check your internet connection. If still having problems, we might be doing maintenance. Current status: all systems normal.
Implementation Checklist
- Audit all error messages in your product
- Identify unclear or technical messages
- Rewrite with plain language
- Add solutions to all messages
- Test with users unfamiliar with product
- Use consistent formatting and tone
- Make error messages visible and readable
- Avoid accusatory language
- Include contact support as fallback
- Test again with real users
The Psychology of Good Error Messages
Good error messages: 1. Take responsibility (system side, not user side) 2. Explain clearly (no jargon) 3. Offer solutions (actionable next steps) 4. Show empathy (understand user frustration) 5. Build trust (prove system is helpful)
Measuring Success
Track these metrics:
| Metric | Goal | Current |
|---|---|---|
| Support tickets from errors | Reduce 30 percent | Track |
| Time to resolve error | Under 2 minutes | Measure |
| User satisfaction | 80 percent or higher | Survey |
| Repeat errors | Zero | Monitor |
After improving error messages, support tickets typically drop 25-40 percent.
Final Thoughts
Error messages are not obstacles. They're opportunities. To help. To build trust. To prove your product cares about users.
The best error message helps users fix problems without leaving your product. Without contacting support. Without frustration.
Write error messages like you're helping a friend. Be clear. Be specific. Be kind. Your users will thank you.
Tags
Taresh Sharan
support@sharaninitiatives.com