Core Web Vitals to zestaw trzech kluczowych wskaźników wprowadzonych przez Google, które mierzą jakość doświadczenia użytkownika podczas interakcji ze stroną internetową. Oceniają one, jak szybko ładuje się najważniejsza treść, jak responsywna jest witryna na pierwsze działania użytkownika oraz jak stabilny jest jej układ wizualny w trakcie ładowania. W tym artykule szczegółowo wyjaśnimy każdą z tych metryk, przedstawimy narzędzia do ich monitorowania i wskażemy najskuteczniejsze metody optymalizacji.
Core Web Vitals to integralna część szerszej koncepcji "page experience" (doświadczenia na stronie), którą Google rozwija od lat. Podstawowym założeniem tej inicjatywy jest przekonanie, że im bardziej strony internetowe są szybkie i intuicyjne w obsłudze, tym lepsze jest ogólne doświadczenie użytkowników z wyszukiwarką. Google, promując technicznie dopracowane witryny, zachęca właścicieli stron do stałego podnoszenia jakości UX.
Dotychczasowe metody pomiaru szybkości stron często były uproszczone i nie zawsze odzwierciedlały realne odczucia użytkownika. Strona mogła osiągać wysokie wyniki w testach syntetycznych, a mimo to być postrzegana jako powolna i trudna w obsłudze. Nowy system dąży do bardziej precyzyjnej i wielowymiarowej oceny, a Core Web Vitals stanowią jeden z najważniejszych kroków w tym kierunku.
Wskaźniki CWV uzupełniają inne czynniki wpływające na doświadczenie użytkownika, takie jak dostosowanie do urządzeń mobilnych, bezpieczeństwo połączenia HTTPS czy brak uciążliwych reklam. W kontekście technicznego SEO, wprowadzenie tych trzech metryk oznacza bardziej szczegółową i wielokryterialną ocenę użyteczności i szybkości działania witryny, ponieważ każda z nich skupia się na innym aspekcie technicznym.
Kluczową cechą Core Web Vitals jest to, że są one mierzone w czasie rzeczywistym, na podstawie danych pochodzących od prawdziwych użytkowników odwiedzających stronę. Oprócz tego dostępne są testy laboratoryjne w kontrolowanym środowisku, jednak Google priorytetowo traktuje dane z faktycznego użytkowania, zarówno na komputerach stacjonarnych, jak i urządzeniach mobilnych. To stanowi fundamentalną różnicę w porównaniu do wcześniejszych metod oceny szybkości stron.
Poniżej przedstawiamy szczegółowy opis każdej z trzech metryk wchodzących w skład Core Web Vitals. Należy pamiętać o ważnej zasadzie: jeśli choćby jeden wskaźnik wykazuje nieprawidłowości, cała podstrona zostanie uznana za wymagającą optymalizacji, nawet jeśli pozostałe metryki osiągają bardzo dobre wyniki. Wszystkie wskaźniki są równie ważne i wzajemnie się nie kompensują.
Praktyczne wskazówki dotyczące optymalizacji poszczególnych metryk zostaną omówione w dalszej części artykułu. W tej sekcji skupiamy się na zrozumieniu, co dokładnie mierzy każdy wskaźnik i jakie wartości progowe ustaliło Google.
LCP odpowiada na pytanie o szybkość ładowania największego elementu wizualnego, który pojawia się w widocznym obszarze ekranu użytkownika po załadowaniu strony. Celem jest, aby główna treść, znajdująca się "above the fold" (czyli widoczna bez przewijania), pojawiła się jak najszybciej. Elementy ładowane poniżej widocznego obszaru nie wpływają na wynik LCP. Kluczowe jest priorytetyzowanie zasobów, aby największy widoczny element został wyrenderowany w pierwszej kolejności.
Dokładniej, LCP mierzy czas od rozpoczęcia ładowania strony do momentu pełnego wyrenderowania największego bloku tekstowego lub grafiki widocznej w obszarze przeglądarki. Może to być obraz w formatach PNG, JPG, SVG, WebP, klip wideo lub duży fragment tekstu. Czas ten jest liczony w sekundach od First Contentful Paint (FCP), czyli momentu, w którym jakakolwiek treść zostanie wyświetlona na stronie.
FID mierzy czas pomiędzy pierwszą interakcją użytkownika ze stroną (np. kliknięciem linku, przycisku, pola formularza) a momentem, w którym przeglądarka faktycznie rozpoczyna przetwarzanie tego zdarzenia. Wskaźnik ten odzwierciedla responsywność strony: jak szybko reaguje ona na działania użytkownika tuż po wejściu na podstronę.
Idealnie, strona powinna być interaktywna niemal natychmiast po załadowaniu. Sytuacja, w której użytkownik musi czekać na pełne załadowanie strony, zanim menu czy przyciski zaczną reagować na kliknięcia, jest niepożądana z perspektywy doświadczenia użytkownika. Kluczowe elementy interaktywne, takie jak nawigacja, przyciski CTA czy formularze, powinny być dostępne praktycznie bez opóźnień.
CLS ocenia stabilność wizualną strony podczas jej ładowania, a dokładniej: jak bardzo nieoczekiwane zmiany w rozmieszczeniu elementów zakłócają przeglądanie treści. Każdy użytkownik zna to irytujące uczucie, gdy podczas czytania tekstu, cała zawartość nagle przesuwa się w dół z powodu doładowania się baneru lub grafiki. To zjawisko nazywane jest "layout shift", a CLS mierzy częstotliwość i nasilenie takich przesunięć.
Nieoczekiwane przesunięcia układu wynikają z asynchronicznego ładowania zasobów lub dynamicznych modyfikacji elementów strony już po jej wstępnym wyrenderowaniu. CLS sumuje wszystkie te skoki, które występują w trakcie całego procesu ładowania strony, i przekształca je w jeden wskaźnik liczbowy – im wyższa wartość, tym gorsza stabilność.
Obliczenie CLS opiera się na wzorze: layout shift score = impact fraction × distance fraction. Impact fraction określa stabilność elementu w stosunku do zajmowanego obszaru widocznego. Na przykład, jeśli element zajmuje połowę widocznej przestrzeni i przesuwa się o 25% wysokości okna, czerwony prostokąt (suma obszarów w obu stanach) wynosi 75%, co daje impact fraction = 0,75. Distance fraction to odległość, jaką element "pokonuje" podczas ładowania; przy przesunięciu o 25% wysokości ekranu wynosi 0,25. Wynik końcowy dla tego przykładu to: 0,75 × 0,25 = 0,1875. Doładowanie nowych elementów, takich jak przyciski, również powoduje przesunięcia układu, przesuwając istniejącą treść.
Wskaźnik CLS jest wyrażany jako ułamek dziesiętny, a nie jako czas. Im niższy wynik, tym lepsza wizualna stabilność strony.
Google oficjalnie potwierdziło, że Core Web Vitals są czynnikiem rankingowym, który wpływa na pozycje stron w wynikach wyszukiwania. Dokładna waga tego sygnału nie jest publicznie znana, jednak Google zapewniło, że same zmiany w rankingach wynikające wyłącznie z optymalizacji CWV nie będą rewolucyjne – jakość treści i profil linków wciąż mają nadrzędne znaczenie.
Dobrą analogią jest historia certyfikatów SSL: Google kilka lat temu ogłosiło, że bezpieczne połączenie HTTPS stanie się czynnikiem rankingowym, co skutecznie zmobilizowało większość właścicieli stron do wdrożenia certyfikatów. Sam SSL nie spowodował jednak drastycznych zmian w rankingach, był to raczej czynnik higieniczny, eliminujący ryzyko, a nie magiczny klucz do TOP3.
Nie oznacza to, że optymalizacja CWV jest bez znaczenia. Wskaźniki te są brane pod uwagę przy kwalifikacji stron do Google Discover, Google News oraz innych wyróżnionych form prezentacji wyników, gdzie wymagania jakościowe są wyższe niż w standardowych wynikach organicznych. Dla wydawców i serwisów informacyjnych może to mieć istotne przełożenie na zasięg.
Podobieństwo do wdrożenia mobile-first indexing jest pouczające: strony skrajnie źle zoptymalizowane pod kątem urządzeń mobilnych odnotowały wyraźne spadki widoczności, jednak dotyczyło to stosunkowo niewielkiej grupy witryn. W przypadku CWV schemat jest podobny. Im wyższa konkurencja w branży, tym większe znaczenie ma optymalizacja każdego czynnika. W e-commerce poprawa szybkości strony bezpośrednio przekłada się na wzrost sprzedaży, ponieważ każda sekunda opóźnienia zwiększa współczynnik porzucenia koszyka zakupowego.
Przejdźmy od teorii do praktyki: Google udostępniło szereg bezpłatnych narzędzi, które umożliwiają pomiar i monitoring Core Web Vitals. Popularne serwisy do testowania szybkości stron sukcesywnie integrują dane CWV w swoich raportach, co znacząco ułatwia pracę webmasterów i specjalistów SEO.
W panelu Google Search Console dostępny jest raport "Podstawowe wskaźniki internetowe", który prezentuje osobne wykresy dla wersji mobilnej i desktopowej. Każdy wykres pokazuje liczbę adresów URL witryny sklasyfikowanych w trzech kategoriach:
Kliknięcie w każdą z kategorii umożliwia dostęp do szczegółowego raportu, zawierającego konkretne adresy URL oraz typ problemu, który je dotyczy. Znacząco ułatwia to diagnozę i priorytetyzację prac optymalizacyjnych – zamiast testować każdą stronę osobno, od razu wiadomo, gdzie należy skierować wysiłki.
Lighthouse to automatyczne, open-source'owe narzędzie Google do kompleksowego audytu jakości stron internetowych. Analizuje ono pięć obszarów: wydajność, dostępność, Progressive Web App, SEO i dobre praktyki. Można je uruchomić na dowolnej witrynie bezpośrednio z narzędzi deweloperskich Chrome, jako rozszerzenie przeglądarki lub z wiersza poleceń.
Od wersji 6.0 Lighthouse sprawdza wszystkie trzy metryki Core Web Vitals i uwzględnia je w obliczaniu ogólnej punktacji wydajności. LCP i CLS mają znaczący udział w wyniku końcowym, co oznacza, że poprawa CWV bezpośrednio przekłada się na wyższy ogólny wynik audytu Lighthouse.
Google PageSpeed Insights wykorzystuje mechanizmy Lighthouse, ale w przeciwieństwie do samego Lighthouse łączy dane laboratoryjne z danymi z rzeczywistego użytkowania (tzw. dane polowe z Chrome User Experience Report). Narzędzie to pozwala sprawdzić, które czynniki CWV mają największy negatywny wpływ na ogólną ocenę szybkości strony i gdzie należy koncentrować działania naprawcze. Szczegółowy opis tego narzędzia znajdziesz w artykule o Google PageSpeed Insights.
Wbudowane DevTools przeglądarki Chrome oferują w zakładce "Performance" raport Core Web Vitals, dostępny bezpośrednio w oknie przeglądarki. Jest to szczególnie wygodne narzędzie dla deweloperów, którzy mogą diagnozować problemy z CWV bez opuszczania środowiska roboczego – wystarczy otworzyć DevTools i nagrać sesję ładowania strony.
Dla osób regularnie monitorujących wiele witryn, wygodną alternatywą jest dedykowana wtyczka Web Vitals, dostępna w Chrome Web Store pod adresem: https://chrome.google.com/webstore/detail/web-vitals/ahfhijdlegdabablpippeagghigmibma. Jest ona bezpłatna i instaluje się w kilkanaście sekund.
Wtyczka monitoruje Core Web Vitals w czasie rzeczywistym podczas przeglądania dowolnej strony w Chrome. Dane aktualizują się na bieżąco przy każdej odwiedzanej witrynie, bez konieczności uruchamiania osobnych testów.
Wizualna sygnalizacja jest prosta: zielony kwadrat w ikonie wtyczki oznacza, że wszystkie wskaźniki mieszczą się w dopuszczalnych progach; czerwony sygnalizuje problem z co najmniej jedną metryką. Po kliknięciu ikony widoczny jest szczegółowy panel z wartościami każdej metryki z osobna, co pozwala błyskawicznie zidentyfikować, który parametr wymaga uwagi.
Wszystkie wymienione powyżej narzędzia w pierwszej kolejności dostarczają danych laboratoryjnych – każde ładuje stronę we własnym, kontrolowanym środowisku testowym. W przypadku Chrome DevTools i Lighthouse uruchomionych lokalnie, wyniki zależą bezpośrednio od warunków panujących na komputerze przeprowadzającego test:
Konsekwencja jest oczywista: szybki komputer z szybkim łączem może pokazać poprawne wyniki laboratoryjne dla strony, która jednocześnie będzie działać bardzo wolno na budżetowym smartfonie z taryfą mobilną. Testy laboratoryjne są pomocne do diagnozy i optymalizacji, ale nie zawsze odzwierciedlają rzeczywiste doświadczenie użytkownika.
Google analizuje dane zbierane z wizyt realnych użytkowników przeglądarki Chrome – odwiedzający strony nieświadomie "testują" je na własnych urządzeniach i połączeniach, a anonimowe dane trafiają do Chrome User Experience Report (CrUX). Im szersze spektrum urządzeń korzysta z Twojej strony – a w Polsce zdecydowana większość ruchu pochodzi ze smartfonów – tym ważniejsza jest optymalizacja pod mniej wydajny sprzęt mobilny.
Dane z rzeczywistego użytkowania są dostępne w Google Search Console (zakładka Core Web Vitals) oraz w specjalnym raporcie w Google Data Studio, bazującym na danych CrUX.
Słaby wynik LCP wskazuje na jeden z trzech głównych problemów związanych z szybkością ładowania strony:
Serwer dostarcza przeglądarce dane i pliki niezbędne do wyrenderowania strony. Im szybciej to następuje, tym szybciej użytkownik widzi treść. Kluczowym wskaźnikiem jest tu TTFB (Time To First Byte), czyli czas od wysłania żądania do momentu, gdy serwer zaczyna odsyłać pierwsze dane. Skrócenie TTFB wymaga pracy zarówno nad infrastrukturą serwera, jak i nad optymalizacją samej aplikacji.
Na poziomie infrastruktury liczy się oprogramowanie serwera, wydajność połączeń z bazą danych, aktualna wersja PHP oraz rodzaj dysków (SSD zamiast HDD). Jednak wpływ samego hostingu bywa przeceniany – często większe możliwości optymalizacji leżą po stronie kodu aplikacji i logiki działania systemu CMS.
Typowym przykładem jest WordPress: sam silnik CMS jest relatywnie wydajny, ale rozbudowane motywy premium i liczne wtyczki generują ogromną ilość kodu, który jest wykonywany przy każdym wejściu na stronę. Zwiększanie mocy serwera w odpowiedzi na rosnące obciążenie jest strategią kosztowną i mało efektywną.
Znacznie lepszym podejściem jest wdrożenie mechanizmów cache po stronie serwera. Istnieje wiele rodzajów cache, ale wspólna idea jest prosta: serwer generuje strony z wyprzedzeniem i zapisuje je jako statyczne pliki HTML, które następnie serwuje kolejnym użytkownikom bez ponownego wykonywania całej procedury dynamicznej. Obsłużenie gotowego pliku HTML jest operacją wielokrotnie mniej zasobochłonną niż generowanie strony od zera przy każdym żądaniu – to tak jak korzystanie z kopiarki zamiast ręcznego przepisywania dokumentu. Dobrze skonfigurowany cache po stronie serwera to często połowa sukcesu w optymalizacji LCP.
Po dostarczeniu danych przez serwer, przeglądarka musi wczytać wszystkie zasoby potrzebne do zbudowania strony:
Rozmiar tych plików bezpośrednio wpływa na szybkość ich pobierania, a grafiki są najczęstszą przyczyną powolnego ładowania. Skuteczna optymalizacja zasobów graficznych wymaga czterech działań:
Renderowanie to proces, w którym surowe dane z pobranych plików są przekształcane w rzeczywisty wygląd i funkcjonalności strony widoczne na ekranie. Odbywa się to przy każdym otwarciu lub odświeżeniu strony – przeglądarka pobiera pliki, buduje drzewo DOM i CSSOM, a następnie rysuje układ graficzny strony.
Głównym problemem z perspektywy LCP jest priorytetyzacja kolejności renderowania. Z punktu widzenia użytkownika, idealne jest jak najszybsze wyrenderowanie sekcji "above the fold" – treści widocznej bez przewijania. Przeglądarka powinna w pierwszej kolejności renderować górną część strony, a dopiero potem niewidoczne elementy poniżej. W praktyce strona często renderuje elementy w kolejności, w jakiej dostarczane są pliki, co nie zawsze jest optymalne.
Szczególnie widoczny problem stanowią wtyczki i motywy WordPress, które dodają ogromne ilości kodu CSS i JavaScript, który jest potrzebny dopiero przy znacznym przewinięciu strony lub w ogóle nie jest niezbędny na danej podstronie. Ładowanie tych zasobów blokuje renderowanie głównej treści i jest sygnalizowane jako problem we wszystkich narzędziach CWV.
Konkretne działania naprawcze obejmują trzy kroki:
<head> dokumentu jako inline CSS; pozostałe pliki CSS i JavaScript powinny być ładowane asynchronicznie lub na końcu dokumentu HTML, po wyrenderowaniu widocznej części strony.FID to metryka, której nie da się w pełni zasymulować w testach laboratoryjnych – wymaga reakcji prawdziwego użytkownika, który wchodzi w interakcję z ładującą się stroną. Na etapie wdrożenia Google zaleca skupienie się na metryce TBT (Total Blocking Time), która jest mierzalna laboratoryjnie i silnie koreluje z rzeczywistym FID.
Główną przyczyną wysokiego FID i TBT jest JavaScript, który jest uruchamiany i kompilowany przez przeglądarkę w trakcie renderowania strony. Te operacje tymczasowo blokują główny wątek przeglądarki, uniemożliwiając jej reagowanie na interakcje użytkownika – kliknięcia, naciśnięcia przycisków, próby wypełniania formularzy.
Duże pliki JavaScript blokujące główny wątek mogą sprawić, że strona wydaje się "zamrożona" przez kilka sekund po załadowaniu – przyciski nie reagują lub reagują z dużym opóźnieniem, co jest jednym z najbardziej irytujących doświadczeń z perspektywy użytkownika.
Cztery skuteczne działania naprawcze to:
CLS jest obliczany na podstawie przesunięć elementów podczas ładowania strony. Najczęstszą przyczyną wysokiego wskaźnika są grafiki, które, doładowując się asynchronicznie, zmieniają pozycję elementów tekstowych lub innych bloków znajdujących się poniżej – treść "skacze", gdy pojawia się obrazek, który przeglądarka musiała najpierw pobrać, by poznać jego wymiary.
Rozwiązanie jest proste i skuteczne: należy nadać każdej grafice predefiniowaną szerokość i wysokość bezpośrednio w kodzie HTML. Dzięki temu przeglądarka zarezerwuje odpowiednie miejsce w układzie strony jeszcze przed pobraniem pliku graficznego. Przykład prawidłowego kodu: <img src="obrazek.webp" width="640" height="360" alt="Tekst alternatywny grafiki" />
W przypadku responsywnych witryn, gdzie ten sam obraz jest wyświetlany w różnych rozmiarach na różnych ekranach, rozwiązaniem jest znacznik <picture> z atrybutem media wskazującym odpowiednie źródło dla każdego zakresu rozdzielczości:
<picture>
<source media="(max-width: 799px)" srcset="obrazek-480w-cropped.webp" />
<source media="(min-width: 800px)" srcset="obrazek-800w.webp" />
<img src="obrazek-800w.webp" alt="Tekst alternatywny grafiki" />
</picture>
Inne elementy doładowywane dynamicznie, takie jak reklamy displayowe, ramki iframe czy zewnętrzne widgety, powinny mieć zdefiniowane placeholdery: kontenery HTML z określoną wysokością i szerokością, które rezerwują miejsce w układzie strony, zanim pojawi się właściwy element. Puste prostokąty o znanych wymiarach eliminują przesunięcia układu i drastycznie obniżają wskaźnik CLS.
Core Web Vitals stanowią jeden z kluczowych, ale nie jedyny, element składowy ogólnej oceny szybkości strony przez Google. Lighthouse Score jest obliczany na podstawie kilku metryk, z których każda ma inną wagę. Google udostępniło Lighthouse Scoring Calculator (https://googlechrome.github.io/lighthouse/scorecalc/) – narzędzie, które pokazuje, jak poszczególne elementy wpływają na końcowy wynik audytu. Warto z niego korzystać przy priorytetyzacji działań optymalizacyjnych, aby koncentrować się na metrykach, których poprawa przyniesie największy wzrost ogólnego wyniku.
Core Web Vitals to niezwykle ważny aspekt obecności firmy w internecie, którego znaczenie będzie systematycznie rosło wraz z kolejnymi aktualizacjami algorytmu Google. Strona szybka, responsywna i wizualnie stabilna przekłada się na większą satysfakcję użytkowników, niższy współczynnik odrzuceń, a w szczególności w branży e-commerce – na wyższy współczynnik konwersji. Google konsekwentnie motywuje właścicieli stron do ciągłego doskonalenia jakości technicznej, ponieważ jej poziom bezpośrednio wpływa na doświadczenie użytkowników korzystających z wyszukiwarki. Nie należy jednak oczekiwać rewolucji w wynikach wyszukiwania po wprowadzeniu CWV do algorytmu – jest to raczej czynnik higieniczny, który eliminuje ryzyka i stopniowo buduje przewagę nad konkurencją, a nie natychmiastowa przepustka do pierwszej pozycji.
Core Web Vitals (CWV) to trzy kluczowe wskaźniki Google oceniające jakość doświadczenia użytkownika na stronie. Są to: LCP (Largest Contentful Paint), który mierzy czas ładowania największego elementu treści (zalecany próg: <2,5 s); FID (First Input Delay), oceniający opóźnienie pierwszej interakcji (zalecany próg: <100 ms); oraz CLS (Cumulative Layout Shift), monitorujący wizualną stabilność strony (zalecany próg: <0,1). Razem składają się na kompleksową ocenę UX.
Tak, Core Web Vitals są oficjalnie czynnikiem rankingowym, jednak ich wpływ na standardowe wyniki organiczne nie jest drastyczny. Strony z bardzo słabymi wynikami mogą odnotować spadki, podczas gdy dla dobrze zoptymalizowanych witryn efekt będzie marginalny. W branży e-commerce znaczenie jest większe, ponieważ szybkość strony bezpośrednio przekłada się na konwersje. Dla kwalifikacji do Google Discover i Google News, CWV mają istotniejsze znaczenie niż w standardowych wynikach wyszukiwania.
Do pomiaru CWV służą: Google Search Console (raport "Podstawowe wskaźniki internetowe" z danymi polowymi), PageSpeed Insights (łączący dane polowe i laboratoryjne), Lighthouse od wersji 6.0 (dane laboratoryjne), narzędzia deweloperskie Chrome (zakładka Performance) oraz wtyczka Web Vitals do Chrome. Większość narzędzi dostarcza danych laboratoryjnych; Google do oceny rankingowej używa danych z rzeczywistego użytkowania (CrUX) z przeglądarki Chrome, dostępnych w Search Console i raportach Google Data Studio.
Trzy główne przyczyny słabego LCP to: wolna odpowiedź serwera (często z powodu braku cache, co zmusza serwer do generowania strony od zera przy każdym żądaniu), nieskompresowane lub zbyt duże grafiki (Google zaleca format WEBP i Lazy Load) oraz blokowanie renderowania przez synchronicznie ładowane pliki CSS i JavaScript. Działania naprawcze obejmują wdrożenie cache po stronie serwera, optymalizację grafik oraz priorytetyzację ładowania zasobów "above the fold".
Główną przyczyną wysokiego CLS są grafiki bez zdefiniowanych wymiarów. Rozwiązaniem jest nadanie atrybutów width i height bezpośrednio w kodzie HTML, co pozwala przeglądarce zarezerwować miejsce przed pobraniem pliku. Dla responsywnych grafik stosuje się znacznik <picture> z atrybutem srcset, dopasowującym źródło do rozmiaru ekranu. Elementy ładowane dynamicznie (reklamy, widgety, ramki) powinny posiadać zdefiniowane placeholdery, które rezerwują odpowiednie miejsce w układzie strony.
Google PageSpeed Insights (PSI) to darmowe i niezwykle użyteczne narzędzie, stworzone do kompleksowej analizy oraz poprawy szybkości...
Dla wielu twórców stron internetowych optymalizacja pod kątem wyszukiwarek (SEO) sprowadza się głównie do treści i słów kluczowych....
Niejednokrotnie właściciele biznesów online koncentrują się na atrakcyjnym wyglądzie swojej witryny lub intensywnym publikowaniu nowych...