Interaction to Next Paint — co to jest INP i dlaczego zastąpiło FID?

Interaction to Next Paint — co to jest INP i dlaczego zastąpiło FID?

Fraza „Interaction to Next Paint — co to jest INP i dlaczego zastąpiło FID?” pojawia się dziś wszędzie tam, gdzie mówi się o Core Web Vitals, jakości interfejsu i realnym komforcie użytkownika. W tym artykule wyjaśniam, czym dokładnie jest Interaction to Next Paint, dlaczego Google zastąpiło nim FID, jak mierzyć ten wskaźnik oraz które problemy techniczne naprawdę wpływają na responsywność strony, UX i widoczność w wyszukiwarce.

Interaction to Next Paint — co to jest INP i dlaczego zastąpiło FID w Core Web Vitals

INP, czyli Interaction to Next Paint, to wskaźnik opisujący, jak szybko strona reaguje na działania użytkownika, takie jak kliknięcie przycisku, dotknięcie elementu na urządzeniu mobilnym czy użycie klawiatury. Mówiąc prosto: nie chodzi tylko o to, czy strona się załadowała, ale czy da się z niej wygodnie korzystać bez opóźnień, zacięć i wrażenia „zamrożonego” interfejsu. Właśnie dlatego temat „Interaction to Next Paint — co to jest INP i dlaczego zastąpiło FID?” jest tak ważny w praktyce audytu wydajności, SEO technicznego i projektowania nowoczesnych serwisów.

W modelu podstawowe wskaźniki internetowe każdy element mierzy inny aspekt doświadczenia użytkownika. Largest Contentful Paint i LCP dotyczą szybkości pojawienia się głównej treści, Cumulative Layout Shift i CLS oceniają stabilność wizualną układu, a INP odpowiada za responsywność interakcji. To rozróżnienie jest kluczowe, bo wiele osób nadal utożsamia wydajność tylko z czasem ładowania. Tymczasem użytkownik ocenia stronę szerzej: czy szybko widzi treść, czy nic mu nie „skacze” i czy interfejs odpowiada natychmiast po kliknięciu.

FID, czyli First Input Delay, mierzył tylko opóźnienie pierwszej interakcji i tylko fragment całego doświadczenia. W praktyce oznaczało to, że strona mogła osiągać niezły wynik FID, a mimo to działać irytująco podczas dalszej nawigacji. Jeśli po wejściu na stronę pierwszy klik był obsłużony poprawnie, ale późniejsze rozwijanie filtrów, otwieranie menu, zmiana wariantu produktu czy dodawanie do koszyka działały wolno, FID nie pokazywał pełnego problemu. INP robi to lepiej, bo bierze pod uwagę ogólną jakość reakcji strony na interakcje w trakcie całej wizyty.

Z perspektywy Google była to zmiana logiczna. Rosnąca popularność rozbudowanych frontendów, Single Page Application, ciężkich komponentów JavaScript, hydratacji po stronie klienta oraz rozbudowanych skryptów analitycznych sprawiła, że sam moment pierwszego kliknięcia przestał wystarczać jako reprezentatywna miara. Dzisiejsza wydajność strony to nie tylko szybkość ładowania strony, ale też zdolność interfejsu do płynnego działania po załadowaniu widoku. Dlatego INP lepiej odzwierciedla realne odczucia użytkowników niż historyczny FID.

Zdjęcie Katarzyny Toboły

Masz pytania? Porozmawiajmy o Twoim marketingu

Skontaktuj się ze mną!


Katarzyna Toboła

Jak dokładnie działa INP i co mierzy podczas interakcji

INP analizuje czas od momentu wejścia użytkownika w interakcję z elementem do chwili, gdy przeglądarka pokaże kolejną wizualną zmianę na ekranie. To ważne, bo po kliknięciu liczy się nie tylko sam start obsługi zdarzenia, ale też cała ścieżka wykonania kodu, przeliczenia stylów, układu i finalnego odmalowania interfejsu. Jeśli użytkownik kliknie przycisk „Pokaż więcej”, a strona przez chwilę nie daje żadnej widocznej odpowiedzi, odczuwa opóźnienie, nawet jeśli zdarzenie technicznie zostało już zarejestrowane.

W praktyce na INP wpływają trzy obszary: opóźnienie wejścia, czas przetwarzania oraz opóźnienie prezentacji następnej klatki. Pierwszy etap mówi, jak długo interakcja czeka, aż główny wątek przeglądarki będzie wolny. Drugi dotyczy tego, ile trwa wykonanie logiki JavaScript. Trzeci obejmuje wszystko, co musi się wydarzyć, by użytkownik zobaczył efekt: aktualizację DOM, obliczenie stylów, layout i renderowanie strony. To właśnie ta pełna perspektywa czyni INP bardziej użytecznym wskaźnikiem niż FID.

Dlaczego dobra responsywność nie zawsze oznacza wysoki wynik w testach syntetycznych

Wiele osób patrzy na PageSpeed Insights albo Lighthouse i próbuje sprowadzić cały temat do pojedynczej liczby. To błąd. Lighthouse to narzędzie diagnostyczne oparte na danych laboratoryjnych, czyli lab data. Taki test uruchamiany jest w kontrolowanych warunkach, na określonym profilu urządzenia i sieci. Pomaga wykrywać problemy, ale nie pokazuje w pełni tego, jak zachowuje się strona u wszystkich użytkowników, na różnych smartfonach, w różnych lokalizacjach i przy różnym obciążeniu.

W przypadku INP szczególnie istotne są dane rzeczywistych użytkowników, czyli field data pochodzące z Chrome UX Report oraz raportów w Google Search Console. To właśnie tam widać, czy realni odwiedzający faktycznie doświadczają opóźnień podczas korzystania z serwisu. Można mieć poprawny wynik laboratoryjny, a jednocześnie słabe dane CrUX, jeśli użytkownicy trafiają na ciężkie podstrony kategorii, rozbudowany checkout albo filtry fasetowe obciążające JavaScript main thread na słabszych urządzeniach mobilnych.

Jak mierzyć INP i jak interpretować wyniki w PageSpeed Insights, Lighthouse, CrUX i Search Console

Poprawna interpretacja metryk to warunek sensownej optymalizacji. Jeśli ktoś pyta o Interaction to Next Paint — co to jest INP i dlaczego zastąpiło FID?, bardzo często zaraz potem pyta też, gdzie ten wskaźnik sprawdzić i które dane są najważniejsze. Odpowiedź brzmi: trzeba łączyć kilka źródeł, bo każde pokazuje inny poziom szczegółowości i inny rodzaj prawdy o stronie.

Różnica między danymi laboratoryjnymi a danymi rzeczywistych użytkowników

Lighthouse dostarcza danych laboratoryjnych, czyli pomiaru w sztucznie odtworzonych warunkach. Jest idealny do diagnozy: wskaże potencjalne długie zadania JavaScript, zasoby blokujące renderowanie, zbyt ciężki bundle, nieefektywną hydratację czy duży Total Blocking Time. TBT nie jest tym samym co INP, ale często dobrze sygnalizuje problemy z responsywnością. Jeśli TBT jest wysokie, bardzo możliwe, że w realnym ruchu ucierpi też INP.

Z kolei Chrome UX Report, czyli CrUX, pokazuje field data zbierane od prawdziwych użytkowników Chrome. To te dane są bliższe temu, jak Google ocenia doświadczenie użytkownika na poziomie strony lub grupy adresów. W Google Search Console można zobaczyć, które szablony i grupy URL-i mają problemy z Core Web Vitals. Taki raport nie mówi wszystkiego o przyczynie, ale pomaga ustalić skalę problemu i priorytety prac. Jeśli na przykład problem dotyczy kart produktów, to zwykle trzeba szukać przyczyn w galerii, skryptach wariantów, rekomendacjach, widgetach opinii lub narzędziach marketing automation.

Jak czytać PageSpeed Insights bez błędnych wniosków

PageSpeed Insights łączy oba światy: u góry często widzimy dane rzeczywistych użytkowników, jeśli są dostępne, a niżej wyniki laboratoryjne z Lighthouse. To bardzo wygodne, ale również zdradliwe. Użytkownik biznesowy widzi jeden ekran i może uznać, że wszystkie liczby znaczą to samo. Nie znaczą. Jeśli pole „dane z ostatnich 28 dni” pokazuje problem z INP, a laboratoryjny test wygląda dobrze, to nie znaczy, że problemu nie ma. Oznacza raczej, że w kontrolowanych warunkach nie udało się łatwo go odtworzyć.

Drugim częstym błędem jest ślepe dążenie do 100/100. Wydajność, SEO techniczne i UX nie polegają na biciu rekordów syntetycznych, ale na usuwaniu realnych przeszkód dla użytkownika. Można obniżyć kilka punktów w teście przez dodanie ważnej funkcji biznesowej, która poprawia konwersję, i nadal podejmować dobrą decyzję. Z drugiej strony można mieć wysokie wyniki laboratoryjne, a jednocześnie fatalne doświadczenie na tanich smartfonach z przeciętną siecią komórkową. Dlatego audyt musi uwzględniać kontekst urządzeń, ważnych szablonów strony i realnych ścieżek użytkownika.

Jak połączyć pomiar techniczny z analizą zachowania użytkowników

W praktyce najlepiej zestawić raporty Core Web Vitals z analityką zachowania. Jeśli słabe INP zbiega się ze wzrostem porzuceń koszyka, niską interakcją z filtrami lub słabszą używalnością mobilną, otrzymujemy znacznie pełniejszy obraz. W e-commerce problemy często ujawniają się nie na stronie głównej, lecz na listingu produktów, w karcie produktu, koszyku i checkout. To tam użytkownik intensywnie klika, przewija, zmienia opcje i oczekuje natychmiastowej reakcji interfejsu.

W 2026 roku coraz częściej wspiera się takie analizy automatyzacją i AI, ale trzeba zachować ostrożność. Narzędzia oparte na AI mogą pomóc podsumować raporty, wykryć wzorce regresji czy wygenerować checklistę optymalizacji, lecz nie powinny zastępować ręcznej interpretacji. Ten sam objaw, na przykład słaby INP, może wynikać z różnych przyczyn: ciężkiego skryptu czatu, nieefektywnego frameworka, problematycznej hydratacji, źle napisanych event listenerów albo zewnętrznego silnika personalizacji. Bez testów i kontekstu biznesowego łatwo wdrożyć „optymalizację”, która pozornie coś przyspieszy, a realnie popsuje funkcjonalność.

Co najczęściej pogarsza INP i jak poprawić responsywność strony bez psucia funkcji

Najważniejsza prawda o INP jest taka, że problem zwykle nie tkwi w jednym magicznym parametrze. Za wolną reakcją interfejsu najczęściej stoi nadmierne obciążenie głównego wątku, zbyt duża ilość pracy wykonywanej jednocześnie po stronie przeglądarki albo nieprzemyślana architektura frontendu. Gdy użytkownik klika, a strona nie odpowiada, bardzo często powodem nie jest sieć, lecz to, że przeglądarka ma zbyt dużo zadań do wykonania natychmiast po interakcji.

JavaScript main thread, ciężkie komponenty i nadmierna hydratacja

Jednym z najczęstszych źródeł słabego INP jest przeciążony JavaScript main thread. Jeśli aplikacja korzysta z rozbudowanych bibliotek, wielu warstw stanu, licznych watcherów i ciężkich operacji na DOM, każde kliknięcie może uruchamiać kosztowny łańcuch zdarzeń. Dotyczy to zwłaszcza nowoczesnych frontendów opartych o SPA, gdzie dużo dzieje się po stronie klienta. Sama zmiana widoku może być szybka z perspektywy serwera, ale reakcja interfejsu po kliknięciu bywa opóźniona przez intensywne przeliczenia w przeglądarce.

Osobnym problemem jest hydration, czyli „ożywianie” HTML wygenerowanego wcześniej. W modelach server-side rendering i static site generation użytkownik szybko widzi treść, ale jeśli później przeglądarka musi wykonać dużą porcję JavaScript, interakcje mogą przez chwilę działać słabo. To częsty paradoks: dobre FCP i niezły LCP, ale przeciętne INP. Dlatego sama obecność SSR lub SSG nie rozwiązuje wszystkich problemów z wydajnością. Trzeba jeszcze kontrolować koszt JavaScript po stronie klienta i ograniczać niepotrzebną hydratację komponentów, które nie wymagają natychmiastowej interakcji.

Skrypty zewnętrzne, tagi marketingowe i kompromisy biznesowe

Problemy z INP bardzo często pochodzą ze skryptów zewnętrznych: narzędzi analitycznych, tag managerów, czatów, pop-upów, personalizacji, heatmap, systemów A/B testów, widgetów opinii, narzędzi afiliacyjnych i reklamowych. Nie oznacza to jednak, że należy je bezrefleksyjnie usuwać. Potrzebna jest ocena wpływu na biznes. Niektóre skrypty są krytyczne dla sprzedaży, obsługi klienta lub pomiaru kampanii. Zadaniem specjalisty nie jest „wyciąć wszystko”, tylko określić, co ładować wcześniej, co później, co warunkowo, a co można zastąpić lżejszym rozwiązaniem.

Skuteczna optymalizacja JavaScript polega zwykle na podziale kodu, opóźnianiu niekrytycznych skryptów, redukcji liczby eventów, ograniczaniu pracy wykonywanej bezpośrednio po interakcji i testowaniu alternatyw dla najcięższych integracji. Czasem jedna oszczędność na bibliotece slidera albo module rekomendacji daje większy efekt niż seria drobnych minifikacji. Warto też sprawdzać, które skrypty działają na wszystkich podstronach, choć realnie są potrzebne tylko w jednym miejscu.

Renderowanie, stylowanie i koszt zmian w DOM po kliknięciu

Nie każdy problem z INP wynika wyłącznie z JavaScript. Gdy po kliknięciu interfejs wywołuje kosztowne zmiany w układzie, przeglądarka musi przeliczyć style, layout i malowanie. Jeżeli komponent przebudowuje dużą część strony, przesuwa wiele elementów albo inicjuje złożone animacje, opóźnienie może być wyraźne nawet przy umiarkowanej ilości kodu JS. Dlatego analiza responsywności powinna obejmować też CSS, strukturę DOM i sposób aktualizacji widoku.

Pomaga ograniczenie liczby głębokich zmian w drzewie dokumentu, upraszczanie komponentów, unikanie niepotrzebnych re-renderów oraz lepsza separacja sekcji interaktywnych. W wielu projektach poprawa INP nie wynika z jednej „sztuczki”, lecz z uporządkowania architektury komponentów, dzięki czemu kliknięcie filtra nie powoduje przebudowy całego ekranu. To podejście jest szczególnie ważne na urządzeniach mobilnych, gdzie mobile performance łatwo pogarsza się przez pozornie niewinne dodatki interfejsowe.

Jak łączyć poprawę INP z LCP, CLS, SEO technicznym i stałym monitoringiem wydajności

Choć temat przewodni brzmi „Interaction to Next Paint — co to jest INP i dlaczego zastąpiło FID?”, w praktyce nie da się poprawiać tego wskaźnika w oderwaniu od całego ekosystemu Core Web Vitals. Strona może reagować szybko na kliknięcia, ale nadal frustrować użytkownika przez wolne ładowanie treści albo przesuwający się layout. Dlatego rozsądny audyt obejmuje równolegle LCP, INP i CLS, a także elementy pomocnicze, takie jak FCP, TTFB czy TBT.

Dlaczego LCP, CLS i INP trzeba analizować razem

LCP mierzy moment pojawienia się największego elementu treściowego w pierwszym ekranie, zwykle obrazu hero, dużego nagłówka lub banera. Jeśli ten element ładuje się wolno przez słabą odpowiedź serwera, ciężki obraz, blokujące CSS albo brak preloadu, użytkownik długo czeka na sensowny start strony. CLS z kolei pokazuje, czy layout pozostaje stabilny. Jeśli po chwili doskakują bannery, fonty, iframe’y albo obrazy bez zarezerwowanego miejsca, interfejs robi się nerwowy i trudny w użyciu. INP domyka ten obraz, bo ocenia, jak strona odpowiada wtedy, gdy użytkownik już z niej korzysta.

To ważne także dla SEO. Google bierze pod uwagę doświadczenie użytkownika, ale nie można upraszczać tego do tezy, że Core Web Vitals same w sobie „ustawiają” ranking. Dobre wskaźniki wspierają jakość techniczną serwisu i mogą pomóc tam, gdzie konkurencja treściowa jest porównywalna, lecz nie zastępują trafności treści, intencji wyszukiwania, architektury informacji, linkowania wewnętrznego, autorytetu domeny i ogólnej użyteczności. SEO techniczne jest ważnym fundamentem, nie jedynym czynnikiem sukcesu.

Praktyczne działania, które poprawiają nie tylko INP, ale całą wydajność strony

W wielu wdrożeniach najlepsze efekty daje połączenie kilku grup działań. Dla LCP kluczowe bywają krótszy czas odpowiedzi serwera, lepszy hosting, konfiguracja cache serwera, wykorzystanie CDN, skrócenie ścieżki do zasobów krytycznych, preload najważniejszego obrazu oraz porządna optymalizacja obrazów w formatach WebP lub AVIF. Znaczenie ma też odpowiedni srcset i sizes, aby urządzenia mobilne nie pobierały plików większych niż potrzebują.

Dla CLS warto rezerwować miejsce na obrazy, reklamy, widgety, bannery i osadzane treści, ograniczać nagłe doładowania sekcji nad aktualnie oglądaną treścią oraz dobrze zarządzać fontami. Pomaga preload lokalnych krojów, rozsądne użycie font-display i ograniczenie liczby wariantów wag. Dla INP priorytetem będzie natomiast kontrola JavaScript, redukcja długich zadań, poprawa logiki komponentów i ograniczenie kosztu zmian w widoku po interakcji.

Równie ważna jest optymalizacja CSS. Zasoby blokujące renderowanie, nadmiar frameworkowego stylowania, brak critical CSS, rozdmuchane pliki i nieużywany kod wydłużają critical rendering path i wpływają nie tylko na ładowanie, ale czasem także na późniejsze przeliczenia po zmianach w interfejsie. Minifikacja plików jest pomocna, lecz zwykle nie zastąpi lepszej organizacji zasobów i kontroli tego, co naprawdę musi być dostępne na starcie.

Jak prowadzić audyt i monitoring po wdrożeniach

Audyt Core Web Vitals powinien zaczynać się od identyfikacji najważniejszych szablonów i ścieżek użytkownika, a nie od losowego sprawdzania pojedynczych adresów URL. Strona główna, listing kategorii, karta produktu, wpis blogowy, formularz leadowy, koszyk i checkout mogą zachowywać się zupełnie inaczej. Następnie trzeba porównać dane laboratoryjne i dane rzeczywistych użytkowników, zwłaszcza na mobile. Dopiero wtedy ustala się priorytety: co najbardziej szkodzi użytkownikom i gdzie poprawa przyniesie największą wartość biznesową.

Po wdrożeniu zmian nie wolno kończyć pracy. Wydajność jest procesem, a nie jednorazowym projektem. Nowy moduł marketingowy, aktualizacja motywu, dodatkowy skrypt partnera, zmiana hostingu albo rozbudowa aplikacji frontendowej potrafią szybko zepsuć wcześniej wypracowane wyniki. Dlatego potrzebne są testy regresji, monitoring po publikacji, okresowa kontrola raportów CrUX i Search Console oraz regularne przeglądy nowych zależności. Automatyzacja może pomagać, ale nadal kluczowe jest sprawdzanie, czy poprawa techniczna nie odbyła się kosztem funkcjonalności, konwersji i realnego doświadczenia użytkownika.

Zdjęcie Jacka Kałuży

Masz pytania? Porozmawiajmy o Twoim marketingu

Skontaktuj się ze mną!


Jacek Kałuża
< Powrót

Zapisz się do newslettera


Zadzwoń Napisz