Slovník SEO pojmů

Interaction to
Next Paint (INP)

INP měří, jak rychle váš web reaguje na kliknutí, tapnutí a stisk klávesy. Od března 2024 je součástí Core Web Vitals a přímo ovlivňuje pozice ve vyhledávání Google.

Aktualizováno: · Autor: Samuel Krištof, PŘESAH.agency

200 ms
hranice dobrého INP skóre
březen 2024
INP nahradilo FID v Core Web Vitals
~1/3 webů
nesplňuje hranici dobrého INP dle dat Google

Definice

Co je Interaction to Next Paint

Interaction to Next Paint (INP) je metrika výkonnosti webu, která měří dobu od okamžiku, kdy uživatel provede interakci se stránkou, do chvíle, kdy prohlížeč vykreslí vizuální odezvu. Jinými slovy: jak rychle váš web zareaguje na kliknutí, tapnutí na mobilu nebo stisk klávesy.

INP sleduje všechny interakce po celou dobu pobytu uživatele na stránce a jako výslednou hodnotu vrací tu nejhorší zaznamenanou prodlevu. Pokud je interakcí více než 50 (například u her nebo složitých aplikací), Google ignoruje jednu nejhorší hodnotu na každých 50 interakcí, aby jednorázové výpadky nezkreslily celkový obraz.

Google sleduje INP prostřednictvím dat z Chrome User Experience Reportu (CrUX) a reportuje hodnotu na 75. percentilu ze všech načtení stránky. To znamená, že 75 % návštěvníků vašeho webu musí mít INP pod stanovenou hranicí, aby stránka prošla hodnocením.

INP je od března 2024 součástí Core Web Vitals, sady metrik, kterou Google zahrnuje do Page Experience signálu. Ten ovlivňuje hodnocení stránek ve výsledcích vyhledávání.

Pozor na název: „Next Paint“ neznamená vykreslení celé stránky, ale vykreslení nejbližšího dalšího snímku po interakci. Jde tedy o okamžik, kdy uživatel dostane první vizuální potvrzení, že se něco děje.

Které interakce INP sleduje?

INP měří výhradně tři typy interakcí: kliknutí myší, tapnutí na dotykové obrazovce a stisk fyzické nebo virtuální klávesy. Hover, scroll ani zoom se do INP nezapočítávají.

Mechanismus

Jak INP funguje: tři fáze prodlevy

Celková prodleva interakce se skládá ze tří po sobě jdoucích fází. Každá z nich může být příčinou špatného INP skóre a každá vyžaduje jiný přístup k opravě.

01
Input delay
Prodleva mezi okamžikem interakce a spuštěním event handleru. Vzniká tehdy, když hlavní vlákno prohlížeče zpracovává jiný úkol a nemůže interakci okamžitě přijmout.
Příčina: long tasks, třetí strany
02
Processing time
Doba, po kterou běží samotný JavaScript event handler. Tato část prodlevy je u FID chyběla zcela. Sem patří veškerá logika spuštěná po kliknutí: výpočty, aktualizace stavu, síťové požadavky.
Příčina: těžký JS, synchronní operace
03
Presentation delay
Čas od dokončení event handleru po vykreslení dalšího snímku. Zahrnuje výpočet layoutu a malování. Většinou tvoří nejmenší část prodlevy, ale špatné CSS animace nebo rozsáhlé změny DOM ji mohou prodloužit.
Příčina: rozsáhlé DOM změny, CSS
Proč je to důležité: FID (předchůdce INP) měřil jen input delay, tedy první část. INP měří všechny tři fáze dohromady. Proto jsou weby náročné na JavaScript u INP výrazně přísněji hodnoceny.

Pásma hodnocení

Hodnoty INP: co znamenají jednotlivá pásma

Google definuje tři pásma INP. Hranice nejsou libovolné: 200 ms odpovídá prahu, který lidé při UX výzkumech vnímají jako okamžitou odezvu. Nad 500 ms začíná většina uživatelů pochybovat, zda jejich akce vůbec zaregistroval.

Hodnocení Hodnota INP Co to znamená v praxi Doporučená akce
Dobré 200 ms a méně Web reaguje okamžitě. Uživatel cítí, že je stránka živá a responzivní. Udržujte stav, sledujte regrese při nasazení nového kódu.
Vyžaduje zlepšení 201 až 500 ms Drobné zpoždění, které si uživatelé na pomalejších zařízeních nebo mobilech začínají všímat. Může zvýšit míru opuštění webu. Identifikujte nejpomalejší interakce v DevTools a prioritizujte jejich opravu.
Špatné 500 ms a více Web se tváří jako zamrzlý. Uživatelé klikají opakovaně, myslí si, že akce neprošla, a odchází. Okamžitý zásah. Profiling JS, chunking long tasks, audit třetích stran.

Zdroj: web.dev/articles/inp · Google měří INP na 75. percentilu všech načtení stránky.

Diagnostika

Jak INP změřit: přehled nástrojů

INP se měří dvěma způsoby: field data (skutečná data od vašich návštěvníků) a lab data (simulace v kontrolovaném prostředí). Pro hodnocení ze strany Google jsou závazná field data, ale lab data slouží k diagnostice a hledání příčin.

Nástroj Typ dat Co zobrazí Pro koho
PageSpeed Insights Field + Lab INP skóre z CrUX dat (reální uživatelé) i Lighthouse simulace. Rychlý přehled o stavu stránky. Majitelé webů, marketéři
Google Search Console Field Zpráva Core Web Vitals zobrazí INP agregovaně napříč celým webem. Vidíte, které URL mají špatné skóre. Majitelé webů, SEO specialisté
Chrome DevTools (Performance panel) Lab Nahrání konkrétní interakce, vizualizace long tasks, flame chart JS volání. Nejpřesnější diagnostika příčin. Vývojáři
Chrome UX Report (CrUX) Field Surová data z Chrome prohlížečů. Přístupná přes BigQuery nebo PageSpeed Insights API. Historický vývoj INP. SEO analytici, vývojáři
Důležité: Pokud váš web nemá dostatek návštěvníků z prohlížeče Chrome, CrUX data nemusí být dostupná. V takovém případě se spoléhejte výhradně na lab data z DevTools a Lighthouse.

Diagnostika

Co způsobuje špatné INP

Většina problémů s INP má společného jmenovatele: hlavní vlákno prohlížeče je přetíženo JavaScriptem. Prohlížeč může v jednu chvíli dělat jen jednu věc. Pokud main thread zpracovává dlouhý JS task, nemůže zároveň reagovat na kliknutí uživatele.

Nejčastější příčiny

  • Long tasks v JavaScriptu: úlohy trvající déle než 50 ms blokují main thread a zdržují zpracování interakce. Typicky jde o rozsáhlé výpočty, parsování dat nebo inicializaci knihoven.
  • Synchronní event handlery: onclick handler, který synchronně spustí těžký výpočet nebo rozsáhlou aktualizaci DOM, zdrží vykreslení dalšího snímku.
  • Skripty třetích stran: analytické nástroje, chatboty, reklamní skripty nebo A/B testovací platformy spouštějí vlastní kód na main threadu a zvyšují input delay.
  • Nadměrné překreslování DOM: po kliknutí aktualizujete velkou část DOM najednou. Prohlížeč musí přepočítat layout a to prodlužuje presentation delay.
  • Renderovací frameworky bez optimalizace: React, Vue nebo Angular weby bez code splittingu a memoizace mohou způsobovat rozsáhlé re-rendery při každé interakci.
  • Pomalé síťové requesty v event handleru: pokud handler čeká na synchronní odpověď serveru před vykreslením jakékoli zpětné vazby, uživatel nevidí nic.

Jak příčinu identifikovat

V Chrome DevTools otevřete záložku Performance a nahrajte záznam při provádění pomalé interakce. Hledejte:

  • Červené bloky v řádku Main. To jsou long tasks, které brzdí odezvu.
  • Šířku žlutého segmentu Scripting. Ukazuje, kolik času strávil prohlížeč zpracováváním JS.
  • INP candidate v sekci Timings. DevTools od Chrome 112 zvýrazní konkrétní interakci, která přispěla k INP skóre.
Tip: Testujte na středně výkonném Android zařízení nebo použijte CPU throttling 4× v DevTools. Váš vývojářský notebook je výrazně rychlejší než telefon průměrného zákazníka.

Řešení

Jak INP optimalizovat: praktický postup

Optimalizace INP není jednorázová akce. Jde o opakující se cyklus: měření, identifikace nejpomalejší interakce, oprava, ověření. Níže jsou nejúčinnější kroky seřazené podle dopadu.

01
Identifikujte nejhorší interakci
PageSpeed Insights nebo DevTools Performance panel
02
Rozdělte long tasks
Chunking pomocí setTimeout nebo scheduler.yield()
03
Zobrazte okamžitou zpětnou vazbu
Spinner nebo vizuální změna ještě před dokončením operace
04
Auditujte třetí strany
Odstraňte nebo odložte skripty, které nepotřebujete ihned
05
Ověřte výsledek
PageSpeed Insights, po 28 dnech GSC zpráva CWV

Chunking long tasks

Dlouhý JS task rozdělte na kratší části, mezi nimiž prohlížeč dostane prostor zpracovat čekající vstupy. Nejjednodušší přístup je setTimeout(fn, 0), který odloží část práce na další iteraci event loopu.

Modernější alternativou je scheduler.yield(), které explicitně předá řízení prohlížeči. Je dostupné v Chrome 115 a novějším.

Okamžitá vizuální zpětná vazba

Pokud interakce spouští operaci, která trvá déle (síťový požadavek, komplexní výpočet), zobrazte vizuální změnu ihned po kliknutí. Spinner, změna barvy tlačítka nebo placeholder obsah.

Tím sice INP skóre ve ms nesnížíte, ale prohlížeč namaluje snímek dříve a metrika se zlepší. Uživatel navíc okamžitě ví, že akce proběhla.

Debouncing a throttling

U vyhledávacích polí s live search nebo filtrů produktů, kde uživatel rychle mění hodnotu, použijte debouncing (spusťte handler až po 200 ms pauze od poslední akce). Zabrání opakovanému spouštění drahých operací při každém stisku klávesy.

Příklad z praxe: e-shop filtr

Zákazník klikne na filtr kategorie. INP měří 850 ms. Příčina: event handler synchronně načítá 400 produktů, přegenerovává celý seznam a přepočítává ceny.

Řešení: okamžitě zobrazit skeleton loader, načtení přesunout do asynchronní funkce, výsledky renderovat postupně po 50 položkách. INP klesne pod 180 ms.

SEO kontext

INP a SEO: jak metrika ovlivňuje pozice

Google nikdy nezveřejnil přesnou váhu Page Experience v rámci celého rankingového algoritmu. Z dostupných dat a vyjádření zaměstnanců Google vyplývá, že jde o tie-breaker: při srovnatelné kvalitě obsahu vítězí stránka s lepším uživatelským prožitkem. Na velmi konkurenčních klíčových slovech tak může rozdíl v INP skóre rozhodovat o pozici.

Nepřímý dopad je ale ještě zřetelnější. Weby se špatným INP mají vyšší míru opuštění, nižší čas strávený na stránce a méně konverzí. Všechny tyto uživatelské signály Google sleduje a promítá do hodnocení kvality stránky.

Přímý ranking signál

INP jako součást CWV vstupuje do Page Experience hodnocení. Google agreguje data z CrUX za posledních 28 dní a aktualizuje hodnocení průběžně.

  • Srovnatelný obsah: stránka s INP pod 200 ms má výhodu oproti stránce s INP 600 ms
  • Mobilní hodnocení: Google primárně indexuje mobilní verzi, INP na mobilu je proto kritičtější
Nepřímý dopad na výkonnost

Pomalá odezva webu snižuje konverze a zvyšuje míru opuštění. To se promítá do uživatelských signálů, které Google hodnotí.

  • E-shopy: prodleva filtru nebo košíku nad 500 ms prokazatelně snižuje počet dokončených objednávek
  • Obsahové weby: pomalé načtení reakce na kliknutí v navigaci zvyšuje okamžité opuštění

Srovnání

INP vs. FID: v čem se liší

First Input Delay (FID) bylo předchozí metrikou interaktivity v Core Web Vitals. INP ho nahradilo, protože FID měřilo příliš málo a příliš tolerantně.

Vlastnost FID (do března 2024) INP (od března 2024)
Co měří Pouze input delay první interakce Celou prodlevu (input delay + processing + presentation) všech interakcí
Kdy měří Jen při prvním kliknutí po načtení stránky Po celou dobu pobytu uživatele na stránce
Přísnost Splňovalo 95 % webů, příliš benevolentní Přibližně 2/3 webů splňují, realističtější hodnocení
Práh „dobré“ 100 ms 200 ms
Hlavní slabina Ignorovalo problémy po načtení stránky, ignorovalo JS processing time Vyžaduje více dat (field data); na nových nebo málo navštěvovaných webech nemusí být dostupné

Core Web Vitals

INP jako součást Core Web Vitals

INP je jednou ze tří metrik, které tvoří Core Web Vitals. Každá měří jinou dimenzi uživatelského prožitku:

LCP — Largest Contentful Paint

Měří rychlost načítání největšího viditelného prvku. Hodnotí, jak rychle uživatel vidí hlavní obsah stránky.

Rychlost načítání

INP — Interaction to Next Paint

Měří rychlost reakce na interakce uživatele. Hodnotí, jak rychle web odpovídá na kliknutí a tapnutí.

Interaktivita

CLS — Cumulative Layout Shift

Měří vizuální stabilitu stránky. Hodnotí, jak moc se prvky na stránce neočekávaně posouvají při načítání.

Vizuální stabilita

Pro splnění Page Experience hodnocení musí stránka dosáhnout dobrého skóre ve všech třech metrikách na 75. percentilu návštěvníků. Zlepšení INP bez práce na LCP a CLS proto nepřinese plný efekt.

Časté otázky

Otázky o INP

Interaction to Next Paint (INP) je metrika Core Web Vitals měřící celkovou dobu odezvy stránky na interakce uživatele. Nahradilo FID (First Input Delay) v březnu 2024, protože FID měřilo pouze prodlevu při první interakci a ignorovalo dobu zpracování JavaScriptu. INP je přesnější a přísnější: měří všechny interakce po celou dobu pobytu na stránce a počítá s celou prodlevou, ne jen s její první částí.
Google definuje tři pásma: 200 ms a méně je dobré, 201 až 500 ms vyžaduje zlepšení, 500 ms a více je špatné. Hodnota 200 ms odpovídá prahu, který lidé vnímají jako okamžitou odezvu. Google hodnotí INP na 75. percentilu ze všech načtení stránky, takže 75 % vašich návštěvníků musí mít INP pod 200 ms.
Nejrychlejší způsob je zadat URL do PageSpeed Insights (pagespeed.web.dev). Zobrazí INP z reálných dat uživatelů Chrome (field data) i ze simulace. Pro přehled celého webu otevřete Google Search Console a přejděte do zprávy Základní metriky webu. Detailní diagnostiku konkrétní interakce provedete v Chrome DevTools, záložka Performance.
Nejčastější příčinou jsou long tasks v JavaScriptu, tedy úlohy trvající déle než 50 ms, které blokují main thread prohlížeče. Dále skripty třetích stran (analytika, chatboty, reklamy), synchronní event handlery provádějící těžké výpočty a nadměrné překreslování DOM po interakci. Na webech postavených na JS frameworcích jako React nebo Vue přispívají ke špatnému INP také nekontrolované re-rendery komponent.
Ano. INP je součástí Core Web Vitals, které Google zahrnuje do Page Experience signálu ovlivňujícího ranking. Google nikdy nezveřejnil přesnou váhu, ale obecně platí, že při srovnatelné kvalitě obsahu vítězí stránka s lepším uživatelským prožitkem. Na konkurenčních klíčových slovech může rozdíl v INP skóre rozhodovat o pozici.
Google aktualizuje CrUX data průběžně v 28denním okně. To znamená, že po nasazení opravy trvá přibližně 28 dní, než se nové INP skóre plně promítne do zprávy Core Web Vitals v Google Search Console. Zlepšení v PageSpeed Insights uvidíte dříve, jakmile se nová data od uživatelů začnou akumulovat, obvykle za 7 až 14 dní při dostatečné návštěvnosti.

Máte problém s INP
nebo Core Web Vitals?

Projdeme váš web, identifikujeme konkrétní interakce, které INP brzdí, a navrhneme postup opravy.

Nezávazná konzultace
Technický SEO audit · Core Web Vitals diagnostika · Vývojářská doporučení
Samuel Krištof — CEO PŘESAH.agency

Autor článku

Samuel Krištof

CEO & CMO · PŘESAH.agency

SEO Online marketing Správa PPC Sociální sítě Emailing

Marketingu se věnuji od roku 2017. Začínal jsem ve Fajn skupině, kde jsem budoval komunity na Facebooku a záhy přešel k placeným kampaním. Postupně jsem se dostal k SEO, automatizacím a celkové správě marketingu. Dnes působím jako CEO agentury PŘESAH a zároveň jako externí CMO ve společnosti Bohemian Estates.

Obsah článku je ověřen vůči oficiálním zdrojům web.dev a Google Search Central.

Zdroje

Použité zdroje

Přejít nahoru