E-ticaret SEO, bir online mağazanın kategori ve ürün sayfalarının arama sonuçlarında görünmesi için yapılan teknik ve içerik çalışmasıdır. Kurumsal sitede onlarca sayfa olur; mağazada filtreler, varyantlar ve stok değişimi binlerce adres üretir. Aşağıda kategori sayfasının metnini, iç bağlantısını ve sayfalamanın bugünkü durumunu anlatıyoruz. Filtreli adreslerin dizine girme kuralını ve Product yapısal verisini de ele aldık. Stoktan kalkan ürün için 200, 301, 404 ve 410 arasında seçim yapan bir karar tablosu da var.
E-ticaret SEO'yu kurumsal site SEO'sundan ayıran ne?
Fark, sayfaların çoğunu insanın değil sistemin üretmesidir. Her filtre, sıralama ve varyant yeni bir adres doğurabilir. Google bu adresleri tarar; hangisinin dizine gireceğine mağaza karar vermezse kararı Google verir.
Basit bir hesap yapalım. Beş renk, altı beden ve dört fiyat aralığı olan bir kategori düşünün. Üçü birlikte seçildiğinde bile 5 × 6 × 4 = 120 filtre adresi çıkar. Üç sıralama seçeneği eklenince sayı 360'a yükselir. Bunların neredeyse hiçbiri ayrı bir aramayı karşılamaz.
Mağazanın ikinci farkı zamandır. Ürün stoktan çıkar, sezon biter, model yenilenir. Kurumsal sitede bir sayfa yıllarca aynı kalır; mağazada aynı adres bir ay satışta, ertesi ay stok dışıdır. E-ticaret SEO bu yüzden bir kerelik kurulum değil, stokla birlikte işleyen kurallar dizisidir.
Kategori sayfası neden mağazanın en değerli sayfasıdır?
Genel aramaları kategori sayfası karşılar. "Erkek deri bot" arayan kişi tek bir modeli değil, seçenekleri görmek ister. Ürün sayfası ise marka ve model adı geçen dar aramalarda öne çıkar.
Google, mağaza yapısı için açık bir sıra öneriyor. Menüden kategoriye, kategoriden alt kategoriye, alt kategoriden de bütün ürünlere bağlantı verilmeli. Kategori sayfası ürünlerin hepsine doğrudan bağlanmazsa Googlebot bazılarını yalnızca taramayla bulamayabilir.
Bağlantının biçimi de sonucu etkiler. Google, gezinme için <a href> etiketi kullanılmasını, başka öğelere bağlı JavaScript olaylarından kaçınılmasını istiyor. Ürünler yalnızca JavaScript ile açılan bir kutudaysa taramada görünmeyebilir.
Kategori sayfasına ne kadar metin yazılmalı?
Ürün listesinin önüne kısa, altına daha uzun bir metin koymak işe yarar. Üstteki metin sayfanın neyi listelediğini söyler. Alttaki metin seçim yapan kişinin sorularını cevaplar.
Bizim tercihimiz, ürünlerin üstünde 2–3 cümlelik bir giriştir. Daha uzun metin ürünleri ilk ekranın altına iter; telefonda bu kayıp daha büyüktür. Alt kısımda beden seçimi, malzeme farkı ve bakım gibi konuları anlatan bir alım rehberi durur.
Her kategorinin metni kendine ait olmalıdır. Yalnızca kategori adı değişen şablon metinler okura bir şey anlatmaz. Kategori başlığı (H1), sayfa başlığı ve açıklama da her kategoride ayrı yazılır.
Kategori sayfasında iç bağlantı nasıl kurulur?
Kategori sayfası hem bağlantı alır hem dağıtır. Üstte ekmek kırıntısı üst kategorilere, listede ürün kartları ürünlere, altta da ilgili kategoriler komşu sayfalara bağlanır. Hepsi normal bağlantı olmalıdır.
Google, çok satan bir ürüne ana sayfadan ya da blog yazılarından bağlantı vermeyi öneriyor. Bir sayfaya site içinden ne kadar çok bağlantı gelirse göreli önemi o kadar artar. Sezonun öne çıkan kategorisini ana sayfada göstermek de aynı mantıkla çalışır.
Sayfalama Google'da bugün nasıl çalışıyor?
Google rel="next" ve rel="prev" etiketlerini artık kullanmıyor. Sayfalı bir listedeki her sayfayı ayrı bir sayfa olarak değerlendiriyor. Her sayfanın kendi adresi, kendi standart (canonical) adresi ve sıradaki sayfaya normal bir bağlantısı olmalıdır.
Sık yapılan hata, 2. ve sonraki sayfaların standart adresini 1. sayfa olarak göstermektir. Google bunu açıkça önermiyor; dizinin ilk sayfası standart sayfa yapılmamalı. Aksi hâlde sonraki sayfalardaki ürünlere giden yol zayıflar.
Adres biçimi için Google ?page=2 gibi anahtar ve değer yapısını örnek veriyor. Sonsuz kaydırma ve "daha fazla yükle" düğmesi genellikle JavaScript ile çalışır. Google'ın tarayıcısı kullanıcı etkileşimi isteyen işlevleri kendiliğinden tetiklemez. (Biz bu düğmeyi aynı zamanda ?page=2 adresine giden bir bağlantı olarak kuruyoruz.)
Olmayan bir sayfa numarası istendiğinde sunucu 404 döndürmelidir. Sayfa başına ürün sayısı için Google bir sayı vermiyor. Bizim varsayılanımız 24 üründür, çünkü ızgara 2, 3 ve 4 sütuna eşit bölünür.
Filtreli adresler dizine açılmalı mı?
Çoğu filtreli adres dizine açılmamalıdır. Yalnızca kendi başına aranan, yeterli ürünü olan ve kalıcı bir sayfa gibi kurulabilen birleşimler açılır. Geri kalanı için dört araç var: robots.txt, noindex, canonical ve adres parçası (#).
Dört araç aynı işi yapmaz. Biri taramayı durdurur, biri dizine eklemeyi engeller, biri tercih bildirir. Karıştırıldıklarında birbirinin etkisini bozabilirler.
| Araç | Ne yapar | Taramayı azaltır mı | Dikkat edilecek nokta |
|---|---|---|---|
| robots.txt engeli | Adresin taranmasını durdurur | Evet, doğrudan | Bağlantı alan adres içeriksiz olarak yine dizine girebilir |
| noindex | Taranan sayfayı dizin dışında tutar | Hayır, sayfanın taranması gerekir | robots.txt ile engellenen sayfada etiket hiç görülmez |
| canonical | Standart adresi önerir | Zamanla azaltabilir | Kesin komut değil, güçlü bir işarettir |
| Adres parçası (#) | Filtreyi yeni adres açmadan uygular | Evet, ayrı adres oluşmaz | Aranan bir filtre için uygun değildir |
Tablodaki en kritik satır ikincisidir. Google'a göre noindex'in çalışması için sayfa robots.txt ile engellenmemiş olmalıdır. Engelli sayfadaki etiketi tarayıcı hiç görmez; başka sayfalar bağlantı veriyorsa adres sonuçlarda kalabilir. Bir adrese ya robots.txt ya noindex uygulanır, ikisi birden değil.
Hangi filtre birleşimi dizine açılır?
Arama talebi olan birleşim açılır. "Siyah deri bot" aranıyorsa renk ve malzeme filtresi birlikte ayrı bir sayfayı hak eder. "Siyah, 42 numara, fiyata göre artan" ise kimsenin aradığı bir sayfa değildir.
Bizim kullandığımız ölçüt dört sorudan oluşur:
- Birleşim için Search Console'da ya da anahtar kelime aracında ayrı bir arama görünüyor mu?
- Birleşimde en az 6 ürün var mı? (Bu sayı bizim eşiğimizdir, Google'ın değil.)
- En fazla iki filtre mi birleşiyor? Üç ve üstünü dizine açmıyoruz.
- Sayfaya kendi başlığı, H1'i ve kısa metni yazılabilir mi?
Dört cevap da evetse birleşim temiz ve kalıcı bir adres alır, kategori sayfasından bağlantı görür. Bir cevap hayırsa adres noindex ya da canonical ile kapatılır. Sıralama, fiyat aralığı ve stok durumu filtrelerini hiçbir zaman açmıyoruz.
Google iki teknik ayrıntıya daha dikkat çekiyor. Parametreler standart & işaretiyle ayrılmalı; virgül ve noktalı virgül ayırıcı olarak zor anlaşılır. Filtreler hep aynı sırayla eklenmeli ki "renk, beden" ile "beden, renk" iki ayrı adres üretmesin. Ürün çıkmayan bir birleşim ise 404 döndürmelidir.
Renk ve beden varyantları ayrı sayfa mı olmalı?
Varyantların çoğu ayrı sayfa gerektirmez. Google, varyant adresini /tisort/yesil ya da /tisort?renk=yesil biçiminde kurmayı öneriyor. Parametreli kurulumda parametresiz adres standart adres olarak gösterilir.
Renk bazen kendi başına aranır; "kırmızı abiye elbise" buna örnektir. Böyle bir rengi ayrı adresle açmak mantıklıdır. Beden ise nadiren aranır ve çoğunlukla ürün sayfasında bir seçim olarak kalır.
Adres parçası (#) burada da sınırlıdır. Google /urun#siyah ile /urun#beyaz adreslerini aynı sayfa sayar. Hangi yol seçilirse seçilsin iç bağlantıda, site haritasında ve canonical etiketinde aynı adres kullanılmalıdır.
Stokta olmayan ya da satıştan kalkan ürünün sayfası ne olmalı?
Geçici olarak stokta olmayan ürünün sayfası açık kalır. Google, ürünü aramadan kaldırmak yerine sayfayı tutup stokta yok diye işaretlemeyi öneriyor. Kalıcı olarak kalkan ürünün yolu ise yerine geçen bir ürün olup olmadığına göre ayrılır.
Google'ın gerekçesi basittir. Ürün aramadan kalkarsa insanlar neden kaybolduğunu bilemez. Açık kalan sayfada ürünün ne olduğu, ne zaman gelebileceği ve benzer seçenekler görülür. Yapısal verideki stok bilgisi de aynı anda güncellenmelidir.
Durum kodlarında bir ayrıntı çoğu rehberde atlanıyor. Google, 429 dışındaki bütün 4xx kodlarını aynı biçimde işler. Yani Google Arama için 404 ile 410 arasında fark yoktur; dizindeki adres iki durumda da dizinden çıkar. 410 yine de "kalıcı olarak kaldırıldı" anlamını diğer istemcilere daha açık söyler.
Yönlendirmede ise kalıcı ile geçici ayrımı önemlidir. Google 301 ve 308'i güçlü, 302'yi zayıf bir işaret sayıyor. Kalkan ürün yeni modeline 301 ile bağlanırsa arama sonuçlarında yeni sayfa eskisinin yerini alır.
Tablodaki 4. ve 6. satır kendi tercihimizdir. Karşılığı olmayan ama bağlantı alan bir ürün sayfasını kaldırmıyoruz. Sayfayı "satıştan kalktı" (Discontinued) olarak işaretleyip en yakın üç seçeneğe bağlantı veriyoruz. Tek bir beden bittiğinde de sayfa açık kalır, yalnızca o seçenek pasif olur. Her kalkan ürünü ana sayfaya yönlendirmek ise ziyaretçiye aradığını vermez; bunu da yapmıyoruz.
Stok sorunu bütün mağazayı etkiliyorsa sayfaları 404 ile kapatmak yanlıştır. Google, siteyi 404 ya da 410 ile engellemenin adresleri aramadan kaldıracağını yazıyor. Siteyi acilen kapatmak gerekirse 503 kodu yalnızca 1–2 günlük süre için öneriliyor.
Product yapısal verisi hangi alanları içermeli?
Product yapısal verisi, ürünün adını, görselini, fiyatını ve stok durumunu Google'a makine okunur biçimde bildiren koddur. Google iki görünüm tanımlıyor: satın alınabilen sayfalar için satıcı listelemesi, satın alınamayan sayfalar için ürün snippet'i.
Satıcı listelemesi için zorunlu alanlar azdır. Ürün düzeyinde ad (name), görsel (image) ve teklif (offers) gerekir. Teklifin içinde fiyat (price) ile üç harfli para birimi kodu (priceCurrency) yer alır. Fiyat sıfırdan büyük olmalıdır.
Önerilen alanlar listeyi zenginleştirir:
- Stok durumu (availability): InStock, OutOfStock, BackOrder, PreOrder ya da Discontinued.
- Marka (brand), GTIN ve stok kodu (sku).
- Ürün durumu (itemCondition): yeni, yenilenmiş ya da ikinci el.
- Kargo (shippingDetails) ve iade politikası (hasMerchantReturnPolicy).
- Puan ortalaması (aggregateRating), yalnızca gerçek yorumlar varsa.
Stok durumu zorunlu değildir, ama stok kararlarının Google'a ulaştığı yer burasıdır. Ürün stoktan çıktığında sayfa metni ile yapısal veri birlikte değişmelidir. Kendi sitemizde her sayfada tek bir yapısal veri grafiği (@graph) kullanıyoruz. Mağaza projelerinde de ürün düğümünü ayrı bir blok değil, bu grafiğin parçası olarak kurmayı öneriyoruz.
Google, yapısal veriyle birlikte Merchant Center ürün feed'i sağlamayı da öneriyor. İkisi birlikte ürünün daha çok görünüme uygun olmasını ve verinin doğrulanmasını kolaylaştırır. Ücretsiz listelemeler Arama, Alışveriş sekmesi, Görseller ve Lens gibi yüzeylerde çıkabilir. (Hangi yüzeyin hangi ülkede açık olduğu hesap ayarlarından kontrol edilmeli.)
Hazır altyapıda hangi SEO ayarları kısıtlı kalabilir?
Hazır e-ticaret paketlerinin çoğu temel ayarları verir: sayfa başlığı, açıklama, temiz adres ve site haritası. Kısıt genellikle ince kararlarda çıkar. Paketi seçmeden önce şu soruların cevabını yazılı istemek gerekir:
- Filtreli adreslere tek tek noindex ya da canonical verilebiliyor mu?
- robots.txt dosyası düzenlenebiliyor mu?
- Kalkan ürün için 301 yönlendirme panelden kurulabiliyor mu, 410 seçeneği var mı?
- Product yapısal verisine marka, GTIN, kargo ve iade alanları eklenebiliyor mu?
- Sayfalama gerçek bağlantılarla mı, yalnızca JavaScript ile mi çalışıyor?
Cevapların çoğu hayırsa paket kötü demek değildir. Küçük katalogda bu kısıtlar az hissedilir. Binlerce ürün ve çok sayıda filtre olduğunda ise dizine giren sayfaların kalitesini bu ayarlar belirler. Hangi noktada özel altyapının mantıklı olduğunu hazır paket ile özel yazılım karşılaştırması yazımızda ele aldık.
Yapılan değişikliğin etkisi nereden izlenir?
İlk bakılacak yer Search Console'daki sayfa dizine ekleme raporudur. Filtre ve stok kararlarının sonucu orada, nedenleriyle birlikte görünür. Ürün yapısal verisi için ayrıca satıcı listelemeleri ve ürün snippet'leri raporları vardır.
Mağazalarda üç neden sık çıkar:
- Duplicate, Google chose different canonical than user: Google başka bir adresi standart seçmiş. Filtre ya da varyant adresleri birbirine çok benziyor demektir.
- Crawled - currently not indexed: Sayfa taranmış ama dizine alınmamış. Az ürünlü filtre adreslerinde ve boş kategorilerde sık görülür.
- Soft 404: Sayfa 200 döndürüyor ama içerik boş ya da hata mesajı gibi görünüyor.
Kendi yönetim panelimizde Search Console API bağlantısı var; dizin verisini oradan izliyoruz. Bir kuralın etkisini görmek için Google'ın adresleri yeniden taramasını beklemek gerekir. Büyük katalogda bu bekleme daha uzun sürer.
Teknik kontrolün tamamı için SEO teknik kontrol listesi sayfamızı kullanabilirsiniz. Kategori metni, filtre kuralları ve ölçüm birlikte yürüsün isterseniz SEO yönetimi hizmetimiz bu işleri kapsıyor.
Sıkça sorulan sorular
- E-ticaret SEO nedir?
- E-ticaret SEO, online mağazanın kategori ve ürün sayfalarının arama sonuçlarında görünmesi için yapılan teknik ve içerik çalışmasıdır. Filtre, varyant ve stok kuralları bu çalışmanın merkezindedir.
- Stokta olmayan ürünün sayfası silinmeli mi?
- Geçici stok dışı üründe sayfa açık kalır ve stokta yok diye işaretlenir. Google da ürünü aramadan kaldırmak yerine bu yolu öneriyor.
- Kalıcı kalkan ürün için 404 mü 410 mu kullanılmalı?
- Google Arama için ikisi aynı işlenir ve adres dizinden çıkar. 410 kalıcı kaldırılmayı diğer istemcilere daha açık söyler.
- Kalkan ürünü ana sayfaya yönlendirmek doğru mu?
- Önermiyoruz, çünkü ziyaretçi aradığını bulamaz. Yerine geçen bir model varsa 301 o modele yapılır.
- Filtreli sayfalar dizine açılmalı mı?
- Çoğu açılmamalıdır. Kendi araması olan, yeterli ürün içeren ve kendi metni yazılabilen birleşimler açılabilir.
- Noindex ile robots.txt birlikte kullanılır mı?
- Kullanılmaz. robots.txt ile engellenen sayfadaki noindex etiketini Google hiç görmez.
- Sayfalı kategoride canonical ilk sayfaya mı verilir?
- Hayır. Google her sayfanın kendi standart adresi olmasını ve ilk sayfanın standart yapılmamasını öneriyor.
- Product yapısal verisinde hangi alanlar zorunlu?
- Satıcı listelemesi için ad, görsel ve teklif zorunludur. Teklifte fiyat ve para birimi kodu bulunur; stok durumu önerilen alandır.
Kaynakça
- Filtreli (faceted) gezinme URL'lerinin taranmasını yönetme — Filtreli adreslerde robots.txt, canonical, adres parçası, & ayırıcı ve sonuçsuz birleşimde 404 önerisini destekler.
- Google İçin Sayfalara Ayırmayla İlgili En İyi Uygulamalar — rel next ve prev etiketlerinin kullanılmadığını ve ilk sayfanın standart yapılmaması gerektiğini gösterir.
- E-ticaret Web Sitesi Gezinme Yapısı — Menüden kategoriye, kategoriden ürüne bağlantı sırasını ve a href kullanımını açıklar.
- HTTP Durum Kodlarının Google Tarayıcılarını Nasıl Etkilediği — 404 ile 410'un aynı işlendiğini ve 301 ile 302'nin işaret gücü farkını destekler.
- Web Sitesini Geçici Olarak Duraklatma veya Devre Dışı Bırakma — Stokta olmayan ürünün sayfasını tutup stokta yok diye işaretleme önerisini ve 503 süresini içerir.
- Satıcı Ürün Listeleme Yapılandırılmış Verilerini Ekleme — Zorunlu ve önerilen alanları, stok durumu değerlerini ve Merchant Center ile birlikte kullanımı açıklar.


