Metryka Speed Index

Co mierzy Speed Index, jaki wynik jest dobry, dlaczego jest laboratoryjną metryką Lighthouse, a nie Core Web Vital ani czynnikiem rankingowym, oraz jak go poprawiać.

Opublikowano po raz pierwszy: 26 cze 2026 · Ostatnia aktualizacja: 3 sie 2026 · Advanced
Języki

Speed Index mierzy, jak szybko treść jest wizualnie wyświetlana podczas ładowania strony — średni moment, w którym pojawiają się widoczne części strony, wyrażony w sekundach (mniej znaczy lepiej). Jest obliczany na podstawie filmu z ładowania, więc to metryka wyłącznie laboratoryjna: nie występuje w danych terenowych CrUX, PageSpeed Insights ani Search Console. Powstał w WebPageTest (Pat Meenan), a Lighthouse oblicza go za pomocą modułu open source Speedline. NIE jest Core Web Vital ani czynnikiem rankingowym — to jedna z pięciu metryk wydajności Lighthouse, ważona w Lighthouse 10 na 10 %. Progi mobilne: Good ≤ 3,4 s, Needs improvement ≤ 5,8 s, Poor > 5,8 s (desktop Good ≤ około 1,3 s). Poprawia się dzięki tym samym poprawkom co FCP i LCP: szybszej odpowiedzi serwera i mniejszej liczbie zasobów blokujących renderowanie.

Evidence for this claim Lighthouse Speed Index estimates how quickly page contents are visually populated during a lab load. Scope: Lighthouse lab metric; results depend on test environment and viewport. Confidence: high · Verified: Chrome Developers: Speed Index Evidence for this claim Lighthouse documents Speed Index scoring and weighting, which can change between Lighthouse versions. Scope: Current Lighthouse scoring model, not a Google Search ranking factor. Confidence: high · Verified: Lighthouse: Performance scoring

TL;DR — Speed Index mierzy, jak szybko treść jest wizualnie wyświetlana podczas ładowania strony — średni moment pojawienia się widocznej treści, wyrażony w sekundach (mniej znaczy lepiej). Jest obliczany na podstawie filmu z ładowania przez sumowanie obszaru powyżej krzywej postępu wizualnego, dzięki czemu jest metryką wyłącznie laboratoryjną (nie występuje w CrUX, terenowych danych PSI ani Search Console). Powstał w WebPageTest (Pat Meenan); Lighthouse oblicza go za pomocą modułu open source Speedline. Nie jest Core Web Vital ani czynnikiem rankingowym — to jedna z pięciu metryk Lighthouse, ważona w Lighthouse 10 na 10 %. Urządzenia mobilne: Good ≤ 3,4 s, Needs improvement ≤ 5,8 s, Poor > 5,8 s; desktop: Good ≤ ~1,3 s. Nie może być szybszy niż FCP, zależy od viewportu i poprawia się dzięki tym samym poprawkom co FCP/LCP.

Evidence for this claim Lighthouse Speed Index estimates how quickly page contents are visually populated during a lab load. Scope: Lighthouse lab metric; results depend on test environment and viewport. Confidence: high · Verified: Chrome Developers: Speed Index

Co naprawdę mierzy Speed Index

Definicja Google mieści się w jednym zdaniu: “Speed Index measures how quickly content is visually displayed during page load.” („Speed Index mierzy, jak szybko treść jest wizualnie wyświetlana podczas ładowania strony”). Kluczowe słowo to wizualnie. Speed Index nie jest pojedynczym znacznikiem czasu, tak jak First Contentful Paint i Largest Contentful Paint — to wynik zbiorczy, który przedstawia średni moment wyświetlenia widocznych części strony. Mniej znaczy lepiej, a wynik jest raportowany w sekundach.

Najbardziej przejrzysty model mentalny wygląda tak: narysuj wykres, na którego osi X znajduje się czas, a na osi Y „procent strony ukończonej wizualnie”, rosnący od 0 % do 100 %. Speed Index to obszar nad tą krzywą. Im szybciej krzywa dociera do 100 %, tym mniejszy jest obszar i tym lepszy wynik. Strona pusta przez pewien czas zostawia nad linią duży prostokąt pustego obszaru; strona szybko renderująca treść pozostawia go prawie wcale.

Jak jest obliczany

Lighthouse nagrywa film z ładowania strony i oblicza postęp wizualny między klatkami. Każdy przedział czasu otrzymuje wagę zależną od tego, jak nieukończona jest wtedy strona — całkowicie pusta klatka liczy się w 100 %, a klatka w większości wyrenderowana ma bardzo mały udział. Oryginalny wzór WebPageTest wygląda tak:

Speed Index = Σ ( interval × (1 − visual completeness% / 100) )

Przykład z konkretnymi liczbami ułatwia zrozumienie. DebugBear przedstawia jedno ładowanie tak:

  • Ukończenie 0 % (0–253 ms) → wkład 253,0 ms
  • Ukończenie 43 % (253–403 ms) → wkład 85,5 ms
  • Ukończenie 98 % (403–536 ms) → wkład 2,7 ms
  • Ukończenie 99 % (536–653 ms) → wkład 1,2 ms
  • Łącznie: 342,3 ms

Zwróć uwagę na pierwszy fragment: gdy nic nie jest widoczne, cały ten czas liczy się z pełną wagą. Dlatego Speed Index nigdy nie może być szybszy niż First Contentful Paint — każda milisekunda przed wyrenderowaniem pierwszej treści liczy się w 100 %.

Lighthouse nie tworzy tu własnej implementacji. Uruchamia open-source’owy moduł Speedline (pierwotnie autorstwa Paula Irisha), który stosuje tę samą metodologię postępu wizualnego z filmu co WebPageTest, korzystając ze śladów Chrome DevTools z włączonymi zrzutami ekranu. Speedline może obliczać standardowy Speed Index (różnicę histogramów między bieżącą a końcową klatką) albo wariant percepcyjny wykorzystujący SSIM; zwykle widzisz ten standardowy.

Jaki wynik jest dobry

Lighthouse 10 ocenia Speed Index na podstawie danych z rzeczywistych witryn z HTTP Archive, a progi znacznie różnią się zależnie od urządzenia, ponieważ Lighthouse domyślnie symuluje urządzenie mobilne średniej klasy z ograniczeniem przepustowości:

Speed IndexUrządzenia mobilneDesktop
Good (zielony)0–3,4 s0–1,3 s
Needs improvement (pomarańczowy)3,4–5,8 s1,3–2,3 s
Poor (czerwony)> 5,8 s> 2,3 s

Jeśli widziałeś krążący dawny benchmark "under 1,000 ms is good" („poniżej 1 000 ms jest dobrze”), to historyczna wskazówka WebPageTest dla konkretnej epoki i profilu połączenia — nie aktualny próg mobilny Lighthouse. Zawsze sprawdzaj, jakie narzędzie oraz ustawienia urządzenia i sieci wygenerowały analizowaną liczbę, ponieważ ta sama strona otrzymuje różne wyniki w Lighthouse, WebPageTest i GTmetrix.

Miejsce w wyniku Lighthouse

Speed Index jest jedną z pięciu metryk wyniku Lighthouse 10 Performance i ma wagę 10 % — taką samą jak FCP, czyli najniższą:

MetrykaWaga w Lighthouse 10
First Contentful Paint10 %
Speed Index10 %
Largest Contentful Paint25 %
Cumulative Layout Shift25 %
Total Blocking Time30 %

Praktyczny wniosek: gonienie za Speed Index w izolacji ma niski ROI. Total Blocking Time (30 %) oraz LCP i CLS (po 25 %) znacznie mocniej zmieniają ogólny wynik. Jeśli Speed Index nie jest metryką, która konkretnie nie przechodzi, zwykle więcej zyskasz, poprawiając LCP i TBT — a Speed Index poprawi się przy okazji. W PageSpeed Insights znajdziesz Speed Index w sekcji laboratoryjnej (Lighthouse), a nie w znajdującej się wyżej sekcji danych terenowych.

Czy Speed Index jest Core Web Vital albo czynnikiem rankingowym?

Nie w żadnym z tych znaczeń, a rozróżnienie ma znaczenie, gdy wyjaśniasz raport osobie decyzyjnej.

  • Nie jest Core Web Vital. Core Web Vitals to LCP, INP i CLS mierzone u rzeczywistych użytkowników przez CrUX. Speed Index nie należy do tego zestawu i nie pojawia się w raporcie Core Web Vitals w Search Console.
  • Nie jest bezpośrednim czynnikiem rankingowym. Sygnał Google dotyczący doświadczenia strony korzysta z terenowych danych Core Web Vitals. Speed Index to diagnostyka wyłącznie laboratoryjna, której Google nie zbiera od prawdziwych użytkowników, więc nie ma bezpośredniej drogi od liczby Speed Index do rankingu.

Związek z rankingiem jest pośredni: problemy powodujące zły Speed Index — wolny TTFB, CSS/JS blokujące renderowanie i niewidoczny tekst podczas podmiany fontu — są tymi samymi problemami, które powodują zły FCP i LCP. Napraw je, a lepszy Speed Index zwykle będzie szedł w parze z lepszym LCP, czyli elementem faktycznie nagradzanym przez Google.

Dlaczego działa tylko w laboratorium

Speed Index potrzebuje filmu z renderowania strony klatka po klatce, a następnie przetwarzania obrazów do obliczenia kompletności wizualnej każdej klatki. To zbyt kosztowne, aby uruchamiać je dla każdego prawdziwego odwiedzającego, więc metryka istnieje wyłącznie w syntetycznych narzędziach laboratoryjnych — Lighthouse, WebPageTest i GTmetrix. Real User Monitoring oraz zbiór danych CrUX po prostu jej nie zawierają. Jeśli potrzebujesz terenowych danych o wydajności, użyj Core Web Vitals; Speed Index służy do diagnozowania renderowania w kontrolowanym teście.

Skąd się wziął

Speed Index powstał w WebPageTest, które Pat Meenan stworzył i udostępnił jako open source w 2008 r. (sama metryka została dodana około 2012 r.). Zaprojektowano go, aby naprawić realną lukę w ówczesnych metrykach:

  • Render start mógł nastąpić przy pojedynczym pikselu albo kolorze tła — nie oznaczało to wartościowej treści.
  • Document complete (onload) obejmuje elementy poniżej pierwszego ekranu i nieistotne zasoby.

Speed Index rozwiązał ten problem, mierząc wizualną kompletność obszaru powyżej pierwszego ekranu w czasie — jest lepszym przybliżeniem tego, co faktycznie postrzega użytkownik. Lighthouse później przyjął tę metodologię przez moduł Speedline, dlatego liczby WebPageTest i Lighthouse mają wspólne pochodzenie, choć ich ograniczenia przepustowości są różne.

Jak go poprawić

Nie ma sztuczki dotyczącej wyłącznie Speed Index — własne wskazówki Google mówią, że wszystko, co robisz, aby poprawić szybkość ładowania strony, poprawi też wynik Speed Index. W praktyce:

  • Skróć czas odpowiedzi serwera (TTFB). Każda milisekunda przed pierwszym bajtem to czas pustej strony liczony z pełną wagą.
  • Usuń CSS i JavaScript blokujące renderowanie. Opóźniają pierwszy render, który jest najdroższą częścią krzywej. Wstaw krytyczny CSS inline, a resztę odrocz.
  • Napraw ładowanie fontów. Podczas podmiany fontu tekst może być niewidoczny — dla tego fragmentu liczy się 0 % ukończenia. font-display: swap (albo optional) utrzymuje widoczność tekstu. To jeden z audytów, które Lighthouse wyraźnie wskazuje dla Speed Index.
  • Zminimalizuj pracę głównego wątku i skróć czas wykonywania JavaScriptu — to dwie pozostałe diagnostyki, które Lighthouse wskazuje jako mające duży wpływ na Speed Index.
  • Nadaj priorytet treści powyżej pierwszego ekranu. Speed Index interesuje się tylko widocznym viewportem, więc szybkie wyrenderowanie pierwszego ekranu jest całą grą.

Te działania niemal całkowicie pokrywają się z optymalizacją FCP i LCP — właśnie dlatego traktuję Speed Index jako sygnał potwierdzający, a nie osobną listę zadań. Zanim zareagujesz na pojedynczą liczbę, obejrzyj filmstrip (Lighthouse i WebPageTest generują go oba), aby potwierdzić, co faktycznie renderuje się wcześnie, a co późno, oraz porównaj kilka powtarzanych, identycznych uruchomień zamiast jednego testu — zobacz poniższą uwagę o zmienności między uruchomieniami.

Ograniczenia, które warto znać

  • Tylko laboratorium — nigdy nie odzwierciedla doświadczenia prawdziwego użytkownika, a jedynie środowisko testowe.
  • Zależność od viewportu — mierzy widoczny obszar, więc urządzenia mobilne i desktopowe dają bardzo różne wyniki (stąd bardzo różne progi).
  • Ślepa plama SPA/AJAX — aplikacje jednostronicowe mogą wyglądać sztucznie szybko: powłoka renderuje się szybko, a rzeczywista treść ładuje się później bez odświeżenia strony.
  • Karuzele, automatycznie odtwarzane wideo i nakładki zgody — wszystko, co nadal zmienia piksele po załadowaniu istotnej treści, może otrzymać karę za dalsze rejestrowanie stanu „incomplete” („nieukończonego”), tak jak karane są automatycznie obracające się karuzele.
  • To nie metryka „fully loaded” („w pełni załadowane”) — mierzy postęp wizualny powyżej pierwszego ekranu, a nie moment zakończenia działania każdego skryptu, obrazu lub elementu poniżej pierwszego ekranu. Osobna metryka WebPageTest Visually Complete (zawsze ≥ Speed Index) wykrywa widget załadowany późno przez lazy loading.
  • Postęp wizualny nie dowodzi użyteczności. Speed Index mierzy tylko zmianę pikseli względem końcowej klatki — nie wie, czy to, co jest na ekranie, da się odczytać, jest ułożone poprawnie, dostępne ani faktycznie interaktywne. Szybko renderowany szkielet lub powłoka może otrzymać dobry wynik, mimo że prawdziwa treść (i możliwość korzystania z niej) pojawia się później; to ten sam tryb błędu co antywzorzec „meaningless early paint” („bezsensownego wczesnego renderu”), tylko opisany od strony metryki.
  • Zmienność między uruchomieniami. Ponieważ metryka pochodzi z jednego nagranego ładowania, Speed Index zmienia się wraz z warunkami testu — własne wskazówki Google wymieniają różnice urządzeń, rozszerzenia przeglądarki, oprogramowanie antywirusowe, a nawet zmiany reklam i testów A/B jako źródła wahań wyniku niezwiązanych z Twoim kodem. Porównuj rozkłady z powtarzanych, identycznych uruchomień, a nie pojedyncze liczby.

Metryki powiązane

Speed Index należy do tego samego klastra wydajności stron co hub Core Web Vitals i jego sąsiednie tematy. Najbliżej mu do First Contentful Paint (Speed Index nie może być lepszy niż FCP) i Largest Contentful Paint (te same poprawki, te same przyczyny źródłowe), występuje obok Total Blocking Time w wyniku Lighthouse, a spotkasz go w Lighthouse i PageSpeed Insights. W przypadku metryk terenowych, które faktycznie napędzają ranking, zacznij od huba Core Web Vitals.

Add an expert note

Pin an expert quote

New person? Create their unclaimed profile at /admin/experts/ → Pin a quote first.