How do I write an error message that tells users what to do next?
Quick answer
Write the message in three parts: say what could not be completed, explain what the user can do next, and offer a useful alternative if that action may not work. Use plain words, name the relevant item or action, and avoid blaming the person. For example: “We couldn’t upload your file. Check that it’s the right format, then try again.”
The question, the details, the next step.
A practical checklist
Name the task or outcome that could not be completed.
Give one specific next action that is actually available.
Use neutral wording that does not blame the user.
Offer a relevant alternative when the first action may fail.
Remove unexplained codes, unsupported causes, and guarantees.
A few more useful answers
Should an error message include a technical error code?
Use a code only when it helps the intended reader take action or report the issue. Pair it with a plain-language explanation rather than making the code the whole message.
Is “Please try again” ever enough?
It can work when retrying is a clear and reasonable next step. If the user needs to wait, change something, or choose another path, say so specifically.
What if there is no action the user can take?
Say what could not be completed and give the best available next step, such as contacting [support route] with [useful reference, if available]. Do not invent a fix.
