Interested in UX writing? Check out our complete guide to UX writing and content design.
Error messages may be small bits of text, but they carry heavy weight in user experience. A confusing or curt error message can derail a user’s journey, while a clear and empathetic one can turn a frustrating moment into a quick course correction.
By mastering how to write an effective error message, you’ll help users understand issues and move forward with confidence. Let’s dive into the principles that make error messages user-friendly and effective.
#1. Keep error messages clear and concise
Users should be able to read an error message in a split second and understand exactly what’s wrong. That’s why brevity and clarity are paramount when crafting error message text.
In practice, this means an ideal error message is one short, straightforward sentence (or two at most) that plainly states the problem. Avoid jargon or technical codes in the user-facing message. For example, instead of writing something like:
“Error 4002: Invalid input in field 6.”
…you can simply state:
“Emails can’t contain special characters. Please try again.”
The latter is brief, clear, and directs the user on how to fix the issue. Remember, less is more – especially under stressful error-state conditions. A concise error message respects the user’s time and cognitive load, letting them quickly read, understand, and act without wading through unnecessary words.
#2. Provide specific details and next steps
An effective error message doesn’t stop at telling the user something went wrong – it tells them what went wrong and how to fix it.
Vague messages like “Error – invalid input” or “Something went wrong” leave users frustrated and stuck. Always aim to include specific context or details about the error, and guide the user toward a solution. For example, if a username a user tries is already taken, a good error message might read:
“That username is taken. Try adding a number or choose another name.”
This message specifies the problem (username is taken) and offers a clear next step (choose another or modify it).
Even in cases where you can’t fully resolve the issue in-app, give constructive advice: e.g., “Server error. Please check your internet connection and try again.” Here you’re not fixing the server, but you’re telling the user what they can do next (check connection, retry).
When writing error messages, ask yourself: If I saw this, would I know what to do?
If the answer is no, keep refining. Include just enough detail about what’s wrong (e.g. “password must be 8+ characters”) and instructions to move forward (“reset your password here,” “re-upload the file,” etc.).
By being specific and action-oriented, you transform the error message from a dead-end into a helpful signpost that keeps users on track.
#3. Adopt an empathetic tone (don’t blame the user):
Error messages are moments of friction, so our tone needs to be especially considerate. One golden rule is never blame the user for the error. Even if the user did make a mistake (like entering an email incorrectly), phrasing matters.
A user should never feel scolded by an interface. Avoid wording like “you did X wrong” which blames the user. That type of language not only frustrates people, it can come off as rude or dismissive. Instead, adopt a neutral or empathetic tone that focuses on the issue, not the person.
One technique is to use passive voice or gentle wording to describe the problem. For example, rather than saying:
“You entered an invalid ZIP code.” (This sounds accusatory)
…you could say:
“We couldn’t find that ZIP code. Please enter a 5-digit ZIP.”
Notice how the second phrasing removes “you” and simply describes the issue, then immediately guides the user on how to fix it. This subtle shift makes the message more user-friendly.
It’s okay to express empathy too – a simple “sorry” or a phrase like “please try again” can soften the tone, as long as it’s sincere and not overdone. The goal is to sound like a helpful partner, not a strict schoolteacher.
Also: the word “invalid” should be avoided at all costs. It means nothing to the user and doesn’t actually describe what the problem is.
Also, consider the user’s emotional state: they might already be annoyed the process isn’t going smoothly. An empathetic error message might acknowledge that. For instance: “Oops – something went wrong on our end. Please try refreshing the page.”
Here, “something went wrong on our end” takes the blame off the user and implies the system is at fault (which puts users at ease). Keep the message polite and reassuring. By writing with empathy and without blame, you show users that you’re on their side – even when things go wrong.
#4. Use positive language and humor sparingly
The language we choose for error messages can either defuse a tense situation or inflame it. Wherever possible, use positive or neutral wording rather than negative words.
For example, instead of saying “Invalid password.” (negative term “invalid”), you could say:
“Enter a password with at least 8 characters.”
…which focuses on the positive action required.
This subtle tweak avoids words that might feel like a slap on the wrist. It’s also a good practice to avoid alarmist phrasing like “failed” or “error!” in the main text; often a simple statement of the condition and solution is enough.
Another style tip: avoid ALL CAPS and excessive exclamation marks in error text. Using all caps can come across as shouting at the user – nobody likes to feel yelled at by an app. “PLEASE ENTER A VALID NAME!!” is not only jarring, it adds stress to an already frustrating moment.
Stick to normal sentence casing and at most one exclamation if truly needed (and usually, it’s not needed at all). Keeping a calm tone will reassure users that the situation is under control.
What about humor? Many brands today use witty, lighthearted copy – and a touch of humor in an error message can humanize the experience. However, humor must be used carefully in error messages.
The general rule is to never undermine the clarity of the message or the user’s ability to solve the problem. A funny aside is only appropriate if the error context is minor and your brand voice allows it. Even then, it should be gentle. As the Mailchimp content style guide wisely says, “don’t go out of your way to make a joke – forced humor can be worse than none at all. If you’re unsure, keep a straight face.”
For instance, saying:
“Uh-oh, something’s not right! The email didn’t send – maybe gremlins are messing with our servers. Try again?”
…might make a user smile or it might annoy them if they’re in a hurry. On the other hand, a more straightforward yet still warm message like…
“Hmm, the email didn’t send. Let’s try again in a moment.”
…is friendly without being silly.
Always prioritize being helpful over being funny. A bit of personality is fine – just ensure it doesn’t impede understanding or come off as making light of the user’s problem. In sum, stay positive, calm, and clear. Humor is the spice, not the main ingredient, of an error message: use sparingly, or not at all.
#5. Make error messages noticeable and helpful
Writing is only one part of effective error messages; design and placement play a big role too. An expertly written error line won’t help if the user never sees it or can’t understand it at a glance. Follow UX design best practices so that error messages are highly visible and contextual:
Place error messages near the problem spot
Whenever possible, use inline validation – that is, show the error message right next to the field or action that needs attention. For example, if a form field is empty or formatted incorrectly, the message should appear adjacent to that field (and perhaps highlight the field in red).
Users get immediate feedback, fix issues faster, and feel more confident, as opposed to being hit with a list of errors after submitting a form. If inline placement isn’t possible, ensure the error is clearly linked to its context (e.g., by mentioning the field name or highlighting it).
Make it visually clear
Use design cues like color and icons consistently. Most interfaces use red or orange to indicate errors. A little warning icon next to the text can also draw attention, which is helpful especially for color-blind users who might miss a color change. Also, use a text style (bold, or a slightly larger font) that stands out from the rest of the UI.
The goal is for the error state to be unmissable. However, also ensure accessibility – for example, don’t rely on color alone. Include descriptive text so screen readers announce the error to visually impaired users, and ensure the text contrasts well with the background.
Be mindful of multiple errors
If multiple things go wrong, avoid dumping a long list of error messages all at once at the top of a form – that can overwhelm users. It’s often better to display errors one at a time at their respective locations, or prioritize and show the most critical error first. Guide them step by step if possible.
In short, think about the presentation of your error text as part of the user flow. A well-designed error state means the user notices the message, understands which part of their input it’s referring to, and can easily act on the advice given.
Good UX writing paired with good UX design makes error handling seamless and even confidence-building for users.
Examples of effective error messages (dos & don’ts)
Let’s bring it all together with a few quick examples of error messages done right (and wrong). These illustrate the dos and don’ts covered in the previous sections:
-
DON’T: “Form not submitted. ERROR 1234.” (Too vague and technical)
DO: “Please fill in the required Name field to submit the form.” (Specific about what’s wrong and how to fix it) -
DON’T: “You failed to enter a valid credit card number!” (Blaming tone, negative wording, and an exclamation)
DO: “Please enter a 16‑digit credit card number.” (Neutral tone, no “you” blame, and clear instruction) -
DON’T: “!!! NETWORK FAILURE !!!” (All caps, alarming tone, no guidance)
DO: “Network error – check your internet connection and try again.” (Calm language, explains the issue, offers a next step) -
DON’T: “Oops! Our database blew up. Guess this isn’t your day 😢.” (Too much humor, not helpful)
DO: “We’re sorry – something went wrong on our end. Please try reloading the page in a minute.” (Courteous, takes responsibility, directs next action)
Each “DO” example above demonstrates our core best practices: clarity, specificity, a respectful tone, and helpful guidance. When writing your own error messages, it can help to follow a similar pattern. State what the issue is in plain language, then what the user can do about it. Keep the tone factual yet friendly.
It’s also wise to review your error messages as a set – ensure consistency in wording and tone across your product. Many companies include error message guidelines in their UX content style guides for this reason, to keep messages consistent and on-brand.
As you craft messages, consider creating a checklist or style guide:
- Are we using sentence case?
- Are we saying “please” where appropriate?
- Are we avoiding blame?
This ensures every error message feels like it’s coming from the same caring company voice, no matter where the user encounters it.
Finally, remember to test your error messages if possible. Observe real users (or colleagues) as they encounter a simulated error – do they understand the message and know what to do next? Gathering this feedback can reveal if your wording is confusing or if additional information is needed. Iterating on microcopy based on user insights is a hallmark of good UX writing practice.
With these examples and tips in mind, you’re well on your way to crafting error messages that not only inform users of an issue, but also guide and even reassure them through it.
As you refine your product’s error messages, keep consistency in mind (consider documenting guidelines in a style guide or pattern library) and stay true to your brand’s voice without ever sacrificing clarity. With thoughtful design and wording, an error message can actually enhance the user experience by reducing confusion and getting users quickly back on track.
Frequently asked questions about error messages
1. What makes a good error message in UX?
A good error message is clear, specific, and actionable. It tells users what went wrong, why it happened (if helpful), and what they can do next. It avoids technical jargon and focuses on guiding the user toward a solution.
2. Should error messages be polite or direct?
Error messages should always be respectful, but the tone depends on the context. Aim for clarity first—then adjust the tone to match your brand voice. Being too playful can cause frustration, especially in high-stress situations.
3. How do I write error messages that users actually understand?
Start by identifying the exact problem the user is facing. Use plain language, keep it short, and provide a clear path forward. If possible, test your message with real users to spot confusion or gaps.