Sayfa Hızı Deneyimi Nerede Etkiler, Nerede Etkilemez
Sayfa hızının deneyimi etkilediği tartışmalı değil. Tartışmalı olan, kaç saniyede ve ne kadar etkilediği. Konuyla ilgili yazıların çoğu kaynağı kaybolmuş terk oranı yüzdeleriyle ilerliyor; oysa kendi sitenizde ölçebileceğiniz üç beş şey, o yüzdelerin hepsinden daha kullanışlı.
Yüzdeler değil, eşikler
"Üç saniyeyi geçen sayfada ziyaretçilerin yarısı kaçar" cümlesinin kaynağı genelde başka bir blog yazısıdır, onun kaynağı da bir başkası. Terk oranını tek bir saniye eşiğine bağlamam. Aynı iki saniye, haber sitesinde ve bankacılık uygulamasında aynı şeyi ifade etmiyor; belirleyici olan kullanıcının o an ne kadar motive olduğu ve alternatifin bir tık uzakta olup olmadığı.
İşe yarayan kısım yüzdeler değil, algı eşikleri. Jakob Nielsen'in tepki süresi sınırları hâlâ geçerli: 0,1 saniyede sistem anında tepki veriyor hissi doğar, 1 saniyeye kadar kullanıcının düşünce akışı kopmaz, 10 saniyeden sonra dikkat başka yere kayar. Bunlar dönüşüm vaadi değil, insan algısının sınırları. Bir etkileşimin hangi banda düştüğünü bilmek, kaç puan aldığınızı bilmekten daha çok işe yarıyor.
Laboratuvar ölçümü ile gerçek kullanıcı
Hız ölçmek için üç ücretsiz araç yeterli:
Üçü de tek bir koşuda, seçilmiş bir cihaz ve bağlantı profiliyle ölçer. Çıkan skor sitenizin gerçek ziyaretçilerinin yaşadığı süre değil, kontrollü bir kopyası. Skoru 95 olan bir sitenin sahada çok daha yavaş açılması sıradan bir durum: pazarlama ekibi sonradan bir sohbet aracı ekler, kod ölçüm yapıldıktan sonra sayfaya girer ve skor bunu hiç görmez.
Bu yüzden aynı adresi arka arkaya üç kez ölçün ve medyanı alın, tek ölçüm gürültüdür. Alan verisi varsa (PageSpeed'in üst kısmındaki gerçek kullanıcı raporu ya da kendi kurduğunuz RUM) laboratuvar skorunu bırakıp ona bakın. Skor bir hedef değil, teşhis aracı.
Zaman nerede harcanıyor
Yavaşlığın sebebi genelde tek bir şey değil, ama sıralaması vardır. Waterfall görünümünü açıp ilk baytın kaçıncı milisaniyede geldiğine bakın. Sunucu 900 milisaniyede yanıt veriyorsa CSS dosyasını sıkıştırıp 20 milisaniye kazanmanın kullanıcı açısından karşılığı yok. Önce sunucu tarafı, sonra render'ı engelleyen kaynaklar, sonra görseller, en son mikro optimizasyon.
Görsellerin optimize edilmemesi hâlâ yaygın bir sorun, fakat bugün sayfaları asıl şişiren şey üçüncü parti kodlar. Analitik, ısı haritası, canlı destek, reklam etiketi. Her biri ayrı bir alan adına bağlantı açar ve o bağlantı sizin sunucunuzun hızından bağımsız çalışır. Bir aracı ölçmeden ekleyip ölçmeden bırakmak, hız çalışmasının tamamını sessizce geri alıyor.
Mobilde tablo daha sert. Aynı sayfa, aynı bağlantıda bile daha yavaş işlenir, çünkü betiğin çözümlenmesi ve çalıştırılması işlemci gücüne bağlıdır. Masaüstünde fark edilmeyen ağır bir bileşen, orta seviye bir telefonda saniyeler ekleyebiliyor.
Dönüşüm iddiasına ne kadar güvenmeli
"1 saniyelik iyileştirme satışları şu kadar artırdı" tipi vakalar gerçek olabilir, ama tek bir sitede, tek bir dönemde, o sitenin kendi trafiğiyle ölçülmüştür. Rakamın kendisi sizin sitenize taşınmaz. Taşınan şey yön: kullanıcıyı bekleten her ekleme dönüşümden bir miktar götürür.
Kendi rakamınızı istiyorsanız ölçün. Hız değişikliğini tek başına yayınlayın, aynı anda başka bir şeye dokunmayın ve karşılaştırmayı haftanın aynı günleri arasında yapın. Kampanya dönemine denk gelen bir iyileştirme, hız yüzünden mi yoksa kampanya yüzünden mi kazandığınızı asla söylemez.
Sürdürülebilir hale getirmek
Hız bir proje değil, bakım işi. Bir kez optimize edilip bırakılan site birkaç ay içinde eski haline döner, çünkü içerik büyür ve araç eklenir. İşe yarayan yöntem basit: yayına çıkan her belirgin değişiklikten sonra aynı üç sayfayı (ana sayfa, en çok gezilen içerik, dönüşümün gerçekleştiği form) ölçüp sonucu bir yere yazmak. Elinizde birkaç aylık seri olduğunda yavaşlamanın hangi değişiklikle başladığını tahmin etmeniz gerekmez, listede görürsünüz.