Upgrade to Pro — share decks privately, control downloads, hide ads and more …

What's What in Performance Metrics and Core Web...

Avatar for Eka Eka
July 10, 2020

What's What in Performance Metrics and Core Web Vitals

Part of 3-part talks "Web Vitals in the Wild" about the newly announced Core Web Vitals. This talk discusses what Core Web Vitals are, what they measure, why they are needed, and how to check them.

Presented at web.dev LIVE Extended GDG Bandung, Indonesia, 10 July 2020
https://youtu.be/I1rG6UvIWi4?t=10962

Avatar for Eka

Eka

July 10, 2020

More Decks by Eka

Other Decks in Programming

Transcript

  1. Whatʼs What in Performance Metrics & Core Web Vitals Eka

    @ekafyi web.dev LIVE Extended GDG Bandung 11 Juli 2020
  2. Eka @ekafyi web.dev LIVE Extended GDG Bandung 11 Juli 2020

    Why measure performance? Sebagai acuan untuk memastikan performa situs yang baik. Delay 1 detik di perangkat seluler mempengaruhi tingkat konversi s/d 20%. Performa ↑ = traffic, sesi user, konversi, pendapatan ↑ Source: Think with Google, 2019 Why Performance Matters
  3. Eka @ekafyi web.dev LIVE Extended GDG Bandung 11 Juli 2020

    How should we measure performance? Performa dipengaruhi banyak faktor (device, server, konektivitas, dll). Kriteria apa yang digunakan?
  4. Eka @ekafyi web.dev LIVE Extended GDG Bandung 11 Juli 2020

    Which one loads faster? Source: rigor.com
  5. Eka @ekafyi web.dev LIVE Extended GDG Bandung 11 Juli 2020

    User-centric performance metrics Is it ... happening? - terjadi useful? - berguna usable? - dapat digunakan delightful? - menyenangkan More info: web.dev/user-centric-performance-metrics
  6. Eka @ekafyi web.dev LIVE Extended GDG Bandung 11 Juli 2020

    Tools to measure performance Lighthouse Chrome DevTools PageSpeed Insights Chrome UX Report ...and many more
  7. Eka @ekafyi web.dev LIVE Extended GDG Bandung 11 Juli 2020

    Use PageSpeed Insights to analyze any web page developers.google.com/speed/pagespeed/insights . Masukkan URL dan klik "Analyze" . Dapatkan hasil untuk Mobile dan Desktop
  8. Eka @ekafyi web.dev LIVE Extended GDG Bandung 11 Juli 2020

    Lighthouse Performance Score Nilai didapat dari analisa Data Lab Lighthouse. Terdiri dari 6 metrics dengan bobot berbeda: FCP, SI, LCP, TTI, TBT, CLS. Interactive tool: googlechrome.github.io/lighthouse/scorecalc
  9. Eka @ekafyi web.dev LIVE Extended GDG Bandung 11 Juli 2020

    Perf Score Metrics Lighthouse v6 dan v5
  10. Eka @ekafyi web.dev LIVE Extended GDG Bandung 11 Juli 2020

    Data Lab Berasal dari simulasi dengan setting device & network yang sudah ditentukan. Metrics konsisten dan terisolasi dari variasi eksternal. Berguna untuk development.
  11. Eka @ekafyi web.dev LIVE Extended GDG Bandung 11 Juli 2020

    Data Lapangan Berasal dari data pengguna - Chrome UX Report. Menggambarkan kondisi nyata. Berguna untuk Marketing & Growth tools. PageSpeed Insights juga menyediakan origin summary sebagai perbandingan. “Apakah hanya halaman ini yang lambat atau semua halaman dari situs ini?”
  12. Eka @ekafyi web.dev LIVE Extended GDG Bandung 11 Juli 2020

    + = Kombinasikan data lab dan lapangan untuk hasil optimal
  13. Eka @ekafyi web.dev LIVE Extended GDG Bandung 11 Juli 2020

    Web Vitals Essential metrics for a healthy site Inisiatif dari Google, menyediakan panduan terpadu berisi tanda-tanda kualitas yang esensial untuk menciptakan pengalaman pengguna web yang baik
  14. Eka @ekafyi web.dev LIVE Extended GDG Bandung 11 Juli 2020

    Core Web Vitals Bagian dari inisiatif Web Vitals, berupa sekumpulan metrics yang perlu diterapkan ke semua halaman web Terintegrasi dengan berbagai tools (eg. Lighthouse kategori “Performance”, PageSpeed Insights, CrUX) Pemilik situs bisa berfokus pada metrics paling berpengaruh
  15. Eka @ekafyi web.dev LIVE Extended GDG Bandung 11 Juli 2020

    Core Web Vitals 2020: Tiga aspek UX, masing-masing diwakili satu metric inti Fast Loading Responsive Interactivity Visual Stability source: web.dev/vitals
  16. Eka @ekafyi web.dev LIVE Extended GDG Bandung 11 Juli 2020

    Performance Metrics Overview FCP First Contentful Paint Field Lab LCP Largest Contentful Paint Field Lab CWV CLS Cumulative Layout Shift Field Lab CWV FID First Input Delay Field CWV TBT Total Blocking Time Lab TTI Time To Interactive Lab SI Speed Index Lab
  17. Eka @ekafyi web.dev LIVE Extended GDG Bandung 11 Juli 2020

    Speed Index, FCP, LCP Fast Loading Metrics terkait rendering isi halaman di viewport Tujuan: User dapat segera melihat isi halaman "Is it happening?" "Is it useful?"
  18. Eka @ekafyi web.dev LIVE Extended GDG Bandung 11 Juli 2020

    SI Speed Index Lab15% Mengukur seberapa cepat isi halaman dapat terlihat jelas selama proses loading. Meng-capture proses loading halaman dan membandingkan perkembangan antar frame secara visual.
  19. Eka @ekafyi web.dev LIVE Extended GDG Bandung 11 Juli 2020

    SI Speed Index Lab15% Source: https://lighthouse-dot-webdotdevsite.appspot.com//lh/html?url=https%3A%2F%2Fcovid19.go.id
  20. Eka @ekafyi web.dev LIVE Extended GDG Bandung 11 Juli 2020

    FCP First Contentful Paint Field Lab15% Mengukur waktu sampai konten DOM pertama ditampilkan.
  21. Eka @ekafyi web.dev LIVE Extended GDG Bandung 11 Juli 2020

    LCP Largest Contentful Paint CWV Field Lab25% Mengukur waktu sampai elemen konten terbesar ditampilkan di viewport. Pengganti First Meaningful Paint (Lighthouse v5). Hanya untuk elemen tertentu ( <img> , <video> , block-level) yang terlihat di viewport.
  22. Eka @ekafyi web.dev LIVE Extended GDG Bandung 11 Juli 2020

    LCP Largest Contentful Paint CWV Field Lab25% Source: web.dev/lcp
  23. Eka @ekafyi web.dev LIVE Extended GDG Bandung 11 Juli 2020

    CLS Visual Stability Metric baru yang mengukur stabilitas visual Tujuan: Agar user tidak terganggu saat mengkonsumsi dan berinteraksi dengan isi halaman. “Is it delightful?”
  24. Eka @ekafyi web.dev LIVE Extended GDG Bandung 11 Juli 2020

    CLS Cumulative Layout Shift CWV Field Lab5% Menghitung total pergeseran layout tak terduga dari isi halaman yang terlihat. Biasanya disebabkan oleh gambar tanpa dimensi dan konten client-rendered (contoh: alert, iklan).
  25. Eka @ekafyi web.dev LIVE Extended GDG Bandung 11 Juli 2020

    CLS Cumulative Layout Shift CWV Field Lab5% Source: web.dev/cls
  26. Eka @ekafyi web.dev LIVE Extended GDG Bandung 11 Juli 2020

    TTI, TBT, FID Responsive Interactivity Metrics terkait kemampuan main thread browser merespon interaksi Tujuan: Agar user dapat segera berinteraksi dengan isi halaman (mengklik button, mengisi input, dll) “Is it usable?”
  27. Eka @ekafyi web.dev LIVE Extended GDG Bandung 11 Juli 2020

    TTI Time to Interactive Lab15% Mengukur sampai halaman menjadi interaktif sepenuhnya. Contoh masalah di SSG/SSR: Seluruh elemen dirender dengan cepat (FCP & LCP ), tapi main thread masih sibuk melakukan hydration.
  28. Eka @ekafyi web.dev LIVE Extended GDG Bandung 11 Juli 2020

    TTI Time to Interactive Lab15% TTI ≥ FCP. Agar dapat interaktif, harus ada elemen yang sudah dirender. "Long task" = task berdurasi > 50 ms "Quiet window" = saat main thread bebas selama ≥ 5 detik (tidak ada long task, ≤ 2 GET request) TTI terjadi saat selesainya long task terakhir sebelum quiet window. Source: web.dev/tti
  29. Eka @ekafyi web.dev LIVE Extended GDG Bandung 11 Juli 2020

    TBT Total Blocking Time Lab25% Mengukur jumlah blocking time antara FCP dan TTI. Dihitung setelah > 50 ms untuk masing-masing long task.
  30. Eka @ekafyi web.dev LIVE Extended GDG Bandung 11 Juli 2020

    TBT Total Blocking Time Lab25% Jika durasi task 250 ms, blocking time = 200 ms. Contoh → TBT 345 ms Source: web.dev/tbt
  31. Eka @ekafyi web.dev LIVE Extended GDG Bandung 11 Juli 2020

    Perbedaan TBT vs TTI TTI mengukur waktu sampai main thread bebas. TBT mengukur seberapa sibuk main thread sebelum TTI tercapai.
  32. Eka @ekafyi web.dev LIVE Extended GDG Bandung 11 Juli 2020

    Persamaan TBT dan TTI Keduanya adalah metric lab untuk memprediksi FID, dengan cara mengukur aktivitas main thread. Makin baik TBT dan TTI, besar kemungkinan FID baik .
  33. Eka @ekafyi web.dev LIVE Extended GDG Bandung 11 Juli 2020

    FID First Input Delay CWV Field Mengukur waktu saat pengguna melakukan interaksi untuk pertama kali sampai browser dapat merespon interaksi tersebut.
  34. Eka @ekafyi web.dev LIVE Extended GDG Bandung 11 Juli 2020

    FID First Input Delay CWV Field Source: web.dev/fid
  35. Eka @ekafyi web.dev LIVE Extended GDG Bandung 11 Juli 2020

    Conclusion Perf metrics membantu kita mengukur dan memperbaiki performa halaman web, menggabungkan data lab dan lapangan. Core Web Vitals adalah metrics inti yang “meringkas” perf metrics lainnya. Tools, not goals. Goals = Good user experience.