7 dk

Bütçeyle mobil-odaklı vitrin performans kontrol listesi

Bu mobil-odaklı vitrin performans kontrol listesiyle Core Web Vitals’a öncelik verin, görselleri optimize edin, SSR vs CSR tercihi yapın ve sıkı bir bütçeyle önbellekleme düzeni kurun.

Bütçeyle mobil-odaklı vitrin performans kontrol listesi

Hızlı bir mobil vitrin gerçekte ne demektir?

Hızlı bir mobil vitrin mükemmel laboratuvar puanlarıyla ilgili değil. Gerçek bir telefonda, sinyal zayıfken ve tek bir başparmakla kullanıldığında nasıl hissettirdiği önemlidir. Kullanışlı bir şey hızla görünür, görseller yüklenirken sayfa yer değiştirmez ve her dokunuşa net bir yanıt gelir.

Hız önemlidir çünkü alışveriş yapanlar hızlı karar verir. İlk görünüm yavaş veya dağınıksa insanlar siteyi terk eder. Site takılıyor gibi hissedilirse güven düşer. Sepet veya ödeme gecikirse tamamlanma oranları düşer. Mobilde küçük bir gecikme bile daha büyük hissedilir çünkü ekranlar küçük ve dikkat dağıtıcı şeyler bir kaydırma uzağındadır.

Bütçe kısıtlıysa amaç tam bir yeniden yapı değil. "Büyük kazançlar önce" diye düşünün: deneyimi en çok etkileyenleri düzeltin ve haftalarca sürecek ama milisaniyeler kazandıracak değişiklikleri atlayın. Çoğu mağaza, birkaç pratik düzeltmeyle faydanın çoğunu elde eder.

Bu hedefleri aklınızda tutun:

  • İlk anlamlı görünümü hızlı gösterin (görsel, isim, fiyat ve net bir satın alma yolu).
  • İçerik yüklenirken düzeni sabit tutun.
  • Listeleme ve galerilerde kaydırmayı akıcı hale getirin.
  • Sepete eklemeyi yavaş ağlarda bile anlık hissettirin.
  • Ödeme adımlarını basit ve öngörülebilir tutun.

Yaygın bir hata: kahraman görsel geç yüklenir, “Sepete ekle” butonu aşağı kayar ve kullanıcılar yanlış yere dokunur veya vazgeçer. Görsel boyutlarını belirlemek ve ana görselin daha erken yüklenmesini sağlamak genellikle framework değiştirmekten daha fazla iyileştirme getirir.

Koder.ai ile inşa ediyorsanız aynı öncelikler geçerlidir: en küçük, en hızlı ilk görünümü yayınlayın, sonra sayfayı ağırlaştırmadan özellik ekleyin.

Hedef sayfaları ve temel metrikleri seçin

Bütçeyle yapılan performans çalışmaları, kapsamı küçük ve ölçülebilir tuttuğunuzda daha başarılı olur. Geliri ve güveni en çok etkileyen 1–2 sayfayla başlayın ve her seferinde aynı şekilde ölçün.

Mobil kullanıcıların kaldığı veya ayrıldığı sayfaları seçin. Birçok mağaza için bu ürün sayfası ve ya ana sayfa (ilk izlenim) ya da bir kategori sayfasıdır (göz atma). Ödeme en büyük terk noktasıysa onu ekleyin, ama başlangıç kapsamını dar tutun.

Sonra o sayfalarda kullanıcıların gerçekte yaptığı eylemleri listeleyin. Özellikler değil dokunuşlar düşünün: arama, filtre uygulama, ürün açma, varyant değiştirme, sepete ekleme. Bu, laboratuvar testlerinin kaçırdığı yavaş filtre güncellemeleri veya gecikmeli sepete ekleme geri bildirimleri gibi sorunları yakalamanıza yardımcı olur.

Tutarlı olmak için iki gerçek cihaz kullanın: bir orta seviye Android (sorunların hızlı çıktığı yer) ve ortalama bir iPhone. Aynı Wi‑Fi noktasından veya aynı mobil hotspot’tan test edin ki sonuçlar karşılaştırılabilir olsun.

Her hedef sayfa için basit bir başlangıç kaydı alın:

  • LCP, INP ve CLS (kullandığınız performans aracından)
  • LCP öğesinin ne olduğu (kahraman görsel, ürün görseli, başlık)
  • 10 saniyelik bir “hissiyat” notu: ne geç görünüyor, ne takılıyor, ne kayıyor
  • Kullanılan cihaz ve ağ

Örneğin ürün sayfanızın LCP’si orta seviye Android’de 5.2s ve LCP öğesi ana ürün görseliyse, yüksek ROI’li çalışmanın muhtemel yerini zaten biliyorsunuz demektir.

Core Web Vitals: önce neyi önceliklendirmeli

Core Web Vitals, bir sayfanın telefonda ne kadar hızlı hissettirdiğiyle yakından ilişkili üç sinyaldir:

  • LCP: ana içeriğin ne kadar hızlı göründüğü (genelde kahraman görseli veya ürün başlığı).
  • INP: biri dokunduğunda sayfanın ne kadar hızlı tepki verdiği.
  • CLS: yüklenirken düzenin ne kadar kaydığı.

Pratik bir işlem sırası: önce büyük LCP problemlerini düzeltin, sonra INP ile ilgilenin, ardından CLS’i cilalayın. Ana içerik 5 saniyede görünüyorsa, dokunuşlar hızlı olsa bile sayfa yine de yavaş hissedilir. LCP makul seviyeye geldiğinde giriş gecikmeleri ve düzen kaymaları çok daha belirgin olur.

Mağaza yaygın sorunları her metriğe net şekilde denk gelir:

  • LCP: aşırı büyük kahraman görseller, önce bir carousel yüklenmesi, yavaş sunucu yanıtı, render’ı engelleyen scriptler.
  • INP: ağır üçüncü taraf etiketleri, filtreler için fazla JavaScript, maliyetli React yeniden render’ları.
  • CLS: geç yüklenen promosyon çubukları, eksik görsel boyutları, web font yer değiştirmesi.

Mobil kullanıcılar için faydalı hedefler:

  • LCP: ana sayfalar için 2.5s altında; daha az kritik sayfalar için 3.0s civarı kabul edilebilir.
  • INP: 200ms altında; etiket ağırsa ve temel iyileştirmeler yapılırken 300ms’e kadar tolere edilebilir.
  • CLS: her yerde 0.1’in altında.

Hedefleri site-genel değil sayfa türüne göre belirleyin. Ürün detay ve ödeme sayfaları daha sıkı olmalı çünkü satın alım burada gerçekleşir. Ana sayfalar LCP konusunda biraz daha gevşek olabilir, ama CLS sıkı tutun ki sayfa stabil hissetsin.

Görseller: en yüksek ROI kontrol listesi

Bütçeli bir vitrinde tek bir şeyi düzeltecekseniz, görselleri düzeltin. Mobilde görseller indirme boyutunun çoğunu oluşturur, LCP’yi geciktirir ve boyutlar belirtilmemişse düzen kaymalarına neden olur.

Çoğu mağazayı kapsayan görsel kontrol listesi:

  • Cihazlara göre duyarlı boyutlar sunun ki telefonlar asla masaüstü boyutunu indirmesin. Birkaç genişlik oluşturun (örneğin 320, 640, 960, 1280) ve gerçekçi bir sizes değeri ile srcset kullanın.
  • Yedek için destekle birlikte modern formatları kullanın. Destekleniyorsa AVIF veya WebP tercih edin, eski tarayıcılar için JPEG/PNG bırakın.
  • Grid ve küçük resimler için daha agresif sıkıştırma uygulayın. Kategori kartları nadiren “fotoğraf kalitesinde” olmalıdır.
  • Katmanda olmayan öğeleri lazy-load yapın; ana görsel ve ürün görselini eager tutun, geri kalanları sonra yükleyin.
  • Muhtemel LCP olan tek görseli preload edin.

Büyük bir kural: her görsel için daima width ve height (veya CSS aspect-ratio) ayarlayın. Bu kolay bir CLS kazanımı sağlar.

Tipik bir sonuç: 2 MB’lık bir kategori grid’i, grid görsellerini WebP’ye çevirmek, mobilde maksimum 640px sunmak ve kaliteyi biraz düşürmekle genellikle 400 KB altına inebilir. Çoğu alıcı fark etmez, ama yükleme süresi düşer.

CSS, fontlar ve scriptler: ilk görünümü hafif tutun

İlk ekranın çizilmesi ucuz olmalı. Mobilde her ekstra font, CSS kuralı ve script aynı küçük CPU ve ağ bütçesi için yarışır.

Fontlar: yavaşlatmadan iyi görünmek

Özel fontlar sessiz bir gecikme kaynağıdır. Marka izin veriyorsa, önce sistem fontlarıyla başlayın ve sonra bir özel font ekleyin.

Sıkı tutun: bir aile, bir veya iki ağırlık (örneğin 400 ve 600) ve sadece gereken karakter setleri. Üstte görünen tek font dosyasını preload edin ve metnin hemen render olduğundan emin olun (font yüklenirken boş başlık olmasın).

CSS ve scriptler: daha azını sonra gönderin

UI kütüphaneleri ve tekrar eden bileşenlerle CSS hızla büyür. Üstte görünen CSS’i küçük tutun, sonra geri kalanını ilk görünüm göründükten sonra yükleyin. Kullanılmayan stilleri düzenli kaldırın.

Scriptler için kural basit: kullanıcı içeriği görüp okumaya başlayana kadar kritik olmayan hiçbir şey çalışmasın. Ağır analytics paketleri, chat widget’ları, A/B testleri ve slider’lar bekleyebilir.

Ana sayfa ve ürün sayfaları için hızlı kontroller:

  • Fontları sınırlayın ve sadece ilk görünümde kullanılanı preload edin.
  • Üstte görünen CSS’i küçük tutun ve kullanılmayan stilleri kaldırın.
  • Kritik olmayan scriptleri defer edin ve üçüncü taraf widget’ları ilk render’dan sonra geciktirin.
  • Kod bölme yaparak mobilin sadece ilk görünüm için gerekeni yüklemesini sağlayın.

Vitrininiz React ise (Koder.ai’den dışa aktarılmış kod dahil), ürün galerisini ve yorumları ayrı parçalara ayırmayı düşünün. Başlığı, fiyatı ve birincil görseli önce yükleyin, sonra sayfa kullanılabilirken geri kalanı hydrate edin.

Bir vitrinde SSR vs CSR kararları

Önemli yerlerde SSR'i test et
Giriş sayfaları için SSR kullanın, böylece ürün ve kategori içerikleri yavaş ağlarda daha hızlı görünür.

Bütçe mağazasında amaç, düşük seviye telefonda bile giriş sayfalarının anlık hissettirilmesi. Render stratejisi neredeyse diğer tüm optimizasyonları etkiler.

Pratik bir başparmak kuralı:

  • Ürün ve kategori sayfaları için SSR (sunucu tarafı render) kullanın. Arama, reklam ve sosyal’den gelen giriş noktaları bunlardır. SSR gerçek içeriği ekrana hızlıca koyar ve iyi LCP yakalamayı kolaylaştırır.
  • Kullanıcı zaten gezindikten sonra ulaşılan sayfalar için CSR (istemci tarafı render) kullanın: hesap ayarları, sipariş geçmişi, kaydedilen listeler, iç paneller gibi.

Pratik bir hibrit iyi çalışır: sayfa kabuğunu ve kritik içeriği SSR ile verin (başlık, fiyat, ana görsel, satın al butonu, ilk yorumlar), sonra ağır widget’ları daha sonra hydrate edin.

Mobilde performansı sıkan noktalar:

  • Hydration gecikmeleri: ilk yükte çok fazla JavaScript, dokunuşların göz ardı edilmesine ve INP’nin kötüleşmesine neden olur.
  • Yüklenme durumları: boyut değiştiren skeleton’lar CLS’e yol açabilir.
  • Üçüncü taraf widget’lar: yorumlar, sohbet ve takipçiler ana iş parçacığını bloke edebilir.
  • Veri çekme: sunucu ve istemci tarafında çağrıların kopyalanması zaman ve pil israfına yol açar.
  • Kişiselleştirme: "Merhaba, John" ve önerileri satın almak için gerekli değilse istemci tarafında tutun.

Örnek: 12 öğeli kategori grid’ini SSR ile verin ama filtreleri (beden, renk) ilk paint’ten sonra yükleyin. Alışveriş yapanlar hemen kaydırabilir, filtre UI bir an sonra gelir ve düzeni kaydırmaz.

Güncellemeleri bozmayacak bir önbellekleme kontrol listesi

Önbellekleme para ve saniye kazandırır, ama müşterileri eski fiyatlarda, hatalı JS’te veya eksik görsellerde sıkıştırabilir. Nadiren değişenleri uzun süre cacheleyin ve güncellediğiniz şeylerin hızlıca değiştirilebilir olduğundan emin olun.

1) Tarayıcı önbelleği: gerçekten statik dosyalar için uzun ömür

Statik varlıklarla başlayın: görseller, CSS ve JS paketleri. Bunlara uzun önbellek yaşam süreleri verin ki tekrar ziyaretler hızlı olsun, özellikle mobil veride.

2) Cache-busting: güncellemeleri güvenli kılın

Uzun önbellekleme ancak dosya adları içerik değiştiğinde değişiyorsa işe yarar. Dosya sürümlendirmesi (hash’ler) kullanın ki yeni build’ler yeni dosyalar olarak gelsin.

3) Sunucu ve API önbellekleme: okumaları cache’leyin, sürprizleri değil

Kullanıcı başına değişmeyen, sık okunan şeyleri cacheleyin (ana sayfa kabuğu, kategori sayfaları, ürün listeleri, arama önerileri). Sepet, checkout, hesap gibi her zaman taze olması gerekenleri cachelemeyin.

Pratik bir kontrol listesi:

  • Statik varlıklar: uzun önbellek (örneğin 30–365 gün) ve dosya adları sürümlenmişse immutable olarak işaretleyin.
  • HTML sayfaları: kısa cache veya stale-while-revalidate kullanın ki güncellemeler çabuk görünsün.
  • API yanıtları: okuma ağırlıklı uç noktaları kısa süreli cacheleyin (30–300 saniye) ve sorgu parametrelerine göre anahtar oluşturun.
  • Invalidasyon: deploy sırasında temizleme adımı veya build sürümü yükseltme mekanizması olsun ki zorla yenileme yapabilesiniz.
  • CDN: bütçe izin veriyorsa görselleri ve statikleri bir CDN arkasına koyun ve gerçek metrikleri (TTFB, mobil LCP) önce/sonra karşılaştırın.

Koder.ai üzerinden AWS’e deploy ediyorsanız, önbellekleme işlemlerini sürümlere bağlayın: varlıkları versiyonlayın, HTML tazeliğini kısa tutun ve geri dönüşü sürümle ilişkilendirerek öngörülebilir hale getirin.

Etkileşim hızı: gerçek cihazlarda INP’yi iyileştirin

INP, bir dokunuştan sonra ne olduğunu ölçer. Mobilde gecikmeler göze çarpar. Bir buton 200–500ms “ölü” hissediyorsa satış kaybedebilirsiniz, hatta sayfa hızlı yüklenmiş olsa bile.

Mümkünse gerçek düşük seviye bir telefonda test edin, sadece dizüstü ile yetinmeyin. Dört görev deneyin: bir ürün sayfası açın, bir varyant değiştirin, sepete ekleyin, sonra sepeti açın. Herhangi bir dokunuş yavaş veya sayfa kayar ve takılıyorsa, INP ile ilgili işiniz var demektir.

Büyük yeniden yazımlar gerektirmeden genelde işe yarayan düzeltmeler:

  • Sepete eklemeyi anlık hissettirin: önce UI’yi (buton durumu, sepet sayacı) güncelleyin, sonra arka planda senkronize edin.
  • Dokunuş ve kaydırmada ana iş parçacığı işini azaltın: tek bir bileşen değişiminde tüm sayfanın tekrar render edilmesinden kaçının.
  • Arama ve filtreleri debounce edin: her tuş darbesinde istek göndermeyin; "Güncelleniyor..." gibi net geri bildirim verin.
  • Son haline uygun skeleton’lar kullanın ki yer değiştirme olmasın.
  • Her butona net bir pressed durumu verin ki kullanıcılar anında geri bildirim alsın.

Sepet çağrınız yavaşsa (1–2s), sayfayı bloke etmeyin. Basılı durumu gösterin, öğeyi iyimserce ekleyin ve sadece istek başarısız olursa akışı kesintiye uğratın.

Adım adım: bir sayfada 60 dakikalık hız geçişi

Kodu tam kontrol altında tut
Hazır olduğunuzda kaynak kodunu dışa aktarın ve kendi iş akışınızda optimizasyona devam edin.

Önce tek bir yüksek trafikli sayfada hız geçişi yapın (genelde ana sayfa veya popüler bir ürün). Mümkünse gerçek telefon kullanın ya da Chrome DevTools ile orta seviye Android profili kullanarak throttle edin.

60 dakikalık geçiş

  1. Bir sayfa seçin ve LCP öğesini belirleyin. Sayfayı bir kez yükleyin ve LCP’nin ne olduğunu not edin (kahraman görseli, ürün görseli, büyük başlık). LCP süresini yazın.

  2. Görsel boyutlandırmasını düzeltin ve LCP kaynağını preload edin. LCP görselinin doğru width/height (veya aspect-ratio) değerlerine sahip olduğundan, mobil için daha küçük bir versiyon sunduğunuzdan, modern format kullandığınızdan ve sadece o tek görseli preload ettiğinizden emin olun.

  3. Kritik olmayan scriptleri ilk görünümden erteleyin. Sohbet widget’ları, heatmap’ler, A/B testleri ve ağır yorum paketleri sayfa kullanılabilir olana kadar beklesin.

  4. Düzen kaymalarını durdurun. Banner, carousel, cookie bar ve yorum yıldızları için alan ayırın. Yüklemeden sonra üstte içerik eklemekten kaçının.

  5. Aynı koşullarda yeniden test edin. LCP ve CLS’yi karşılaştırın. LCP hareket etmediyse sunucu yanıt süresine veya render’ı engelleyen CSS’ye bakın.

Koder.ai gibi sohbet tabanlı bir araçla inşa ediyorsanız, bunu tekrarlanabilir bir rutin yapın: öncesi/sonrası anlık görüntüsü alın ki bir değişiklik sayfayı yavaşlatırsa hızla geri alabilesiniz.

Bütçeli mağazaların sık yaptığı hatalar

Çoğu yavaşlama kendi yarattığınız şeylerden gelir: bir eklenti daha, bir slider daha, bir etiket daha. Yararlı bir kural: gerçek içeriği hızlı gösterin, sonra zenginleştirin.

Sürekli görülen hatalar:

  • Ana kahraman veya ilk ürün görselini lazy-load yapmak (çoğu zaman LCP budur).
  • İçeriği aşağı iten ve geç yüklenen carousel’ler.
  • Sayfa okunmadan önce yüklenen birden fazla analytics aracı, sohbet widget’ları ve A/B testleri.
  • HTML’i fazla cacheleyip eski fiyatlar, promosyonlar veya stok bilgisi sunmak.
  • Masaüstü UI’sini mobilde gizleyip yine de dosyayı indirtmek (telefon yine de onu indirir).

Tipik bir örnek: ürün sayfası büyük bir carousel kütüphanesi ve birden çok takipçi çekiyor; "Sepete ekle" butonu geç etkin hale geliyor. Alışveriş yapanlar bir dokunuşun gecikmesini önemsemezse, gösterişli hareketler satışı kurtaramaz.

Hızlı düzeltmeler:

  • İlk anlamlı görseli eager yükleyin, geri kalanları lazy-load yapın.
  • Büyük carousel’leri tek bir görsel + küçük galeriyle değiştirin.
  • Kritik olmayan tag’leri onay sonrası veya ilk etkileşimden sonra taşıyın.
  • Varlıkları uzun süre cacheleyin, HTML’i kısa süreli cacheleyin ve ürün verilerini sık revalidate edin.
  • Masaüstü blokları gizlemek yerine gerçek bir mobil düzen oluşturun.

Koder.ai kullanıyorsanız, performansı bir özellik gibi ele alın: orta seviye bir telefonda önizleyin, sonra yavaşlayan değişiklikleri anlık görüntülerle geri alın.

Her yayın öncesi çalıştırılabilecek hızlı kontrol listesi

Yeniden test etmeyi rutine bağla
Bir test yapısı dağıtın ve aynı cihaz kurulumunda LCP, INP ve CLS'yi karşılaştırın.

Küçük bir yayın kontrolü, büyük bir performans projesinden üstündür. Bunu bir kapı gibi ele alın: sayfa ucuz bir telefonda yavaşsa yayınlamadan önce düzeltin.

10 dakikalık ön-yayın kontrolü

Önemli sayfaları (ana, kategori, ürün, ödeme başlangıcı) gerçek bir orta seviye Android cihazda veya kısıtlanmış bir profilde test edin:

  • LCP: ana içerik hızlıca görünmeli ve stabil kalmalı.
  • INP: dokunuşlar (sepete ekle, beden seçici, ödeme) hızlı yanıt verip “takılmış” hissettirmemeli.
  • CLS: görseller, banner’lar veya fontlar yüklenirken düzen sıçramamalı.
  • Görseller: doğru piksel boyutları, modern format, sıkıştırılmış; fold altındakiler lazy-load olsun.
  • Scriptler: sadece gerekli üçüncü taraf tag’lar erken yüklenmeli; geri kalanı bekletilmeli.

Bir şey yanlış görünüyorsa en belirgin sorunu önce düzeltin. Tek büyük görsel veya erken bir script bir yayını mahvedebilir.

Önbellek ve render kontrolü

Önbellekleme ve render seçimleri, giriş sayfalarını hızlı hissettirmeli ama eski fiyat veya kırık checkout sunmamalı:

  • Statik varlıklar: hash’lenmiş dosyalar için uzun önbellek; yeni build dosya adlarını değiştirmeli.
  • HTML ve API’ler: kısa TTL veya revalidate; sepet ve hesap gibi kullanıcıya özel içerikleri cachelemeyin.
  • Render: ilk ekran jank olmadan görünmeli; temel içerik için spinner kullanmaktan kaçının.
  • Güncellemeler: bir dağıtım LCP’yi yavaşlatır veya checkout’u bozar mı diye hızla geri alabileceğinizden emin olun.

Koder.ai ile inşa ediyorsanız, yayınlardan önce basit bir "performans anlık görüntüsü" tutmak, karşılaştırma, geri alma ve yeniden test etmeyi kolaylaştırır.

Örnek: küçük bir mağazayı 3 haftada iyileştirmek

Küçük bir vitrin yaklaşık 200 ürün satıyor. Çoğu ziyaretçi mobilden sosyal reklamlardan geliyor, kategori sayfasına iniyor, sonra ürün açıyor. Ekip sınırlı geliştirici zamanına sahip, bu yüzden plan basit: ilk iki sayfayı hızlı ve stabil yapın, sonra etkileşim hızını artırın.

Onlar birkaç ana sayfa (popüler kategori, popüler ürün, sepet) izliyor ve LCP (ana içerik hızı), CLS (düzen stabilitesi) ve INP (dokunuş duyarlılığı) üzerine odaklanıyorlar.

1. Hafta: görseller ve düzen stabilitesi

Kategori ve ürün sayfalarında en büyük kazançlardan başladılar: doğru boyutlandırılmış görseller (360px ekranda 2000px görsel yok), modern formatlar (WebP/AVIF), gridler için agresif sıkıştırma ve düzen kaymalarını önlemek için açık boyutlar. Ürün sayfasında tek kahraman görseli preload ettiler, geri kalanları lazy-load yaptılar.

Sonuç: kaydırırken daha az sıçrama ve sayfalar daha hızlı hissedildi, derin çalışmalara başlamadan önce bile.

2. Hafta: üçüncü taraf scriptler ve daha akıcı filtreler

Sonra ana iş parçacığı işini azalttılar:

  • Analytics ve sohbeti ilk görüntülemeden sonra yüklediler.
  • Çift takipçileri ve kullanılmayan pixel’leri kaldırdılar.
  • Filtreleri basitleştirip uygulamadan önce küçük bir gecikme eklediler.
  • Kod bölme yaparak her sayfanın sadece gerekeni yüklemesini sağladılar.

Sonuç: INP gelişti. Dokunuşlar hızlı kaydedildi, filtreler kaydırma sırasında donmayı bıraktı.

3. Hafta: fayda sağlayan yerlerde SSR, uygun yerlerde CSR

Giriş sayfaları (ana, popüler kategori, ürün) için SSR eklediler, böylece yavaş bağlantılarda içerik daha çabuk görünür oldu. Hesap sayfaları ve sipariş geçmişi için CSR’de kaldılar.

Her değişikliğin tutulup tutulmayacağına karar vermek için:

  • CWV ölçün ve gerçek cihaz testi yapın.
  • LCP/CLS/INP’yi iyileştirenleri tutun, izleme veya checkout’u bozuyorsa geri alın.

Koder.ai üzerinde inşa ediyorsanız, snapshot ve rollback desteği render, script veya sayfa yapısı değişiklikleri denerken daha güvenli deneyler yapmanızı sağlar.

Sonraki adımlar: performansı build rutininizin bir parçası yapın

Bir kontrol listesi ancak alışkanlığa dönüştüğünde işe yarar. Basit tutun: ölçün, bir şey değiştirin, tekrar ölçün. Bir değişiklik sayfayı yavaşlatıyorsa çabuk geri alın ve ilerleyin.

Kontrol listenizi tekrarlanabilir bir döngüye çevirin

1–2 para sayfa seçin (çoğunlukla ana, kategori, ürün, ödeme başlangıcı) ve küçük bir rutin kullanın:

  • Baseline: Core Web Vitals ve gerçek cihaz "hissiyat" testi (yavaş 4G) kaydedin.
  • Değişiklik: net bir iyileştirme gönderin (bir görsel seti, bir script erteleme, bir cache düzeltmesi).
  • Yeniden test: aynı cihaz ve ağ ayarıyla karşılaştırın.
  • Karar: yalnızca ilgilendiğiniz metrik iyileşiyorsa tutun.
  • Kayıt: ne değiştiğini not alın ki diğer sayfalarda tekrarlanabilsin.

Bu rastgele optimizasyondan uzak durmanızı sağlar ve kullanıcıların gerçekten neyi hissettiğine odaklar.

Basit bir performans bütçesi belirleyin

Bütçeler yavaşçanın sızmasını önler. İnceleme süreçlerinde uygulanacak kadar küçük tutun:

  • Görseller: ilk görünüm görsel ağırlığını sınırlandırın ve duyarlı boyut gerekliliği koyun.
  • Scriptler: üçüncü taraf etiketleri sınırlayın ve ana sayfalar için toplam JS miktarı belirleyin.
  • Fontlar: 0–1 özel font ailesine izin verin; gövde metni için sistem fontları kullanın.
  • Düzen: sonradan yüklenen banner’lara izin vermeyin ki içerik aşağı itilmeyecek.

Bütçeler mükemmellik değil, mobil deneyimi koruyan sınırlar sağlar.

Hızlı hareket etmeyi güvenli hale getirin

Performansı bir özellik gibi görün: hızlı geri alma planınız olmalı. Platformunuz snapshot ve rollback destekliyorsa, yayınlardan önce bunları kullanın ki yavaş bir değişikliği dakikalar içinde geri alabilesiniz.

Hız ve performans üzerinde hızlı denemeler yapmak istiyorsanız, Koder.ai (koder.ai) prototipleme ve değişiklikleri kaynak kodu dışa aktarımıyla gönderme aşamasında faydalı olabilir. Yine de asıl önemli olan alışkanlıktır: küçük değişiklikler, sık kontroller ve performans düşerse hızlı geri dönüş.

SSS

What does a “fast” mobile storefront actually mean in practice?

Hızlı bir mağaza gerçekten şöyle hissettirmelidir: ana içerik erken görünür, düzen sıçramaz ve dokunuşlara anında geri bildirim gelir.

Önceliği algılanan hız olmalı: ürün resmi/adı/fiyatı ve net bir satın alma yolu hızlıca gösterilsin, ekstralar sonra yüklensin.

Which pages should I optimize first if I’m on a tight budget?

1–2 tane gelir getiren sayfayla başlayın; mobil kullanıcıların kalıp kalmayacağına karar verdiği sayfalar genellikle şunlardır:

  • Ürün detay sayfası
  • Kategori (veya ana) sayfa

En büyük çıkış noktası ödeme süreciyse checkout ekleyin, ama ilk kapsamı küçük tutun ki değişiklikleri net ölçebilesiniz.

What metrics should I baseline before I start changing things?

Hedef sayfa başına şu temel verileri izleyin:

  • LCP, INP, CLS
  • LCP öğesinin ne olduğu (çoğunlukla ana görsel veya başlık)
  • Kullanılan cihaz ve ağ
  • Kısa bir “hissiyat” notu (neler geç yükleniyor, neler takılıyor, neler kayıyor)

Aynı testi tutarlı şekilde tekrarlamak, mükemmel araçlardan daha önemlidir.

In what order should I tackle Core Web Vitals (LCP, INP, CLS)?

Sıralama şöyle olmalı:

  1. LCP (ana içeriği daha hızlı görünür hale getirin)
  2. INP (dokunuşlar ve kaydırma daha duyarlı olsun)
  3. CLS (sıçramaları kaldırın)

Ana içerik geç görünüyorsa diğer her şey yine de yavaş hissedilir—önce LCP'yi düzeltin.

What’s the highest-ROI image checklist for mobile storefront speed?

Öncelikle şunları yapın:

  • Cihazlara göre uygun boyutlarda görseller sunun (telefona masaüstü görsel göndermeyin)
  • Mümkünse WebP/AVIF kullanın, geri dönüşümlü destek bırakın
  • Galeri ve küçük resimler için daha yüksek sıkıştırma uygulayın
  • Muhtemel LCP görselini eager yükleyin, diğerlerini lazy-load yapın
  • width/height veya aspect-ratio ayarlayın ki düzen kaymaları olmasın

Doğru boyutlandırılmış tek bir ön yüklü ana görsel, haftalar sürecek derin değişikliklerden daha etkili olabilir.

How can I reduce font/CSS/script slowdowns without redesigning everything?

İlk görünümü hafif tutun:

  • Sistem fontları kullanın ya da 1 aile ve 1–2 ağırlıkla yetinin
  • Yazı hemen görünmeli (font yüklenirken boş başlıklardan kaçının)
  • Üstte görünen CSS'i küçük tutun; kullanılmayan stilleri kaldırın
  • Sohbet, ısı haritası, A/B araçları gibi kritik olmayan scriptleri erteleyin

Amaç: telefonun ilk saniyeleri içeriği çizmek için harcansın, ekstralara değil.

Should I use SSR or CSR for an e-commerce storefront?

Genel bir kural:

  • SSR: ürün ve kategori sayfaları için (arama, reklam ve sosyal trafiğinin giriş noktaları)
  • CSR: oturum açılmış veya gezinti sonrası erişilen sayfalar için (hesap, sipariş geçmişi)
  • Hibrit: kritik içerik SSR ile, sonra ağır widget’ları hydrate edin

Ancak aşırı JavaScript ilk yükte INP'yi kötüleştirebilir; hydration gecikmelerine dikkat edin.

How do I set up caching without serving stale prices or breaking checkout?

Güvenli bir yaklaşım:

  • Görseller/CSS/JS gibi statik varlıklar uzun süre cachelenebilir, ama dosya isimleri değiştiğinde (hash) bunu yapın
  • HTML için kısa cache veya stale-while-revalidate kullanın ki güncellemeler çabuk görünür olsun
  • API’lerde sık okunan uç noktaları kısa süreli cacheleyin; kart/checkout gibi kullanıcıya özel verileri cachelemeyin
  • Dağıtımdan sonra temizleme (purge) ya da sürümle ilişkilendirilmiş invalidasyon mekanizması olmalı

Böylece tekrar ziyaretler hızlı olur ama kullanıcılar eski fiyat/ürün bilgisine takılmaz.

What are quick ways to improve INP (interaction speed) on mobile?

Dokunuş sonrası his önemlidir:

  • Sepete eklemeyi hissettirmek için arayüzü hemen güncelleyin (buton durumu, sepet sayacı), sonra arka planda senkronize edin
  • Etkileşim sırasında ana iş parçacığını hafif tutun; tek bileşenin değişimi tüm sayfayı tekrar render etmeye yol açmasın
  • Arama ve filtreleri debounce edin; her tuş vuruşunda istek göndermeyin
  • Son haline benzeyen skeleton’lar kullanın ki yer değiştirme olmasın
  • Her butona net bir basılı durum (pressed state) verin

Ağ yavaşsa bile sayfa “donmuş” hissettirmemeli—önce anlık geri bildirim verin.

What’s a simple pre-release performance gate I can repeat every time?

Tek sayfada hızlı bir kontrolden geçirin:

  1. LCP öğesini belirleyin ve LCP/CLS değerini kaydedin
  2. LCP görselinin boyutlandırmasını düzeltip yalnızca onu preload edin
  3. Kritik olmayan üçüncü taraf scriptleri erteleyin
  4. Banner/carousel/cookie barlar için yer ayırın ki CLS olmasın
  5. Aynı cihaz/ağ koşullarında tekrar test edin

Koder.ai ile çalışıyorsanız, değişiklikten önce/sonra anlık görüntüler alarak geri alma işlemini kolaylaştırın.

What are common mistakes that slow down budget storefronts?

Çoğu yavaşlama kendi yarattığınız eklere veya özelliklere dayanır: bir plugin, bir slider, bir tag daha. Kural: önce gerçek içeriği hızlı gösterin, sonra iyileştirmeleri ekleyin.

Hızlı çözümler:

  • İlk anlamlı görseli eager yükleyin, geri kalanları lazy-load yapın
  • Büyük carousel’leri tek bir görsel + küçük galeriyle değiştirin
  • Kritik olmayan tag’leri onay veya ilk etkileşim sonrası yükleyin
  • Varlıkları uzun cacheleyin, HTML’i kısa cacheleyin, ürün verilerini sıkça revalidate edin
  • Masaüstü UI’yi mobilde gizlemek yerine gerçek bir mobil düzen oluşturun

Koder.ai kullanıyorsanız performansı bir özellik gibi yönetin: orta seviye bir telefonda önizleyin ve yavaşlatan yeni widget’ları bulmak için anlık görüntüleri kullanın.

How do I make performance part of my build routine?

Basit bir geçiş rutini:

  • 1–2 gelir sayfası seçin ve yavaş 4G üzerinde Core Web Vitals ile bir “hissiyat” testi kaydedin
  • Bir iyileştirme yapın (görsel seti, script erteleme, cache ayarı)
  • Aynı koşullarda yeniden test edin
  • Sadece hedef metrik iyileşiyorsa değişikliği tutun
  • Değişiklikleri not alın ki diğer sayfalarda tekrar uygulanabilsin

Bu, gelişigüzel optimizasyonu engeller ve kullanıcıların gerçekten neyi fark ettiğine odaklanmanızı sağlar.

Related posts