Dołącz do listy oczekujących i otrzymaj Sublim Business za darmo na 3 miesiące  Skorzystaj z oferty

SEO i pozyskiwanie

INP: definicja, progi i zastąpienie FID

Guillaume Sallé
Guillaume Sallé
Kierownik ds. treści i słownika analitycznego

Zaktualizowano dnia February 22, 2026

Szybka definicja

INP (Interaction to Next Paint) to metryka Core Web Vitals mierząca ogólną reaktywność strony internetowej na interakcje użytkownika przez całą sesję. INP uznawany jest za dobry, jeśli wynosi poniżej 200 milisekund, do poprawy między 200 ms a 500 ms i zły powyżej 500 ms. INP oficjalnie zastąpił FID (First Input Delay) w marcu 2024 w Core Web Vitals Google.

Jak to działa

INP (Interaction to Next Paint) mierzy latencję wszystkich interakcji użytkownika ze stroną — kliknięcia, dotknięcia, naciśnięcia klawiatury — i bierze pod uwagę najgorszą zaobserwowaną latencję w całej sesji (z tolerancją na ignorowanie kilku outlierów). W przeciwieństwie do FID, który rejestrował tylko pierwszą interakcję, INP daje pełen obraz reaktywności w trakcie nawigacji. Oficjalne progi Google: dobry (zielony) poniżej 200 ms, do poprawy (pomarańczowy) między 200 ms a 500 ms, zły (czerwony) powyżej 500 ms. Konkretny przykład: serwis rezerwacyjny, w którym użytkownik wybiera daty z kalendarza, liczbę osób i klika „Szukaj”. Jeśli każda z tych interakcji zabiera 350 ms zanim interfejs zareaguje, INP będzie zły. Główną przyczyną złego INP jest wykonywanie długich zadań JavaScript w głównym wątku, opóźniających przetwarzanie interakcji. INP mierzy trzy fazy: opóźnienie wejściowe (czas, zanim przeglądarka zacznie przetwarzać zdarzenie), czas przetwarzania (czas wykonywania handlerów zdarzeń) i opóźnienie prezentacji (czas do następnego renderowania klatki).

Dlaczego to ważne

INP jest obecnie oficjalnym sygnałem reaktywności w Core Web Vitals od marca 2024. Zły INP oznacza, że interfejs sprawia wrażenie powolnego lub zamrożonego, nawet jeśli strona załadowała się szybko. W aplikacjach webowych bogatych w JavaScript (SPA, dynamiczny e-commerce, narzędzia SaaS) INP jest często najtrudniejszym Core Web Vital do uzyskania w zielonym zakresie. Dobry INP koreluje bezpośrednio z lepszym współczynnikiem retencji i zaangażowania użytkowników.

Jak poprawić lub wykorzystać

Aby poprawić INP: dziel długie zadania JavaScript za pomocą `scheduler.yield()` lub `setTimeout()`, by uwolnić główny wątek. Redukuj ilość JavaScriptu wykonywanego przy starcie poprzez code-splitting i lazy loading. Optymalizuj handlery zdarzeń, by były lekkie i delegowały ciężkie operacje do web workerów. Unikaj zbędnych ponownych renderowań w frameworkach (React, Vue) poprzez memoizację komponentów. Używaj Chrome DevTools (zakładka Performance), aby profilować wolne interakcje.

Z Sublim

Sublim mierzy wydajność ładowania i reaktywności stron w warunkach rzeczywistych, równolegle z danymi zaangażowania użytkownika. Łatwo identyfikujesz strony z pogorszonym INP i sprawdzasz, jak wpływa to na konwersje — wszystko bez plików cookie, z hostingiem w 100% europejskim zgodnym z RODO i bez zależności od Google Analytics.

Najczęściej zadawane pytania

Kiedy INP zastąpił FID w Core Web Vitals?

INP oficjalnie zastąpił FID (First Input Delay) jako metrykę Core Web Vitals w marcu 2024. Google ogłosił tę zmianę w maju 2023, aby dać zespołom czas na przygotowanie. Od tej daty to INP pojawia się w Google Search Console i jest brany pod uwagę w rankingu.

Dlaczego INP jest lepszy niż FID?

FID mierzył tylko opóźnienie przed pierwszą interakcją i ignorował rzeczywisty czas przetwarzania. INP mierzy pełną latencję (opóźnienie + przetwarzanie + renderowanie) wszystkich interakcji w sesji. Daje to znacznie wierniejszy obraz rzeczywistej reaktywności strony przez całe jej użytkowanie, zwłaszcza dla interaktywnych aplikacji webowych.

Moja witryna React ma zły INP — od czego zacząć?

Zacznij od identyfikacji najwolniejszych interakcji za pomocą rozszerzenia Web Vitals Chrome lub profilera React DevTools. Częste przyczyny w React to kaskadowe ponowne renderowania, zbyt ciężkie efekty (useEffect) wyzwalane przez interakcje i brak memoizacji (React.memo, useMemo). Code-splitting z React.lazy i Suspense również może zmniejszyć początkowe obciążenie JavaScriptu.

Powiązane terminy

INP: definicja, progi i zastąpienie FID, Sublim | Sublim Analytics