Informacje o Largest Contentful Paint
Co to jest Largest Contentful Paint?
Largest Contentful Paint mierzy czas potrzebny na wyrenderowanie największego widocznego elementu — zwykle głównego obrazu, plakatu filmu lub bloku tekstu nagłówka. To pojedyncza metryka, która najlepiej odpowiada na pytanie: „Kiedy strona się pojawiła?”.
Celowo pomija wszystko, co znajduje się poniżej widocznego obszaru, oraz wszystkie niewidoczne elementy. Strona może nadal ładować skrypty i czcionki długo po osiągnięciu wartości LCP i z punktu widzenia tego pomiaru jest to w porządku, ponieważ użytkownik ma już coś do przeczytania.
To właśnie odróżnia go od całkowitego czasu ładowania. Czas ładowania opisuje moment, w którym przeglądarka kończy swoją pracę; LCP opisuje moment, w którym strona stała się użyteczna, czyli chwilę faktycznie odczuwaną przez odwiedzającego.
Jaka wartość LCP jest uznawana za dobrą?
Google uznaje 2,5 sekundy lub mniej za dobry wynik, od 2,5 do 4 sekund za wynik wymagający poprawy, a wszystko powyżej 4 sekund za wynik słaby. Próg dotyczy 75. percentyla rzeczywistych ładowań stron, więc musi być spełniony w przypadku trzech na czterech odwiedzających, a nie wyłącznie średnio.
Ten percentyl ma większe znaczenie, niż mogłoby się początkowo wydawać. Średnią łatwo poprawić dzięki szybkim wizytom z szybkich połączeń, podczas gdy 75. percentyl uwzględnia wolniejszą ćwiartkę odbiorców, którą zazwyczaj stanowią użytkownicy urządzeń mobilnych.
Strona może więc nie spełniać wymagań dotyczących LCP, mimo że na urządzeniu, na którym ją tworzono, działa idealnie szybko. Taka rozbieżność jest raczej normą niż wyjątkiem.
Co zwykle powoduje wolny LCP
Sam element rzadko stanowi problem. Opóźnienie niemal zawsze wynika z czegoś, co dzieje się wcześniej, a najczęściej odpowiadają za nie cztery czynniki:
- Powolna odpowiedź serwera, która opóźnia wszystko w dalszym procesie, zanim zostanie wyrenderowany choćby jeden bajt.
- Blokujące renderowanie pliki CSS i JavaScript w sekcji head, które przeglądarka musi wczytać przed rozpoczęciem renderowania.
- Obraz główny jest zbyt duży, nie jest zoptymalizowany lub zastosowano dla niego leniwe ładowanie, mimo że nie powinno.
- Obraz jest wykrywany z opóźnieniem, ponieważ jest ustawiany za pomocą CSS lub wstrzykiwany przez skrypt, zamiast znajdować się w kodzie HTML.
To właśnie ta ostatnia kwestia najczęściej sprawia problemy. Przeglądarka może rozpocząć pobieranie tylko tego, co widzi w znacznikach HTML, więc obraz, o którym HTML w ogóle nie wspomina, nie zacznie się ładować, dopóki arkusz stylów lub skrypt zawierający odwołanie do niego nie zostanie pobrany i przetworzony.
Jak to poprawić
- Umieść obraz główny w kodzie HTML jako znacznik img, aby przeglądarka mogła go natychmiast znaleźć.
- Nigdy nie stosuj leniwego ładowania elementu LCP — leniwe ładowanie służy do elementów znajdujących się poniżej obszaru widocznego bez przewijania.
- Udostępniaj obraz w nowoczesnym formacie i w rozmiarze odpowiadającym jego rzeczywistemu wyświetlaniu.
- Wstępnie załaduj obraz, jeśli rzeczywiście jest najważniejszym elementem na stronie.
- Przenieś niekrytyczne pliki CSS i JavaScript poza ścieżkę renderowania.
- Skróć czas odpowiedzi serwera, ponieważ każda spędzona na nim milisekunda upływa, zanim cokolwiek innego się rozpocznie.
Co sprawdza to narzędzie
Test LCP odczytuje dane terenowe Google dotyczące strony — pomiary zebrane od rzeczywistych użytkowników korzystających z Chrome — i pokazuje, jak wynik wypada na tle powyższych progów.
Jeśli nie wyświetla się żaden wynik, oznacza to, że strona ma zbyt mały ruch, aby Google mogło przygotować dla niej raport. Jest to częste w przypadku nowych lub rzadko odwiedzanych stron. Nie oznacza to błędu — rozsądnym rozwiązaniem jest usunięcie oczywistych przyczyn, zamiast czekania na pojawienie się wyniku.
W przypadku pozostałych dwóch wskaźników lub wszystkich trzech naraz użyj narzędzia
Test Core Web Vitals.
Co dalej