Googlebot, kaynakları verimli bir şekilde yönetmek için web sayfalarını iki farklı aşamada işler. Bir sayfa ilk kez tarandığında, tarayıcı HTML içeriğini alır. Eğer o sayfa nihai görünümü oluşturmak için JavaScript gerektiriyorsa, bir oluşturma kuyruğuna girer. Google, sistemlerinde komut dosyalarını çalıştırma gibi kaynak yoğun görevi gerçekleştirmek için kapasite olduğunda bu kodu daha sonraki bir zamanda yürütür.
İki dalgalı dizine ekleme süreci nedir?
İki dalgalı dizine ekleme süreci, ilk keşfi nihai oluşturmadan ayırır. İlk dalga sırasında, Googlebot ham HTML’i ve bağlantıları tanımlar. Bu, arama motorunun karmaşık mantığı yürütmeden metin tabanlı içeriği hızlı bir şekilde dizine eklemesini sağlar.

İkinci dalgada, oluşturma motoru JavaScript dosyalarını işler. Bu aşama, mevcut tarama talebine ve site önceliğine bağlı olarak birkaç günden birkaç haftaya kadar sürebilir. Bu aşama geciktiği için, yalnızca JavaScript’e dayanan içerik, yayınlandıktan hemen sonra arama sonuçlarında görünmeyebilir.
Bu mimari, web sayfalarının giderek ağırlaşması nedeniyle mevcuttur. Statik HTML’i ayrıştırmak arama motorları için düşük maliyetli bir işlemdir, ancak React veya Vue gibi modern çerçeveleri yürütmek önemli CPU döngüleri gerektirir. Bu görevleri ayırarak Google, bir sitenin JavaScript ortamı yavaş veya şu anda kullanılamaz olsa bile web’in temel içeriğini keşfedebilmesini sağlar.
Oluşturma kuyruğu sitenizi nasıl etkiler?
Kuyruk, Google’ın altyapısı için bir tampon görevi görür. JavaScript yürütmek statik HTML ayrıştırmaktan önemli ölçüde daha fazla CPU ve bellek tükettiğinden, Google içeriği hemen okunabilir bir şekilde sunan sitelere öncelik verir. Kritik içeriğiniz ağır istemci tarafı oluşturma arkasında gizliyse, şu yaygın zorluklarla karşılaşırsınız:

- Dinamik içeriğin veya güncellenmiş fiyatların gecikmeli dizine eklenmesi.
- Arama sonuçlarının boş sayfa öğelerini gösterdiği eksik önbellek anlık görüntüleri.
- Gereksiz komut dosyası yürütme nedeniyle daha yüksek tarama bütçesi tüketimi.
- Karmaşık, kötü optimize edilmiş komut dosyası paketleri için artan zaman aşımı riski.
Bir e-ticaret platformunun fiyatlarını sayfa yüklendiğinde tetiklenen bir API çağrısı aracılığıyla güncellediği bir senaryoyu düşünün. Googlebot sayfayı JavaScript bitmeden önce dizine eklerse, eski fiyatı veya hiç fiyat kaydetmeyebilir. Bu, kullanıcı deneyimi ile arama dizini arasında bir kopukluk yaratır ve bu da SERP’te bir fiyat görüp tıkladıktan sonra başka bir fiyat gören potansiyel ziyaretçileri hayal kırıklığına uğratabilir.
Oluşturma gecikmesini nasıl en aza indirirsiniz?
Arama motorlarının içeriğinizi verimli bir şekilde yakalamasını sağlamak için temel SEO öğeleri için istemci tarafı oluşturmaya olan güveni azaltın. Sunucu tarafı oluşturma (SSR) veya statik site oluşturma (SSG) kullanmak, tarayıcıya gönderilen HTML’in zaten bitmiş, görünür içeriği içermesini sağlar. Bu, Googlebot’un sayfanızı komut dosyası yürütme için kuyruğa alması ihtiyacını ortadan kaldırır.
Üçüncü taraf araçların Google sıralama sistemlerine erişimi yoktur. Puanları, otorite derecelendirmeleri, zorluk sayıları, sağlık yüzdeleri kendi taramalarına dayalı özel modellerdir.
Google Search Central
Geliştiriciler istemci tarafı oluşturma kullanmak zorunda kaldıklarında, performans optimizasyonuna odaklanmalıdır. Komut dosyası paketlerinizin boyutunu en aza indirin ve headless Chrome ortamında başarısız olabilecek gereksiz çoklu dolguları (polyfills) kaldırın. Ayrıca, Googlebot’un tıklamalar veya kaydırma olayları aracılığıyla sayfayla etkileşime girmesine gerek kalmadan tüm dahili bağlantıları görebilmesi için uygulamanızın gezinmeyi düzgün bir şekilde yönettiğinden emin olun.
Alien Road bu bilgiyi nasıl uyguluyor
Alien Road’da, Search Console’daki URL Denetleme aracını kullanarak müşteri sitelerinin oluşturma davranışını inceliyoruz. ‘Canlı Test’ oluşturulmuş HTML’i ham kaynak koduyla karşılaştırıyoruz. Ham yanıtta kritik dahili bağlantıların veya yapılandırılmış verilerin eksik olduğu bir tutarsızlık tespit edersek, mimari ayarlamalar öneriyoruz.
Tipik bir müşteri projesi için, JavaScript’in sitenin temel keşfini nasıl etkilediğini değerlendiriyoruz. Sunucu tarafından döndürülen kaynak kodu ile Google tarafından görülen oluşturulmuş sürüm arasında karşılaştırmalı bir analiz yapıyoruz. H1 etiketleri veya ekmek kırıntısı (breadcrumb) gezinmesi gibi temel SEO varlıklarının yalnızca bir komut dosyası yürütüldükten sonra göründüğünü tespit edersek, bunları ilk sunucu yanıtına taşımayı öneriyoruz.
- Gezinme için JavaScript’e yönelik kritik bağımlılıkları belirlemek üzere kaynak kodunu denetleyin.
- Search Console URL Denetleme aracını kullanarak oluşturma hızlarını test edin.
- Kuyruğu atlamak için yüksek öncelikli sayfalar için sunucu tarafı oluşturmayı önerin.
- JavaScript yürütme hatalarındaki artışları belirlemek için ‘Tarama istatistikleri’ raporunu izleyin.
Kaçınılması gereken yaygın tuzaklar
Birçok ekip, Chrome sayfalarını doğru bir şekilde oluşturduğu için Googlebot’un hiçbir sorun yaşamayacağına yanlış bir şekilde inanır. Ancak Googlebot, geliştirme makinenizde yüklü olan sürümün gerisinde kalabilecek belirli bir headless Chrome sürümü kullanır. Deneysel tarayıcı özelliklerine veya karmaşık CSS grid düzenlerine güvenmek, bazen yerel testler sırasında görünmeyen oluşturma hatalarına neden olabilir.
Bir diğer sorun, kritik içerik için ‘tembel yükleme’ (lazy loading) kullanımıdır. Resimleri veya temel olmayan komut dosyalarını daha sonra yüklemek kullanıcı performansı için iyi olsa da, temel metni veya dahili bağlantıları tembel yüklemek Googlebot’u site yapınızı keşfetmekte zorlanmaya zorlayabilir. Ana içeriğinizi ve gezinmenizi, tarayıcı için her zaman kullanılabilir olduğundan emin olmak için ilk HTML paketinde tutun.
Bu hafta neyi kontrol etmelisiniz?
Ürün kategorisi sayfaları veya hizmet açılış sayfaları gibi en önemli sayfalarınızı belirleyerek başlayın. Oluşturulan sürümün bir kullanıcının gördüğüyle eşleşip eşleşmediğini görmek için URL Denetleme aracını kullanın. Oluşturulan görünüm boşsa veya metin eksikse, içeriğiniz muhtemelen işlenmeyi bekleyen bir kuyrukta oturuyordur. Teslimat yönteminizi statik HTML’e ayarlamak, güncellemelerinizin aramada ne kadar hızlı görüneceğini önemli ölçüde iyileştirebilir.
Search Console’daki sitenizin ‘Tarama istatistikleri’ raporunu gözden geçirin. ‘Ortalama yanıt süresi’ metriğindeki önemli artışları arayın. Bu sayı yükseliyorsa, bu genellikle sunucunun istekleri işlemekte zorlandığını gösterir ve bu da Googlebot’u daha uzun süre beklemeye veya oluşturma görevlerini tamamen atlamaya zorlayabilir. Bir sonraki büyük site güncellemesinden önce veritabanı sorgularınızı ve önbelleğe alma stratejilerinizi optimize ederek harekete geçin.