Error page message - Designmönster

Error page message - Designmönster

Ibland når användaren en sida som inte längre finns, saknar behörighet till, eller som inte går att ladda på grund av ett tekniskt fel. Utan ett tydligt felsidesmeddelande möter användaren en blank yta, en kraschad vy eller en kryptisk teknisk felkod, vilket skapar osäkerhet kring om felet beror på användaren själv, om något gick sönder permanent, eller om det går att göra om. Den övergripande principen är att ett fel aldrig ska lämna användaren i en återvändsgränd: mönstret ska alltid förklara vad som hänt i vardagsspråk och erbjuda minst en konkret väg vidare.

Mönstret finns som färdig komponent i Figma under Modules.

 

Användning

Mål

  • Säkerställa att användaren snabbt förstår att något gått fel

  • Ge användaren minst en konkret åtgärd för att komma vidare

  • Kommunicera att felet inte beror på användarens agerande, när det stämmer

  • Säkerställa att meddelandet är begripligt utan teknisk bakgrund

  • Ge utvecklare en återanvändbar struktur för olika felkoder

Använd när

  • Användaren navigerar till en sida som inte existerar (404)

  • Ett tekniskt fel hindrar sidan från att laddas eller renderas (500)

  • Användaren saknar behörighet till det efterfrågade innehållet (403)

  • Systemet är tillfälligt otillgängligt på grund av planerat underhåll eller driftstörning

Använd inte när

  • Felet gäller ett enskilt formulärfält – använd mönstret för formulärvalidering istället

  • Felet är tillfälligt och kan lösas utan att lämna sidan, t.ex. en misslyckad sparning – använd en alert/notifiering istället

  • Syftet är att bekräfta en utloggning – använd mönstret Utloggad-meddelande

  • Ytan saknar innehåll av naturliga skäl, t.ex. en tom inkorg – använd mönstret Tomt tillstånd

 


Klassificering

400 – Något gick fel

Syfte och användningsområde: Förfrågan till servern kunde inte tolkas, t.ex. på grund av en trasig länk, felaktigt formaterade parametrar eller ett anrop som skickats i fel format.

  • Förklara att förfrågan inte gick att tolka, utan att lägga skulden på användaren

  • Undvik teknisk information om vad som var syntaktiskt fel

  • Erbjud en väg tillbaka, t.ex. föregående sida eller startsidan Exempel: "Något blev fel med din förfrågan. Dubbelkolla gärna att allt är rätt ifyllt och försök igen."

403 – Åtkomst nekad

Syfte och användningsområde: Innehållet finns men användaren saknar rättighet att se det.

  • Förklara att det handlar om behörighet, inte ett tekniskt fel

  • Ge vägledning om hur användaren kan få åtkomst, t.ex. kontakt med administratör

  • Exponera aldrig information om innehållet som avslöjar mer än nödvändigt Exempel: "Du har tyvärr inte behörighet att se den här sidan. Om du tror att det är fel, kontakta gärna supporten."

404 – Sidan hittades inte

Syfte och användningsområde: Sidan eller resursen existerar inte, eller har flyttats.

  • Förklara att sidan inte kunde hittas, inte att "något gick fel" generellt

  • Ge minst en väg vidare: länk till startsidan eller sökfunktion

  • Undvik att antyda att användaren gjort fel – länkar bryts, adresser ändras Exempel: "Sidan du söker har fått en ny adress eller är borttagen. 
[produkten] arbetar löpande med att förbättra struktur och innehåll på webbplatsen."

500 – Tekniskt fel

Syfte och användningsområde: Ett oväntat serverfel har inträffat.

  • Var tydlig med att felet är på systemets sida, inte användarens

  • Erbjud att försöka igen samt en väg tillbaka

  • Undvik teknisk felkod som huvudbudskap; visa den ev. som sekundär information Exempel: "Något gick fel på vår sida. Vi jobbar på att lösa det så snabbt vi kan. Försök gärna igen om en stund."

Tjänsten är inte tillgänglig just nu

Syfte och användningsområde: Systemet är otillgängligt på grund av underhåll eller känd störning.

  • Ange om möjligt när tjänsten förväntas vara tillbaka

  • Länka till en driftstatussida om en sådan finns Exempel: "Tjänsten är tillfälligt otillgänglig på grund av underhåll. Välkommen tillbaka vid senare tillfälle."

 


Riktlinjer

Beteende

Meddelandet ersätter innehållsytan (i en SPA) eller hela sidan (vid serverrenderat fel). Vid navigering inom applikationen utan full sidladdning ska fokus flyttas programmatiskt till meddelandets rubrik så att skärmläsaranvändare uppmärksammas på förändringen. Undvik animationer som drar onödig uppmärksamhet; en enkel infasning på max 150 ms räcker.

Visuell utformning

Error page message består av ikon, rubrik, brödtext och en eller flera åtgärdsknappar/länkar, byggt med etablerade spacing- och typografitokens. Ikonen är alltid ett komplement till text, aldrig ensam bärare av information. Figma-komponenten innehåller separata innehållsvarianter för respektive felkod.

image-20260810-091454.png
Exempel på meddelande för 404-sida
image-20260810-091537.png
Exempel på meddelande i en vy.

 

Innehåll och språk

Skriv i vardagsspråk utan teknisk jargong. Varje meddelande ska svara på "vad hände" och "vad kan jag göra nu". Exempel på struktur: "Sidan du sökte efter finns inte längre. Gå till startsidan eller sök efter det du letar efter."

 


Gör / Gör inte

Gör

  • Använd alltid en tydlig rubrik som namnger vad som hänt, t.ex. "Sidan hittades inte"

  • Erbjud alltid minst en konkret åtgärd (länk hem, sök, försök igen)

  • Flytta fokus till rubriken när meddelandet renderas utan sidomladdning

  • Använd ikon och text tillsammans, aldrig enbart färg, för att signalera felets karaktär

  • Skriv felkoder som sekundär, inte primär, information

Gör inte

  • Använd inte teknisk terminologi eller stacktrace i användargränssnittet

  • Lämna aldrig användaren utan någon väg vidare

  • Använd inte samma generiska text för alla feltyper

  • Förlita dig inte på att färg ensamt förmedlar allvarlighetsgrad

  • Dölj inte orsaken när den är känd och ofarlig att dela, t.ex. behörighetsbrist

 


Tillgänglighet

WCAG-relevanta kriterier

Kriterium

Beskrivning

1.3.1 Info and Relationships

Rubrik, brödtext och åtgärd måste vara semantiskt strukturerade, inte enbart visuellt separerade

1.4.1 Use of Color

Felets allvarlighetsgrad får inte kommuniceras enbart via färg på ikon eller kant

1.4.3 Contrast

Text mot bakgrund, inklusive text i knappar, ska uppnå minst 4.5:1

2.4.3 Focus Order

Vid rendering utan sidomladdning ska fokus flyttas till meddelandets rubrik

2.4.6 Headings and Labels

Rubriken ska beskriva feltypen konkret, inte generiskt ("Fel" är otillräckligt)

3.3.1 Error Identification

Användaren ska förstå vad som gått fel, i den mån orsaken är känd

4.1.2 Name, Role, Value

Åtgärdsknappar/länkar ska ha ett tydligt, beskrivande tillgängligt namn

4.1.3 Status Messages

Om meddelandet renderas dynamiskt utan sidomladdning ska det annonseras via role="alert" eller motsvarande aria-live

Riktlinjer

  • Rubriken ska vara markerad som <h1> om felet upptar hela sidan, annars på rätt nivå i sidans rubrikhierarki

  • Vid klientsidig rendering: flytta fokus programmatiskt till rubriken, eller använd role="alert" för att säkerställa uppläsning

  • Ikoner är dekorativa (aria-hidden="true") och kompletteras alltid av synlig text

  • Länktext ska beskriva målet, t.ex. "Gå till startsidan" – aldrig "Klicka här"

  • Kontrollera att kontrasten uppfyller AA även i felfärgade varianter (t.ex. röd ikon mot vit bakgrund)

 


Sammanfattning

Felsidesmeddelandet används när en sida inte kan visas – oavsett om orsaken är att den inte finns, att användaren saknar behörighet, eller att ett tekniskt fel inträffat. Mönstret ska alltid förklara orsaken i vardagsspråk och erbjuda en konkret väg vidare, med fokus- och statushantering anpassad för dynamisk rendering.