Gå direkt till sidans huvudinnehåll

Varför använda den 75:e percentilen för webbprestanda­mätning?

En mätare som indikerar hastighet

P75? P75 är gränsvärdet som 75 % av alla mätningar är bättre än (och 25 % sämre än). Så varför är det intressant när vi mäter webbprestanda?

Google valde P75 för Core Web Vitals baserat på två huvudkriterier, att:

  1. Säkerställa att majoriteten av besökare (3 av 4) upplever målprestandan.
  2. Värdet ska vara motståndskraftigt mot avvikelser.

Det representerar en medveten balans mellan att fånga användarupplevelsen och att försöka undvika att extremvärden förvränger resultaten. För webbplatsägare innebär detta att om 75% av besöken når goda tröskelvärden klassificeras hela webbplatsen som godkänd – men samtidigt kan upp till 25% av användarna ha dåliga upplevelser utan att det påverkar bedömningen.

Den statistiska logiken bakom percentiler istället för medelvärden

Webbprestanda­data följer inte normalfördelning utan uppvisar högerskeva, långsvansade fördelningar. Detta gör att traditionella medelvärden blir extremt missvisande. Om medianlatensen är 50ms men 1% av användarna upplever 800ms+ kan medelvärdet visa 100ms, men samtidigt dölja kritiska problem för en betydande användargrupp.

Google förklarar problemet explicit i sin dokumentation:

“These goals are somewhat at odds with one another. To satisfy the first goal, a higher percentile is typically a better choice. However, with higher percentiles, the likelihood of the resulting value being impacted by outliers also increases.”
- How the Core Web Vitals metrics thresholds were defined (web.dev)

Percentiler ger istället en tydligare bild av fördelningen – P50 visar en typisk upplevelse, P75 visar vad tre fjärdedelar upplever, och P90/P95 visar på svansproblemet. Den kritiska insikten är att med 100 besök krävs endast 5 avvikare för att påverka P95-värdet, medan P75 kräver 25 avvikare för att påverkas. Denna matematiska skillnad förklarar varför man kan vilja undvika högre percentiler.

Samtidigt finns det argument för att omfamna många av våra avvikelser. Ibland kallade edge cases eller i boken Design for Real Life kallat stress cases:

“… by identifying stress cases and designing with compassion, you'll create experiences that support more of your users, more of the time.”

Eller det min udda persona Sanjay utstår i boken Webbanalys (2016):

“Något onykter spräckte han skärmen då han hade mobilen i bakfickan när han stupade under leken irländsk julafton. Skärmen ger nu knepiga färgvariationer runt sprickorna. Hans kognitiva förmåga är inte på topp, motoriken inte heller helt hundra och det är riktigt dålig mottagning där han befinner sig.”
Webbanalys: Del 1 – Introduktion till webbanalys

Ibland är det högst avgörande att det fungerar även för de som avviker från genomsnittet vi förutsåg.

Praktiska konsekvenser för webbplatsägare

CrUX använder ett 28-dagars rullande fönster som kombineras med P75, vilket skapar stabilitet men också en trög återkopplingscykel. Förbättringar syns inte syns i CrUX-data förrän 3-4 veckor efter en fix, eftersom det tar tid innan 75% av datasetet består av nya mätningar. Detta betyder att akuta prestandaåtgärder inte återspeglas omedelbart.

En kritisk blind fläck är att upp till 25% av användarna kan ha dåliga upplevelser utan att det påverkar P75-klassificeringen. Dave Smart från Tame The Bots beskriver:

“[…] you could theoretically have an issue on the site that meant nearly 25% of the visitors were having a bad experience, but the other 75% were good. That's still nearly 1 in 4 of your users having a bad time on your site, even though the 75th percentile was telling you you pass."
75th Percentile isn't the Only Measure for Core Web Vitals (TametheBots)

Experternas perspektiv visar både stöd och kritik

Tim Kadlec, en framstående webbprestandakonsult kopplad till WebPageTest, förespråkar P90-P95 för prestandabudgetar:

“Focusing on the median or average is the equivalent of walking around with a pair of blinders on. We’re limiting our perspective and, in the process, missing out on so much crucial detail.”
Tim Kadlec

Kadlec betonar att långsvansen inte uppfinner nya problem utan exponerar svagheter som redan finns.

Harry Roberts (CSS Wizardry, Google Developer Expert) tar en mer nyanserad position:

“[…] CrUX and web vitals data is based around 75th percentile. I think there's a lot of value investing in that top 20th percentile, the worst 20%."
Smashing Podcast Episode 34 With Harry Roberts: What’s The State Of Web Performance? (Smashing Magazine, 2021)

Och du kan koppla P95-förbättringar direkt till intäktsökningar när det gäller tillgänglighet. Men medge att P75 är rimligt som baslinje att utgå ifrån.

Philip Walton från Google Developer Relations rapporterade 2021 att almost half of the web pages scoring 100 on Lighthouse failed to meet the recommended Core Web Vitals thresholds. This highlights the disparity between lab-generated Lighthouse scores and real-world user experiences enligt Devntech.

Syntetiska tester kan inte ersätta RUM-baserad P75-mätning. Som alltid är en mix av metoder alltid att föredra.

RUM och syntetiska tester mäter fundamentalt olika saker

Lighthouse mäter labbdata! I en kontrollerad miljö med fördefinierade nätverks- och enhetsförhållanden. CrUX mäter fältdata! Verkliga användares faktiska upplevelser aggregerade vid P75.

“Lab data is determined by loading a web page in a controlled environment with a predefined set of network and device conditions.”
Why lab and field data can be different (and what to do about it) (web.dev)

Fältdata däremot är baserat på alla användare som besöker en webbsida och råkar dela med sig av mätetalen om sin sidupplevelse.

Denna distinktion är avgörande. Lighthouse-betyg kan användas för debugging och identifiering av problem, men endast RUM/CrUX visar vad användare faktiskt upplever. P75-valet förstärker denna filosofi genom att ge representativitet för majoriteten av verkliga användare över de laboratorieoptimerade scenarier vi i bästa fall testar av syntetiskt innan driftsättning och resultatet påverkar någon faktisk användare.

Fördelar och begränsningar med P75

P75 erbjuder flera tydliga fördelar:

  • Global tillämpbarhet över diverse användarförhållanden och regioner.
  • Stabilitet som reducerar brus i mätningar.
  • Uppnåbarhet som gör målen realistiska för de flesta webbplatser.
  • Enkelhet genom ett enda värde per metrik som är lätt att kommunicera.

SpeedCurve sammanfattar:

“The 75th percentile is a good balance of representing the vast majority of measurements, and not being impacted by outliers. While not as stable as the median, the 75th percentile is a good choice for seeing medium- to long-term trends. We also think the 75th percentile is the best value to use when setting performance budgets.”
Averages, medians & percentiles (SpeedCurve)

Begränsningarna är dock väldokumenterade. Återkopplingscykeln kan ta flera veckor, oförmågan att differentiera svårighetsgrad inom de sämsta 25%, och risken att maskera problem för långsvansanvändare. Vissa rekommenderar därför P75 för frontend-applikationer med hög variabilitet, medan P95 passar bättre för backend-system.

Core Web Vitals och kompromisser inom kvantitativ webbanalys

Googles val av P75 för CrUX och Core Web Vitals representerar en pragmatisk kompromiss för en global webbstandard. Den statistiska motiveringen är balansen mellan majoritetsrepresentation och motståndskraft för avvikelser. Experternas konsensus är att P75 bör betraktas som en minimibaslinje snarare än det ultimata målet.

Organisationer som prioriterar prestanda bör internt övervaka P90-P95 för att förstå hela spannet av användarupplevelser. De bör använda histogramfördelningar istället för enskilda percentilvärden, och korrelera prestandadata med affärsmätetal för att hitta sina optimala tröskelvärden. P75 säkerställer att tre av fyra användare har goda upplevelser – men den fjärde användaren kräver fortfarande vår uppmärksamhet.

Läs mer om prestandamätning: