2mb oldukça büyük bir boyut. Zaten vatandaş 2mb yi geçen kaynak kod yapıyorsa bu işi bıraksın.
Mesela konu açtıgınız bu sayfa: 942kb (fazla)
Neden? çunku javascript, style sınıflar vs ne varsa inline olarak içine doldurmuşlar.
inline olursa daha hızlı açılır diye mantığı yanlış anlamışlar. Halbuki inline renderda sadece kritik darboğazki kısımlar için kullanılır.
3-5 kritiği ayırıp, kalanı .js / .css dosyalarına koyup çağirsa belki 120kb'yi bile aşmayacak.
Deneyimlerimi katarak ve konuyu geliştirerek 2MB konusuna katılmadığımı belirteyim. 2 MB sonrası çöpe atılmıyor. Bu 2 MB konusunu görmezden gelirsek gzip sıkıştırmalarının, lazyload yüklemelerin, hiyerarşik kodlamanın, defer işaretlerinin, doğru web sunucusu kullanmanın, büyük boyutlu PNG yerine Webp kullanmanın... hız konusunda etkili olduğunu bunların Google için iyi bir sinyal olduğunu söyleyebilirim. 2 MB diye bir kotamız yok.
Google metinleri görsellerden daha hızlı tarar. Yazılımla uğraşanlar örneğin C#'da SmartReader, Python'da Readability gibi araçlarla ana yazıyı sökebildiğimizi bilir. Google'da böyle yapıyor. Yani büyük boyutlu görseller için dosya varlığı ve alt metni ilk taramada hesaba katsa bile sonrasında Google Vision örneğindeki gibi görsel tanımlayıcılarla görselin içeriğini, içerik ilgisini ve kalitesini değerlendiriyor. Dolayısıyla sayfadaki görsel, video vb.'nin boyuta dahil edilmediğini edilse bile birden çok googlebot'un konuyu değerlendirdiğini biliyoruz. Kaliteli bir içerik, absürd olmadığı sürece MB'a takılmaz. Hız için yukarıda saydıklarımı listeleştiriyorum:
- Web sunucusu (Litespeed uzun süredir başarılı, Nginx fena değil, Apache php-fm de iyi)
- Html kodlarının hiyerarşisi yani python tarzı satır girintileriyle doğru şekilde kodlanması zayıf ama iyi bir gösterge
- Gzip sıkıştırmaları çoğu modern sunucuda var ve olmalı.
- Defer işareti önemli. Js dosyalarının ve dışarıdai dosyaların (örn font) yüklenmesinde özellikle kullanılmalı.
- Lazyload önemli. İlk resimden sonraki büyük boyutluları lazyload ile yüklemek doğru tercih.
- PNG, JPG yerine daha küçük boyutlu webp kullanmak iyi.
- Birçok veriyi json'larla arama motorlarına göstermek en iyisi (microdata)
...
Arkadaşlar öncelikle değerli katkılarınız için teşekkürler.
Birinci yoruma (inline eleştirisine) sonuna kadar katılıyorum. İnline kullanımının suyunu çıkardığımızda başımıza gelen tam olarak bu. Özellikle eski ve hantal temalarda bu DOM şişkinliği çok yaşanıyor. E-ticaret altyapıları veya web projeleri kurgularken en çok dikkat ettiğimiz şey tam olarak budur. CSS ve JS'i dışarıdan çağırıp ham HTML DOM ağacını olabildiğince temiz ve hafif bırakmayı amaçlıyoruz hepimiz. Sadece bir metin okutmak için 942kb ham kaynak kodu basmak gerçekten korkunç bir rakam.
İkinci yorumu yapan hocam, hız, Core Web Vitals ve performans için saydığınız tüm metrikler (WebP, lazyload, defer, Litespeed) kesinlikle çok değerli, bunlara kimse itiraz edemez. Ancak "2 MB diye bir kotamız yok, 2 MB sonrası çöpe atılmıyor" derken çok büyük bir teknik detayı atlıyorsunuz. Google'ın açıkladığı 2 MB sınırı, sayfanın toplam boyutu (resimler, videolar, harici scriptler dahil) değil,
doğrudan ilk çekilen ham HTML belgesinin sınırıdır. ilgili kaynak: https://developers.google.com/search/blog/2026/03/crawler-blog-post?hl=tr
Yani Googlebot sitenize geldiğinde harici görsellerinizi, videolarınızı veya dışarıdan çağırdığınız JS dosyalarını o 2 MB'ın içine zaten katmıyor. Sizin bahsettiğiniz WebP veya lazyload gibi optimizasyonlar harici kaynak çağrıları olduğu için bu HTML limitinden tamamen bağımsız çalışır. Google bunu metinde
"Medya öğeleri ve harici dosyalar kendi ayrı bayt sayaçlarına sahiptir" diyerek açıkça belirtiyor.
Ancak asıl tehlike şu, eğer kodlama sırasında base64 formatındaki devasa bir görseli doğrudan HTML içine gömerseniz veya yüzlerce satırlık CSS'i inline olarak basarsanız, o ham HTML dosyası 2 MB'ı geçer. Googlebot bu sınırı gördüğü an HTTP isteğini jilet gibi keser. Sınırın altında kalan kodlar (belki en önemli schema etiketleriniz, canonical bağlantınız veya bahsettiğiniz o harika içerikler) Google'ın çizim motoruna (WRS) hiç aktarılmaz.
İçerik ne kadar kaliteli olursa olsun, Googlebot kodu kestiği an sizin o kaliteli metninizi fiziksel olarak sunucudan çekememiş olur. Görmediği, indiremediği bir şeyi de doğal olarak "kaliteli içerik" diye değerlendiremez. Hız optimizasyonları harikadır ancak ham HTML temizliği Googlebot'un sitenizi okuyabilmesinin ilk ve en sert kuralıdır.