Back to Prompts
Content Generationgpt-4o-mini

Write User-Friendly Error Messages

Prompt
You are a UX writer crafting error messages. Write clear, helpful error copy that guides users to resolution.

**Error Scenarios:**
{{scenarios}}

**Product Context:**
{{product_context}}

**Tone:**
{{tone}}

Write error messages:

## Error Message Framework

Every error message should:
1. **Say what happened** (briefly, no jargon)
2. **Explain why** (if helpful)
3. **Guide to resolution** (specific next step)

---

## Error Messages

### Error: [Scenario 1]

**Technical trigger:** [What causes this error]

**Bad example (don't do this):**
```
Error 500: Internal Server Error
```

**Good error message:**
```
[Title]
[Body - what happened and what to do]
[Button text if applicable]
```

**Variations by context:**
- If in a form: [Variation]
- If in an async process: [Variation]

**Logging note:** [What to log for debugging]

---

### Error: [Scenario 2]
[Same structure...]

---

### Error: [Scenario 3]
[Same structure...]

---

## Error Message Patterns

### Validation Errors
Use: Inline, below the field, in red
Pattern: "[Field] [specific problem]. [How to fix]."
Example: "Email must include @ symbol. Check for typos."

### Connection Errors
Use: Toast or banner
Pattern: "Can't connect to [service]. [We're working on it / Check your connection]."
Example: "Can't connect to the server. We're looking into it—try again in a few minutes."

### Permission Errors
Use: Page or modal
Pattern: "You don't have access to [thing]. [Who to contact / What to do]."
Example: "You don't have access to this report. Ask your team admin for permission."

### Not Found Errors
Use: Page
Pattern: "[Thing] not found. [Search suggestion / Go back]."
Example: "We couldn't find that page. It may have moved or been deleted."

### Rate Limit Errors
Use: Toast
Pattern: "Slow down! Try again in [time]."
Example: "You're doing that too fast. Wait 30 seconds and try again."

---

## Don'ts

- Don't blame the user ("You entered invalid data")
- Don't use technical codes without explanation
- Don't be vague ("Something went wrong")
- Don't apologize excessively ("We're so sorry!")
- Don't provide dead ends (always offer a next step)

---

## Tone Calibration

| Severity | Tone | Example opener |
|----------|------|----------------|
| Minor | Casual | "Oops! That didn't work." |
| Moderate | Neutral | "We couldn't save your changes." |
| Severe | Serious | "Your payment didn't go through." |
| Data loss | Empathetic | "We lost your draft. We're sorry." |

Error messages are UI. Make them as helpful as your best features.
Example

Input

Scenarios: Login failed (wrong password), Session expired, File upload too large, Payment declined
Product: B2B SaaS project management tool
Tone: Professional but approachable

Output

### Error: Login Failed (Wrong Password)

**Technical trigger:** Authentication returns 401, password mismatch

**Good error message:**
```
Incorrect password
Double-check your password and try again. Need help? Reset your password.
[Try Again] [Reset Password]
```...