Hoe Lighthouse uw algehele prestatiescore berekent
Over het algemeen dragen alleen statistieken bij aan uw Lighthouse Performance-score, niet de resultaten van Opportunities of Diagnostics. Dat gezegd hebbende, verbetert het verbeteren van de mogelijkheden en diagnostiek waarschijnlijk de metrische waarden, dus er is een indirecte relatie.
Hieronder hebben we uiteengezet waarom de score kan fluctueren, hoe deze is samengesteld en hoe Lighthouse elke afzonderlijke statistiek scoort.
Waarom uw score fluctueert
Een groot deel van de variabiliteit in uw algehele prestatiescore en metrische waarden is niet te wijten aan Lighthouse. Wanneer uw prestatiescore fluctueert, komt dit meestal door veranderingen in de onderliggende omstandigheden. Veel voorkomende problemen zijn onder meer:
- A/B-tests of wijzigingen in de weergegeven advertenties
- Wijzigingen in de routering van internetverkeer
- Testen op verschillende apparaten, zoals een krachtige desktop en een laag presterende laptop
- Browserextensies die JavaScript injecteren en netwerkverzoeken toevoegen/wijzigen
- Antivirus software
Lighthouse's documentatie over Variabiliteit gaat hier dieper op in.
Bovendien kan het, ook al kan Lighthouse u één algemene prestatiescore geven, nuttiger zijn om de prestaties van uw site te beschouwen als een verdeling van scores, in plaats van als een enkel getal. Zie de introductie van gebruikersgerichte prestatiestatistieken om te begrijpen waarom.
Hoe de prestatiescore wordt gewogen
De prestatiescore is een gewogen gemiddelde van de metrische scores . Uiteraard hebben zwaarder gewogen statistieken een groter effect op uw algehele prestatiescore. De statistische scores zijn niet zichtbaar in het rapport, maar worden onder de motorkap berekend.
Vuurtoren 10
Controle | Gewicht |
---|---|
Eerste inhoudsvolle verf | 10% |
Snelheidsindex | 10% |
Grootste inhoudsvolle verf | 25% |
Totale blokkeertijd | 30% |
Cumulatieve lay-outverschuiving | 25% |
Vuurtoren 8
Controle | Gewicht |
---|---|
Eerste inhoudsvolle verf | 10% |
Snelheidsindex | 10% |
Grootste inhoudsvolle verf | 25% |
Tijd voor interactief | 10% |
Totale blokkeertijd | 30% |
Cumulatieve lay-outverschuiving | 15% |
Hoe metrische scores worden bepaald
Zodra Lighthouse de prestatiestatistieken heeft verzameld (meestal gerapporteerd in milliseconden), wordt elke ruwe metrische waarde omgezet in een metrische score van 0 tot 100 door te kijken waar de metrische waarde valt in de Lighthouse-scoreverdeling. De scoreverdeling is een lognormale verdeling die is afgeleid van de prestatiestatistieken van echte websiteprestatiegegevens op HTTP Archive .
Largest Contentful Paint (LCP) meet bijvoorbeeld wanneer een gebruiker waarneemt dat de grootste inhoud van een pagina zichtbaar is. De metrische waarde voor LCP vertegenwoordigt de tijdsduur tussen het laden van de pagina door de gebruiker en het weergeven van de primaire inhoud van de pagina. Op basis van echte websitegegevens geven de best presterende sites LCP weer in ongeveer 1.220 ms, zodat de metrische waarde wordt toegewezen aan een score van 99.
Als we iets dieper gaan, gebruikt het Lighthouse-scorecurvemodel HTTPArchive-gegevens om twee controlepunten te bepalen die vervolgens de vorm van een log-normale curve bepalen. Het 25e percentiel van HTTPArchive-gegevens wordt een score van 50 (het gemiddelde controlepunt) en het 8e percentiel wordt een score van 90 (het goede/groene controlepunt). Terwijl u de onderstaande scorecurve verkent, moet u er rekening mee houden dat er tussen 0,50 en 0,92 een vrijwel lineaire relatie bestaat tussen de metrische waarde en de score. Rond een score van 0,96 is het "punt van afnemende rendementen", aangezien daarboven de curve wegtrekt, waardoor steeds meer metrische verbeteringen nodig zijn om een toch al hoge score te verbeteren.
Hoe desktop versus mobiel wordt afgehandeld
Zoals hierboven vermeld, worden de scorecurven bepaald op basis van echte prestatiegegevens. Vóór Lighthouse v6 waren alle scorecurven gebaseerd op mobiele prestatiegegevens, maar een Lighthouse-run op de desktop zou daar gebruik van maken. In de praktijk leidde dit tot kunstmatig opgeblazen desktopscores. Lighthouse v6 heeft deze bug opgelost door specifieke desktopscores te gebruiken. Hoewel u zeker algemene veranderingen in uw prestatiescore van 5 naar 6 kunt verwachten, zullen alle scores voor desktop aanzienlijk verschillen.
Hoe scores kleurgecodeerd zijn
De statistiekenscores en de prestatiescore zijn gekleurd volgens deze bereiken:
- 0 tot 49 (rood): Slecht
- 50 tot 89 (oranje): moet worden verbeterd
- 90 tot 100 (groen): goed
Om een goede gebruikerservaring te bieden, moeten sites ernaar streven een goede score te behalen (90-100). Een "perfecte" score van 100 is een enorme uitdaging om te behalen en wordt niet verwacht. Voor het nemen van een score van 99 naar 100 is bijvoorbeeld ongeveer dezelfde hoeveelheid metrische verbetering nodig als voor een score van 90 naar 94.
Wat kunnen ontwikkelaars doen om hun prestatiescore te verbeteren?
Gebruik eerst de Lighthouse-scorecalculator om inzicht te krijgen in welke drempels u moet nastreven om een bepaalde Lighthouse-prestatiescore te behalen.
In het Lighthouse-rapport vindt u in de sectie Mogelijkheden gedetailleerde suggesties en documentatie over hoe u deze kunt implementeren. Bovendien bevat de sectie Diagnostische gegevens aanvullende richtlijnen die ontwikkelaars kunnen verkennen om hun prestaties verder te verbeteren.