Přeskočit na hlavní obsah

Jak měříme rychlost webu?

V tomto textu se dozvíte, jak přesně stahujeme a zpracováváme data o rychlosti webů v monitoringu app.pagespeed.cz.

Než se pustíte do dalšího čtení, ujistěte se, že jste seznámení s rozdíly mezi různými typy měření rychlosti (CrUX, synth a RUM) a že znáte základy našeho monitoringu rychlosti.

Data od uživatelů Googlu

Data metrik Core Web Vitals (LCP, INP, CLS)  z Chrome UX Reportu (CrUX) sbíráme pro zobrazování v našich reportech takto:

  • V tarifu PLUS je stahujeme a do reportů přidáváme každý den v nočních hodinách. Týká se to jak dat pro report Stránky, tak pro report Domény a všechny výskyty CrUX dat napříč aplikací. Platí to stejně pro mobil i pro desktop.
  • V bezplatných testech data pro stránky vůbec nestahujeme. Data pro domény stahujeme jednou za dva dny, střídavě pro mobil a pro desktop.

Dashboard rychlosti Data z Chrome UX Reportu vidíte například v hlavním dashboardu vašeho týmu.

Data pro grafy měsíčního vývoje metrik (v reportu Domény) stahujeme vždy jednou měsíčně. Data vycházejí každou druhou středu v měsíci a my je zpracováváme v řádu několika dní potom.

Vývoj metrik v Chrome UX Reportu po měsících Vývoj metrik v Chrome UX Reportu po měsících, který zobrazujeme v reportu Domény.

Syntetická data

Data ze syntetických testů Lighthouse získáváme dvojím způsobem:

  • V tarifu PLUS pouštíme Lighthouse na vlastní infrastruktuře a to každý den několikrát. Detailněji o tom píšeme níže.
  • V bezplatných testech stahujeme méně přesná data z API PageSpeed Insights a to jednou za dva dny jak pro desktop, tak pro mobil.

Pojďme se nyní podívat, jakým způsobem pouštíme syntetická měření v tarifu PLUS.

Hlídač rychlosti Syntetická data slouží k každodenním sběru informací, například pro Hlídače rychlosti.

Syntetická měření v tarifu PLUS

🔒 Tento typ měření provádíme v tarifu PLUS.

Na základě našich zkušeností s jinými nástroji během poradenství k rychlosti webu a mnoha experimentů, které jsme prováděli během vývoje monitoringu, jsme došli k následujícímu způsobu testování každé URL. 

Testujeme v noční hodinách, pětkrát krátce za sebou a to celé spouštíme jednou denně.

Noční hodiny

Pro krátkodobé (dny) a dlouhodobější (měsíce) sbírání dat metrik Core Web Vitals považujeme noční časy za best-practice.

V noci nejsou vaše servery vystaveny takové zátěži, můžeme je otestovat více v klidu a uvidíme díky tomu dlouhodobý trend vývoje nebo zhoršení rychlosti. Rychlost odezvy serveru (metrika TTFB) totiž ovlivňuje uživatelské metriky, na které se díváme, jako je LCP nebo FCP.

Máme zkušenost, že noční výsledky jsou mnohem stabilnější a řeknou vám více o vývoji metrik v čase.

TIP: Pokud vám noční hodiny nevyhovují, například proto, že se testy trefují do probíhající údržby webu, pak máte v nastavení testu možnost čas testu změnit.

Pětkrát krátce za sebou

Víme, že jednorázové testy, jako ty, které děláme pomocí PageSpeed Insights v našich bezplatných testech, mohou ukazovat nepřesné výsledky.

Experimentováním jsme došli k potřebě provádět pět testů, díky které odstraníme nejvíce nepřesností a dosáhneme maximální stability čísel. Testy proběhnou několik minut od sebe, přesné časy vždy vidíte v detailu Lighthouse testu.

Jednou denně

Každé URL tedy testujeme standardně v rozmezí několika minut a tyto testy spouštíme vždy jednou denně, vždy během noci. 

Proč testujeme tak „málo“?

Občas dostaneme dotaz, proč testování probíhá jen v krátkém denním časovém úseku. Proč synteticky netestujeme třeba každou minutu?

Zde je docela důležité si ujasnit, že náš monitoring slouží k testování uživatelských metrik Core Web Vitals a dalších. Nejde tedy o monitoring dostupnosti serveru, ani monitoring jeho zátěže. K tomu slouží jiné nástroje jako třeba Uptimerobot.com nebo Updown.io.

Syntetická měření by navíc neměla nahrazovat data od uživatelů, která slouží ke sběru přesných informací o výkonu webu, nejen napříč všemi denními časy, ale také napříč všemi dalšími uživatelskými segmenty.

Pro sledování změn u uživatelů sbíráme data z Chrome UX Reportu a u větších webů pak nasazujeme SpeedCurve RUM.

Na čem testujeme?

Testování probíhá na evropské infrastruktuře Amazon Web Services (AWS), aktuálně z Frankfurtu nad Mohanem.

Testovací stroje pečlivě vybíráme tak, aby docházelo k co nejmenším výkyvům, hlavně u javascriptových metrik jako je Total Blocking Time (TBT).

Jak propustit našeho bota na váš web?

Může se stát, že chcete testovat nehotovou verzi vašeho webu nebo třeba preview (např. beta, test, staging, pre-produkci). Náš testovací robot však nemusí projít vašim zabezpečením proti robotům ani na produkčních webech.

Je však možné našemu robotovi ponechat pootevřená zadní vrátka jedním z těchto dvou způsobů:

  • Detekujte user-agent string. Náš robot obsahuje slova jako Pagespeed.cz nebo Chrome-Lighthouse.
  • Detekujte IP adresu. Náš robot přichází z adresy 18.192.177.19

Tarif PLUS pro profi monitoring rychlosti webu