A hibaüzenetek a felmerült problémákról tájékoztatják a felhasználót, és megmutatják, hogy mit kell tenni a hiba megoldása érdekében.
Hibák akkor lépnek fel, ha nem az történik, amire egy művelet elvégzése után számít a felhasználó. A hibák frusztrációt, zavart okoznak és megnehezítik a szolgáltatás használatát, ezért különös figyelmet kell fordítani a hibák kezelésére és a hibaüzenetek megírására.
Jól átgondolt hibaüzenetekkel elkerülhetjük, hogy a felhasználónak segítséget kelljen kérnie, és segíthetünk megérteni a felhasználói felület működését.
A hibaüzenetek általában három információt tartalmaznak, függetlenül attól, hogy hol, milyen komponensben jelennek meg.
- Mi történt?
- Mi okozta a hibát?
- Hogyan lehet megoldani?

A hibaüzenetnek egyszerűnek és érthetőnek kell lennie, hogy a felhasználó biztosan megértse, mi romlott el és hogyan javítható a hiba.
- Kerüljük a szakkifejezéseket, technikai zsargonokat.
- Csak akkor írjunk hibakódot, ha valóban segít a hiba megoldásában. (Például a hibakódra kell hivatkozni az ügyfélszolgálatnál.)

A hosszú szövegeket nehezebb értelmezni, ezért a hibaüzeneteket is érdemes mellébeszélés nélkül, a lehető legrövidebben és legpontosabban megfogalmazni.
- A kérjük szó általában elhagyható.
- A sajnos, sajnáljuk szavakat csak akkor használjuk, ha mi okoztuk a hibát, és jelentős problémát – például adatvesztést – okoztunk a felhasználónak.

Akkor is kerüljük a hibáztatást, ha a felhasználó rontott el valamit.
- A neutrális hibaüzenetek kevésbé tűnnek szemrehányónak.
- Fogalmazzunk pozitívan. A hiba hangsúlyozása helyett koncentráljunk arra, hogy mit kell tennie a felhasználónak.
- Legyünk transzparensek. A probléma bagatellizálása vagy hárítása helyett vállaljuk, ha mi okoztuk a hibát.

A túl általános hibaüzenetek sokszor nem segítenek a probléma megértésében és megoldásában.
- Adjunk minél pontosabb instrukciókat a felhasználónak.
- A különböző hibaesetek – például a beviteli mezőknél – különböző megoldásokat kívánnak. Egyetlen, általános hibaüzenet helyett a konkrét esetet kezeljük.

Ha nem tudjuk a hiba okát vagy csak túl technikai magyarázattal tudnánk szolgálni, lehetünk általánosak. Fontos, hogy ilyenkor se hagyjuk magára a felhasználót, és próbáljunk megoldási lehetőséget adni.

Ugyanazokra a hibaesetekre – például ha a felhasználó üresen hagy különböző beviteli mezőket – ugyanolyan felépítésű és szóhasználatú hibaüzenetet használjunk.
Mindig egyeztessük a szóhasználatot. Ne írjuk körbe vagy ne helyettesítsük szinonimával a beviteli mező nevét a hozzá tartozó hibaüzenetben.
