TechnoRadical notları · Makale
Site taşıdım, trafik düştü: ne kadarı normal
Site taşıma sonrası trafik düşüşü normal mi, hata mı? Google'ın resmi teşhis çerçevesini ve eski URL'leri toplu tarayan çalışan bir script veriyoruz.
Site taşıma (domain, URL yapısı, hosting veya protokol değişikliği) sonrası görülen trafik düşüşü, Google’ın resmi dokümantasyonuna göre beklenen ve geçici bir dalgalanmadır; Google bunu açıkça “normaldir, sıralamalar zamanla yerleşir” diye yazıyor. Aynı dokümantasyon tek bir somut ölçüt veriyor: orta ölçekli bir sitede yeni URL’lerin eskilerin yerini almaya başlaması birkaç hafta veya daha uzun sürebilir, büyük sitelerde bu süre daha da uzar. Google kesin bir yüzde veya hafta sayısı taahhüt etmiyor; sektörde dolaşan kesin aralıklar, hem Türkçe hem İngilizce kaynaklarda, kaynaksızdır. Düşüşün büyüklüğü, deseni ve geçen süre Google’ın kendi teşhis çerçevesiyle sınıflandırılabilir; Search Console’da hangi raporun ne göstermesi gerektiği ve eski URL’leri toplu tarayan çalışan bir script aşağıda var.
Site taşıdıktan sonra trafik düşmesi normal mi
Evet; Google, site taşıması sırasında sıralamada geçici dalgalanmanın beklenen bir davranış olduğunu resmi dokümantasyonunda açıkça yazıyor.
Google Search Central’ın “Site Moves and Migrations” rehberi şunu söylüyor: “Expect temporary fluctuation in site ranking during the move… This is normal and a site’s rankings will settle down over time.” Bu dalgalanma anlık değildir, çünkü Googlebot eski URL’lerin yerine yenilerini koymadan önce yeni adresleri yeniden taramalı, yeniden değerlendirmeli ve canonical (bir grup benzer sayfadan Google’ın asıl saydığı adres) kararını yeni sinyallere göre tazelemelidir. Yalnızca hosting veya sunucu değiştiğinde, URL hiç değişmese bile, Googlebot’un tarama hızında taşıma sonrası geçici bir düşüş görülebilir; bu düşüşün farklı bir mekanizması var ve ayrıca ele alınıyor.
Trafik ne kadar düşer, kaç hafta sürer
Google net bir yüzde veya hafta sayısı vermiyor; verdiği tek somut ölçüt, orta ölçekli bir sitede yeni URL’lerin eskilerin yerini almasının birkaç hafta veya daha uzun sürebileceği, büyük sitelerde bu sürenin daha da uzayabileceğidir.
Bu, yazının dürüstlük eksenidir. Sektörde dolaşan kesin yüzde ve hafta rakamlarının kaynağı sorgulandığında geriye neredeyse hiçbir şey kalmıyor.
| Kaynak | Verdiği rakam/süre | Kaynağa bağlı mı |
|---|---|---|
| Google Search Central (resmi rehber) | Orta ölçekli site: birkaç hafta veya daha uzun. Büyük site: daha da uzun. | Evet, doğrudan dokümantasyon cümlesi |
| cenuta.com (Türkçe, “Hosting Değişikliği SEO’yu Etkiler mi?” yazısı) | Genel tavsiye, somut yüzde veya hafta rakamı yok | Kaynaksız, rakam zaten verilmiyor |
| medimagazin.com.tr (Türkçe, site yenileme/migrasyon yazısı) | Genel tavsiye, somut yüzde veya hafta rakamı yok | Kaynaksız, rakam zaten verilmiyor |
| krawl.digital (İngilizce, kalite çıtası için taranan kaynak) | Site büyüklüğüne göre altı senaryo: “%5-%20” ile “%20-%40” arası düşüş, “1-3 hafta” ile “18 ay” arası toparlanma | Kaynaksız; “sektör analizleri” ve “çoklu çalışmalar” diye anılıyor, hiçbir isimli çalışmaya veya tarihli veri setine bağlanmıyor |
Türkçe rakiplerin verdiği genel tavsiye en azından yanlış bir kesinlik izlenimi yaratmıyor; İngilizce rakibin altı senaryolu tablosu ise tam tersini yapıyor, kesin aralıklar vererek bir ölçüm gibi görünen ama hiçbir kaynağa bağlanmayan bir rakam seti sunuyor. Google’ın kendisi de resmi bir yüzde veya süre taahhüdü vermiyor. Google’dan Arama Savunucusu John Mueller, 8 Temmuz 2018’de Twitter’da domain değişikliği yapan SEO’lara deneyimlerini sordu: sistematik planlayıp uygulandığında trafik kaybı korkusunun haklı çıkıp çıkmadığını merak ediyordu. Bir haber sitesinin aktardığına göre gelen yanıtlar birbiriyle çelişti; kimi ciddi bir kayıptan bahsetti, kimi doğru yapıldığında hızlı bir toparlanma yaşadığını söyledi. Bunların hiçbiri doğrulanmış bir ölçüm değil, tek kullanıcılık anekdottur. Google’ın bu soruyu bizzat topluluğa sorması, net bir rakamın Google’dan da gelmediğinin kendisi kadar güvenilir bir göstergedir.
Trafik düşüşü ne zaman normal, ne zaman bozulmanın işaretidir
Google’ın resmi trafik düşüşü teşhis rehberi dört ölçüt veriyor: pozisyon düşüşünün büyüklüğü, impressions ile clicks’in birlikte mi yoksa yalnız clicks’in mi düştüğü, düşüşün site geneli mi yoksa belirli bir sayfa grubunda mı olduğu ve geçen süre.
Google’ın “Debug Google Search Traffic Drops” rehberi, trafik düşüşünün altı olası nedenini sıralıyor: algoritmik güncellemeler, teknik sorunlar (tarama, indeksleme veya sunma), güvenlik tehditleri, spam politikası ihlalleri, mevsimsellik veya değişen ilgi alanları ve site taşımaları. Rehber site taşımasını bu altı nedenden biri olarak doğrudan adlandırıyor: “If you change the URLs of existing pages on your site, you may experience ranking fluctuations while Google recrawls and reindexes your site.” Bu çerçevenin migrasyona özel bir karar aracına çevrilmiş hali şöyledir.
| Gözlem | Normal kabul edilebilir | Araştırılması gereken |
|---|---|---|
| Pozisyon değişimi | Küçük düşüş (ör. 2. sıradan 4. sıraya) | Büyük düşüş (ör. 4. sıradan 29. sıraya) |
| Impressions ve clicks | Birlikte, kademeli düşüp yeniden yükseliyor | Yalnızca clicks düşüyor, impressions sabit kalıyor (başlık veya snippet sorunu işareti) |
| Kapsam | Site geneline yayılmış, geçici | Belirli bir sayfa grubunda yoğunlaşmış, kalıcı |
| Zamanlama | Taşıma tarihiyle örtüşüyor, haftalar içinde düzeliyor | Bir çekirdek güncellemesinin duyuru tarihiyle çakışıyor, haftalar geçse de düzelmiyor |
Son satır önemli bir karışıklığı çözer. Taşıma sonrası düşüş bir çekirdek güncellemesiyle aynı tarihe denk geldiğinde iki neden birbirine karışabilir; bu karışıklığı çözmenin yolu Google’ın güncelleme duyuru tarihleriyle kendi trafik düşüş tarihini çakıştırmaktır, tam da ajansın “algoritma güncellemesi” açıklamasının doğruluğunu test eden ayrı bir kontrolün yaptığı iş budur.
Search Console’da site taşıma süreci nasıl izlenir
Google’ın site taşıma rehberi üç raporu adıyla veriyor: Site Haritaları raporu, Sayfalar raporu ve Performans raporunun Sorgular sekmesi.
İzleme sırası üç adımdan oluşuyor. İlk olarak Site Haritaları raporuna (Sitemaps) eski ve yeni sitemap birlikte gönderilir; bu, Google’a hangi URL’lerin arandığını açıkça söyler. Ardından Sayfalar raporu (Google’ın rehberde Index Coverage olarak adlandırdığı rapor) izlenir; eski sitede indeksli URL sayısının düşmesi ve yeni sitede artması beklenen grafiktir. Son olarak Performans raporunun Sorgular sekmesinde (Search queries) yeni URL’lerin sıralamaya girmesiyle birlikte gösterim ve tıklamanın artması takip edilir.
Bu üç raporun doğru okunması tek bir koşula bağlı: sitemap’teki lastmod tarihinin taşınan her sayfada gerçekten güncellenmiş olması gerekir. Site Haritaları raporunda yeni sitemap’in gönderilmiş görünmesi tek başına yeterli değildir; sitemap’teki lastmod tarihinin yanlış kurulması durumunda Google’ın yeniden tarama önceliği yanlış sıraya girer ve Site Haritaları, Sayfalar ve Performans raporlarının üçü de beklenenden daha yavaş hareket eder.
Site taşımasında en sık görülen beş teknik hata
Google’ın kendi sorun giderme rehberi beş somut hata kategorisi veriyor: noindex etiketi veya robots.txt engeli, hatalı yönlendirmeler, Sayfalar raporunda görünen diğer tarama hataları, yetersiz sunucu kapasitesi ve güncellenmemiş sitemap.
Birincisi ve en sık rastlanan hata, yeni sunucuya eski robots.txt dosyasının olduğu gibi kopyalanması veya bir noindex etiketinin yanlışlıkla taşınmasıdır. Robots.txt ile noindex etiketinin birbirinin yerine geçmeyen iki ayrı engelleme mekanizması olduğu burada kritik bir ayrımdır; biri taramayı biri indekslemeyi engellediği için biri açıkken diğeri kapalı kalınca sayfa sessizce aramanın dışında kalabilir ve bu durum haftalarca fark edilmeyebilir.
İkincisi, 1:1 karşılık olmadan kurulan eksik veya hatalı yönlendirmelerdir; eski bir sayfa alakasız bir hedefe yönlendirildiğinde Google bunu sinyal taşıyan bir yönlendirme olarak değil, hatalı bir eşleşme olarak değerlendirebilir. Üçüncüsü, Sayfalar raporunda görünen ve yönlendirmeyle ilgisi olmayan diğer tarama hatalarıdır; sunucu hatası, zaman aşımı veya erişim engeli gibi kayıtlar bu kategoriye girer. Dördüncüsü, büyük sitelerde yeni sunucunun tarama hacmini karşılayamaması, yani yetersiz sunucu kapasitesidir. Beşincisi ise sitemap’in yeni URL’lerle güncellenmemesi, yani eski adreslerin hâlâ sitemap’te listelenip yenilerinin hiç eklenmemesidir.
Eski URL’ler toplu nasıl taranır
Yüzlerce eski URL’yi Search Console’da tek tek kontrol etmek yerine, her adresin durum kodunu ve yönlendirme hedefini toplu olarak gösteren bir bash döngüsü kullanılır.
Script, eski sitemap’ten veya erişim loglarından çıkarılan URL listesini satır satır okur, her birini curl ile sorgular ve HTTP durum kodunu, zincir uzunluğunu ve Location başlığını birlikte raporlar.
#!/usr/bin/env bash
# Eski URL listesini (bir satıra bir adres) toplu olarak durum koduna göre tarar.
# Kullanım: ./eski-url-taramasi.sh eski-urller.txt
while IFS= read -r url; do
[ -z "$url" ] && continue
hop=0
current="$url"
chain="$url"
codes=""
while [ "$hop" -lt 6 ]; do
headers=$(curl -s -o /dev/null -D - --max-time 10 "$current")
code=$(printf '%s' "$headers" | head -n1 | awk '{print $2}')
location=$(printf '%s' "$headers" | grep -i '^location:' | head -n1 | sed -E 's/^[Ll]ocation: *//' | tr -d '\r\n')
codes="$codes $code"
if [[ "$code" =~ ^3[0-9][0-9]$ ]] && [ -n "$location" ]; then
hop=$((hop + 1))
current="$location"
chain="$chain -> $current"
else
break
fi
done
first_code=$(echo "$codes" | awk '{print $1}')
final_code=$(echo "$codes" | awk '{print $NF}')
if [ "$hop" -eq 0 ]; then
echo "DOGRUDAN $final_code (yonlendirme yok): $url"
elif [ "$hop" -eq 1 ] && [ "$first_code" = "301" ] && [ "$final_code" = "200" ]; then
echo "TEK SEKME OK (301): $chain"
elif [ "$hop" -ge 2 ]; then
echo "ZINCIR ($hop sekme, kodlar:$codes): $chain"
else
echo "SORUNLU SEKME (ilk kod $first_code, 301 degil): $chain"
fi
done < "$1"
Script üç durumu işaretler: hiç yönlendirilmeyen adresler (“DOGRUDAN”, genelde bir hata işareti), tek bir 301 ile 200’e ulaşan sağlıklı kayıtlar (“TEK SEKME OK”) ve birden fazla 3xx içeren zincirler (“ZINCIR”). Gerçek bir test çalıştırmasında http://google.com adresi tek bir 301 ile hedefine ulaşırken (“TEK SEKME OK (301): http://google.com -> http://www.google.com/”), iki ayrı 301’den geçen bir adres “ZINCIR (2 sekme, kodlar: 301 301 200)” olarak, 301 yerine 302 kullanan bir kayıt da “SORUNLU SEKME (ilk kod 302, 301 degil)” olarak işaretlendi. Bu üçüncü durum migrasyonlarda gözden kaçan bir ayrımdır: tek sekmeli bir yönlendirme bile 301 değil 302 ile kurulmuşsa, Google bunu kalıcı bir taşıma sinyali olarak değil geçici bir yönlendirme olarak okuyabilir.
Script yalnızca kendisine verilen listeyi tarar; listenin dışında kalan veya sitemap’ten düşmüş eski adresleri göremez. Script çıktısı bu yüzden sitedeki tüm URL’leri tek seferde tarayan bir teknik denetimle çapraz kontrol edilir; denetim, hangi eski adreslerin hâlâ dışarıdan bağlantı aldığını veya sitemap dışında kaldığını toplu halde göstererek script’in manuel olarak bulamayacağı örüntüleri ortaya çıkarır.
Toparlanma dört haftayı geçti, sırada ne var
Google’ın orta ölçekli site için verdiği “birkaç hafta” penceresi dolduğunda sıra, teşhisten doğrulamaya kadar dört adımlı bir sıraya girer.
İlk olarak eski URL tarama script’i, aynı liste üzerinde yeniden çalıştırılır; yönlendirme, robots.txt ve noindex hataları bu aşamada ortaya çıkar. İkinci olarak Sayfalar ve Tarama İstatistikleri (Crawl Stats) raporlarında hata kategorisi aranır; sunucu kapasitesi yetersizse bu raporda tarama hızında kalıcı bir düşüş görülür. Üçüncü olarak Google Trends ile konunun genel ilgisinin değişip değişmediği kontrol edilir; düşüş mevsimsellikten kaynaklanıyorsa teknik bir hata aranmaz. Hiçbir teknik hata bulunamazsa ve mevsimsellik de açıklama değilse dördüncü adım beklemeye devam etme kararıdır, çünkü Google’ın verdiği süre penceresi henüz dolmamış olabilir.
Bu sıra teşhisle bitmez. Bir hata bulunup düzeltildiğinde script, düzeltilen URL listesiyle yeniden çalıştırılır; artık tüm kayıtların “TEK SEKME OK” döndürmesi beklenir. Ardından Sayfalar raporunda eski URL sayısının düşmeye, Performans raporunun Sorgular sekmesinde yeni URL’lerin gösterim ve tıklama almaya başladığı doğrulanır. Bu doğrulama adımı atlanırsa düzeltmenin işe yarayıp yaramadığı bir tahminden ibaret kalır.
Hosting değiştirdim, URL’ler aynı kaldı: trafik yine de düşer mi?
Evet, ama farklı ve daha kısa süreli bir etki görülür: sunucu veya hosting sağlayıcısı değişip URL’ler hiç değişmediğinde de Googlebot’un tarama hızında geçici bir dalgalanma ortaya çıkabilir. Google’ın “Site Moves and Migrations” rehberinin hosting değişikliğine özel bölümü şunu yazıyor: “it’s normal to see a temporary drop in Googlebot’s crawl rate immediately after the launch, followed by a steady increase over the next few days” ve bazen bu artış eski seviyenin üstüne çıkar. Nedeni de açıklanıyor: “This fluctuation occurs because we determine crawl rate for a site based on many signals, and these signals change when your hosting changes.” Yani Googlebot yeni sunucunun yanıt hızını, kararlılığını ve kapasitesini yeniden öğrenirken tarama hızını geçici olarak düşürür.
Bu, URL değişikliğinin tetiklediği haftalar süren yeniden değerlendirmeden farklıdır. URL değişmediği için canonical kararı yeniden kurulmaz, Google yalnızca aynı adresleri hangi hızda tarayacağına karar verir; bu yüzden etki günler içinde, genelde bir hafta içinde normalleşir.
HTTPS’e geçmek URL değişikliği sayılır mı?
Evet; http’den https’e geçiş her sayfanın URL’sini değiştirir, bu yüzden Google tarafından tam bir migrasyon muamelesi görür ve site taşımasındaki bütün izleme adımları (sitemap, Sayfalar raporu, yönlendirme kontrolü) geçerlidir. Bir haber sitesinin aktardığına göre Google, HTTPS geçişinin kendi başına bir trafik kaybı nedeni olduğu iddiasını reddediyor: Gary Illyes, 30 Ağustos 2017’de Twitter’da bu iddiaya tek kelimeyle yanıt vermiş: “False.” Aynı yanıt dizisinde John Mueller de bunun resmi bir teyidi gerektirip gerektirmediğini sormuş.
Buradan çıkan sonuç şudur: bir HTTPS geçişinin ardından trafik düşüyorsa, nedeni protokol değişikliğinin kendisi değil, genellikle ayrı bir teknik hatadır; karışık içerik uyarısı (http kaynaklı bir öğenin https sayfada engellenmesi), sertifika hatası veya http sürümlerinden https’e kurulmamış yönlendirmeler bu hatalara örnektir. Bu da site taşımasında görülen beş teknik hatayla aynı teşhis mantığına dayanır.
Eski domaini hemen kapatırsam ne olur?
Google’ın kendi tavsiyesi yönlendirmeleri en az bir yıl canlı tutmaktır; trafik toparlanır toparlanmaz eski domaini kapatmak cazip gelse de bu süre dolmadan kapatmak riskli kabul edilir. Google Search Central’ın site taşıma rehberi şunu yazıyor: “Keep the redirects for as long as possible, generally at least 1 year. This timeframe allows Google to transfer all signals to the new URLs.” Erken kapatma, 301 yönlendirmesinin sinyali en az bir yıl boyunca kademeli olarak taşıdığı sürecin ortasında kesilmesi demektir; trafik görünürde normale dönmüş olsa bile sinyal aktarımı tamamlanmamış olabilir ve eski domain kapatıldığında Google’ın geri dönüp kontrol edebileceği bir yol kalmaz.
site taşıma · migrasyon · teknik SEO · Search Console