GymSphere — SalonunHENÜZ AÇILMADI
Salon keşfi sunucuda çalışıyor ve web tarafında yayında: mesafe, olanak, çalışma saati, kampanya ve anlık doluluk tek listede. Telefondaki kapı henüz açılmadı — uygulamadaki ekran o kapının yerinde durup listenin gerçek hâlini örnek veriyle gösteriyor.

Salonun · 1/3
GymSphere vitrininin üstü. Ana ekranın en altındaki gezinme çubuğunun ortasında duran küreye dokununca buraya gelirsin; çubuğun iki kanadı antrenör ve diyetisyen vitrinlerine, ortadaki küre bu ekrana gider.
Salon keşfi açıldığında listenin nasıl görüneceğini örnek veriyle okur, en altta açılış sırasına oy verirsin.
- Geri — ana ekran; bu ekranın geri tuşu doğrudan panoya döner
- Aşağı — "Neden burada", "Ne alırsın" panelleri ve en altta oy düğmesi
- Ekran içinden başka bir yere ÇIKIŞ YOKTUR: demo listesi bilerek basılamaz hâlde çizilir
Bu ekranda ne var 12
Diyelim ki ana ekrandaki küreye bastın ve karşına çıkan ilk şey gri bir kutu: "Bu paket henüz açılmadı".
O kutu ekranın en üstünde durur ve içerik okunmaya başlamadan alanın kapalı olduğunu söyler.
Sıra bilerek böyle: aynı not sayfanın altında olsaydı kullanıcı önce listeyi görür, "demek çalışıyor" der ve aşağı inince yanıldığını anlardı. Yanlış bir zihinsel model kurup sonradan düzeltmek, hiç kurmamaktan pahalıdır — kullanıcı ürünün kendisine değil, ürünün ne söylediğine güvenmeyi bırakır.
Bu ekranda gördüğün liste bir vaattir, bir hizmet değil. Salon aramak istiyorsan bugün çalışan yol web tarafındadır.
Buna sistemde "kapalı alan vitrini" denir.
Diyelim ki notun altında mavi çerçeveli bir kutu açıldı, sağ üst köşesinde "ÖRNEK GÖRÜNÜM" yazıyor ve içinde üç salon kartı duruyor.
O çerçeve kaldırılamaz bir dürüstlük işaretidir: içindeki her şey örnektir ve hiçbir kartına basılamaz.
Basılabilir görünen ama çalışmayan bir düğme, vitrini yalancı çıkarır. Bu yüzden demo içeriği dokunmaya kapalı çizilir ve ekran okuyucunun ağacına da "burada düğme var" diye geçmez. Rozet de metin olarak eklenmez, çerçevenin kendisine gömülüdür — çerçeve varsa rozet vardır, biri kalıp öteki unutulamaz.
Kartlara dokunmayı deneme; buradaki iş görmek, seçmek değil. Gerçek liste açıldığında aynı yerleşimi tıklanabilir hâlde göreceksin.
Buna sistemde "demo çerçevesi" denir.
Diyelim ki listedeki ilk kart "Örnek Salon C" ve sağında gri bir "REKLAM" etiketi var; altındaki iki kartta böyle bir etiket yok.
Reklamlı gösterimler organik listeye karıştırılmaz; ayrı, etiketli ve en fazla üç slotluk bir blokta durur.
İki sebebi var ve ikisi de kodda yazılı. Birincisi hukuki: reklam anlaşmasına dayanan sıralama sonuçlarının "reklam" olarak etiketlenmesi zorunludur, ayrı blok bunu tartışmasız hâle getirir. İkincisi teknik: reklam slotları sayfalama sırasında kaymaz, yani ikinci sayfada aynı salonu tekrar görmezsin. Aynı salon hem reklamda hem organikte çıkarsa organik listeden düşülür.
En üstteki kart "en iyi salon" demek değildir; "parasını ödemiş salon" demektir. Karşılaştırmanı etiketsiz kartlar üzerinden yap.
Buna sistemde "ücretli öne çıkarma bloğu" (sponsored slot) denir.
Diyelim ki reklam kartının çerçevesi gri, altındaki iki organik kartın çerçevesi mavi ve bunun bir kayırma olduğunu düşündün.
Tam tersi: reklam kartı bilerek NÖTR çerçeve taşır, marka rengi yalnız organik kartlardadır.
Vurgulu bir çerçeve reklamı organikten güçlü gösterirdi ve etiketin işini geri alırdı. Ayrım renkte tutulur, ağırlıkta değil. Çerçevelerin görünür olması da tercih değil ölçüm sonucu: eski hâlde kart kenarları arayüz öğesi eşiğinin (3.0) altında kalıyordu ve kartlar birbirine yapışık görünüyordu; şimdi nötr kenar 3.2640, marka kenarı 6.5562 kontrast taşıyor.
Kartın çerçeve rengine bakarak hangisinin reklam olduğunu ayırt edebilirsin, ama asıl işaret yazılı etikettir.
Buna arayüz dünyasında "ayrım renkte, ağırlıkta değil" kuralı denir.
Diyelim ki "Örnek Salon A" kartında "Moda · 0,8 km" yazıyor ve bu mesafenin nereden geldiğini merak ettin.
Mesafe, senin o anki koordinatınla salonun pinlenmiş koordinatı arasındaki kuş uçuşu uzaklıktır ve her istekte yeniden hesaplanır.
Hesap iki adımlıdır. Önce kaba bir dikdörtgen çizilir — bu, veritabanı indeksinin kullanılabildiği ucuz adımdır ve yarıçapın dışındaki uzak kayıtları en baştan eler. Sonra dikdörtgenin köşelerinde kalan, yarıçap dışı kayıtlar küresel mesafe formülüyle tek tek düşürülür. Tek adımda yapılsaydı ya yavaş olurdu ya da köşelerdeki salonlar listeye sızardı.
Yarıçapı daraltmak listeyi hızlandırmaz, yalnız daraltır; hız zaten ön filtreden gelir. Bir salon listede yoksa ya yarıçap dışındadır ya da pini girilmemiştir.
Buna sistemde "kaba dikdörtgen ön-filtresi + Haversine" denir.
Diyelim ki mesafenin yanında küçük yeşil bir nokta ve "Açık" yazısı var, saat ise akşam 21:40.
O yazı salonun kendi girdiği çalışma saatlerinden o an hesaplanır; işletme "açığım" diye bir düğmeye basmaz.
Karar üç veriye bakar: bugünün haftanın hangi günü olduğu, günün kaçıncı dakikasında bulunduğun ve o gün için girilmiş açılış-kapanış dakikaları. Saat dilimi sabit bir toplamayla çözülür çünkü Türkiye 2016'dan beri UTC+3'te sabittir ve yaz saati uygulaması yoktur. İşletmenin elle işaretlediği bir "açık" bayrağı olsaydı, kapanışta kimse basmayı unutunca salon gece boyunca açık görünürdü.
Bir salon açık görünmüyorsa bunun iki sebebi vardır ve ikisi kodda tek satırda durur: ya o an gerçekten kapalıdır ya da o gün için hiç saat kaydı girmemiştir.
Buna sistemde "çalışma saatinden türetilen açıklık" denir.
Diyelim ki "Serbest ağırlık", "Havuz", "Sauna" yazan mavi çipleri gördün ve "bunları salon kendi mi yazıyor" diye sordun.
Hayır — olanaklar serbest metin değildir, 21 anahtardan oluşan kapalı bir listeden seçilir.
Serbest bırakılsaydı on bin salon "duş", "duşlar", "Duş var" yazardı ve olanak filtresi hiçbir şey bulamazdı. Sabit anahtar + arayüzde çeviri düzeni, filtreyi hem çalışır hem çok dilli tutar. Aramaya bilinmeyen bir anahtar gönderilirse sessizce atılır; uydurma bir filtre sorgusu veritabanına girmez.
Aradığın olanağı çip olarak görmüyorsan o olanak henüz listede yok demektir — salonun onu yazmamış olması ihtimali ayrı bir durumdur.
Buna veri dünyasında "kapalı anahtar kümesi" (controlled vocabulary) denir.
Diyelim ki "Örnek Salon A" kartında "Şu an sakin · %28" ve altında ince mavi bir çubuk var; "Örnek Salon C" kartında ise doluluk hiç yok.
Doluluk yalnız kapasitesini paylaşan salonlarda görünür; kapasite yoksa yüzde uydurulmaz ve kart doluluk çizmez.
Yüzde bir paydaya muhtaçtır. Salon kapasitesini girmediyse elde pay vardır, payda yoktur — uydurma bir paydayla üretilen yüzde, doğru görünen yanlış bir sayı olur ve kullanıcı ona bakarak salona gitme kararı verir. "Sakin / yoğun" sözü de ham yüzdeden değil, yüzdenin düştüğü seviyeden gelir; seviyelerin sınırları sunucuda sabittir: %35 altı sakin, %70 altı orta, %95 altı yoğun, üstü dolu.
Doluluk göstermeyen bir kart "boş salon" demek değildir; "kapasitesini paylaşmamış salon" demektir. Karşılaştırmayı doluluk gösteren kartlar arasında yap.
Buna sistemde "doluluk seviyesi" (occupancy level) denir.
Diyelim ki reklam kartında etiket ikonuyla "Açılışa özel: ilk ay yarı fiyat" yazıyor ve bunun bizim yazdığımız bir metin olduğunu sandın.
Kampanya başlığını işletme kendi panelinden yazar; keşif listesi yalnız o an yayında olanı taşır.
Kampanyanın bir başlangıç ve bitiş anı vardır; liste kurulurken içinde bulunduğun an bu aralığın içinde değilse başlık karta hiç düşmez. Süresi geçmiş kampanyayı kartta bırakmak, kapıya gidip "o kampanya bitti" cevabını almak demektir — ilan sitelerinde en çok şikâyet edilen şey tam budur ve arada ilan sitesi olmamasının anlamı da budur.
Kartta gördüğün kampanya o an yayındadır. Yine de fiyatın kendisi burada yazmaz; fiyat salonun sayfasındadır.
Buna sistemde "yayın penceresi olan kampanya" denir.
Diyelim ki demo listesinin sonunda "Organik sıralama mesafe, profil doluluğu ve tazelikle kurulur; ölçüt her zaman ekranda yazar." cümlesini okudun.
Bu cümle bir pazarlama sözü değil, sunucudaki sıralama açıklamasının kısaltılmış hâlidir ve web tarafında tam metni bir uçtan okunabilir.
Sıralama kriterlerinin açıklanması bir yükümlülüktür ve açıklama metni ağırlıkların durduğu dosyanın İÇİNDE yazılır. Böylece ağırlık değişirse açıklama da değişir; ikisi ayrışıp açıklama yalana dönemez. Metni ayrı bir yerde tutsaydık, bir gün mesafe ağırlığı düşer, ekranda hâlâ eski oran yazardı.
Bir salonun neden üstte olduğunu merak edersen ölçütü tahmin etmen gerekmez; web keşif sayfasındaki "Sıralama nasıl yapılıyor?" bağlantısı listeyi sunucudan çeker.
Buna sistemde "sıralama şeffaflığı" (ranking disclosure) denir.
Diyelim ki demo listesinin en altında telefon ikonuyla "numaran yalnız onayınla o salona gider" yazıyor ve bunun ne kadar bağlayıcı olduğunu merak ettin.
Numaranın salona gitmesi için iki şey birden gerekir: giriş yapmış olman ve rıza kutusunu işaretlemen. İkisi de sunucuda ayrıca kontrol edilir.
Rıza kutusu yalnız arayüzde kontrol edilseydi, isteği elle kuran biri kutuyu atlayabilirdi — ve savunması olmayan bir aktarım kalırdı. Ayrıca o an ekranda gösterilen rıza metninin aynısı kayda yazılır: metin ileride değişse bile eski kayıt kendi metnini taşır. İspat yükü bizde olduğu için metnin kopyası kayıtta durur.
Bir salonla ilgilendiğini bildirmek geri alınabilir bir karardır; kaydı sildiğinde kayıt tamamen silinir, "geri çektim ama sizde duruyor" hâli yoktur.
Buna sistemde "ilgi talebi" (lead) ve "rıza metni kopyası" denir.
Diyelim ki demo listesinde hiçbir yerde fiyat görmedin ve bunu bir eksiklik sandın.
Fiyat bu ekranda bilerek yoktur.
İki gerekçe üst üste biner. Birincisi: açılmamış bir alanda fiyat göstermek, bugün tutulamayacak bir söz vermektir — kullanıcı o rakamı hatırlar, alan açıldığında rakam farklı olur. İkincisi: uygulama içinden satın alma yolu açılmaz, davranış bekçisi bu ekranda para işareti aramaktadır. Web tarafındaki gerçek salon sayfasında paket fiyatları vardır ve orada "en düşük paketten başlayan" biçiminde gösterilir.
Fiyat karşılaştırması yapmak istiyorsan bugün doğru yer web keşfidir; uygulama ekranı hangi bilgilerin karta düşeceğini gösterir, rakamı değil.
Buna ürün dünyasında "tutulamayacak söz vermeme" kuralı denir.
Perde arkası — sistem nasıl karar veriyor 8
Organik sıralama puanı (mesafe %60 · profil doluluğu %30 · tazelik %10)
Diyelim ki sana en yakın salon 300 metrede ama bakımsız; 1,3 kilometre ötede yeni açılmış, vitrinini doldurmuş bir salon var ve sen varlığından haberdar değilsin.
Organik sıra saf mesafe değildir; üç bileşenli tek bir puandan çıkar ve mesafe bunların en ağırıdır.
Saf mesafe sıralamasında ikinci salon asla görünmezdi. Bunun sonucu kötü bir deneyimden ibaret değil: yeni salon hiç görünmezse sisteme girmez, arz büyümezse sana sunulacak bir şey kalmaz. Bu yüzden puanın %30'u "kendini iyi anlatan salon" ölçüsüdür — fotoğraf en ağır bileşendir, çünkü kararını en çok o etkiler — ve %10'u yeni yayına giren salona geçici görünürlük verir: ilk 30 gün tam destek, 90. günde sıfır. Mesafenin kendisi de doğrusal değildir: 0 km 1,0 puan, 2 km 0,5 puan, 10 km 0,17 puan alır. İlk kilometreler çok önemlidir, sonrası önemsizleşir — insanın gerçek davranışı budur.
Listenin üstündeki salon her zaman en yakın olan değildir. Yanındaki mesafeyi okumak, sırayı okumaktan daha bilgilendiricidir.
Buna pazaryeri dünyasında "soğuk başlangıç desteği" (cold start) denir.
Konum yoksa mesafe ağırlığı nereye gider
Diyelim ki konum izni vermedin ve il/ilçe seçerek arama yaptın; liste yine sıralı geldi.
Mesafe bileşeni devre dışı kalır ve onun ağırlığı kalite ile tazeliğe dağıtılır.
Konum yokken mesafeye sabit bir değer vermek en kolay yoldu ama en yanlışı olurdu: her salon aynı mesafe puanını alır, üç bileşenli puan tek bileşene iner ve sıralama sessizce "kayıt sırasına" düşerdi. Ağırlığı dağıtınca sıralama anlamını korur — vitrinini dolduran ve yeni açılan salon önde kalır.
Konum vermemek seni ikinci sınıf bir listeye düşürmez, yalnız "sana en yakın" ekseni kapanır. İl/ilçe seçimi eşdeğer bir yoldur.
Buna sistemde "ağırlık yeniden dağıtımı" denir.
Reklam ile organik listenin ayrılması
Diyelim ki bir salon öne çıkmak için ödeme yaptı ve aynı salon zaten organik listede de üst sıralarda.
Salon reklam bloğunda gösterilir ve organik listeden düşülür; aynı salonu iki kez görmezsin.
Reklam bloğu en fazla üç slotludur ve yalnız ilk sayfada çıkar. Reklamın kapsamı da zorunludur: ülke geneli reklam her aramada, il reklamı yalnız o ilde, ilçe reklamı yalnız o ilçede görünür. Kapsamsız reklam, İstanbul'daki bir sporcuya Van'daki salonu göstermek olurdu — parayı harcayan salon da bundan zarar görür. Gösterim ve tıklama ayrı ayrı sayılır çünkü gösterim tek başına ilgi ölçmez.
İkinci sayfaya geçtiğinde reklam bloğu kaybolur; oradan sonrası tamamen organiktir.
Buna sistemde "kapsamlı öne çıkarma" (scoped promotion) denir.
Anlık doluluk okuma anında türetilir, sayaçta tutulmaz
Diyelim ki salona QR ile giriş yaptın, akşam antrenmanı bitirdin ve çıkışta QR okutmayı unuttun.
Senin kaydın dört saat sonra "içeride" sayılmaz ve doluluk kendiliğinden doğruya döner.
"Şu an içeride N kişi" bir sayaç kolonunda tutulsaydı, çıkışı unutan her kişi sayacı kalıcı olarak şişirirdi ve sayı bir daha düzelmezdi. Türetince açık kalmış eski kayıtlar zaman sınırının dışında kalır ve temizlik işi aksasa bile sayı doğrulanır. Sayım da benzersiz kişi üzerinden yapılır: bir kişi için yarış durumunda iki açık kayıt oluşsa bile sayı bir kişi artar. Salon kapalıysa doluluk hiç gösterilmez — kapalı salonda "0 kişi" yazmak "boş, hemen git" mesajı verir ve yanlıştır.
Doluluk yüzdesi antrenman saatini seçmek için kullanılabilir bir sinyaldir, kesin bir kişi sayısı değildir.
Buna veri dünyasında "okuma anında türetme" (derive on read) denir.
QR girişinin konum kapısı
Diyelim ki biri salonun QR kodunu fotoğrafladı ve evinden okutmayı denedi.
Sunucu mesafeyi ölçer ve 250 metrenin dışındaki girişi reddeder.
Doluluk sayısının bir anlamı olması için "içeride" olmanın gerçekten içeride olmak demesi gerekir. Eşik sıfır seçilemezdi: şehir içi konum sapması 50-100 metre bandındadır ve sıfıra yakın bir eşik gerçekten salonda olan kişiyi de reddederdi. Konumun zorunlu olması aynı zamanda doluluk verisinin kaynağıdır — keşif listesindeki yüzdeler bu girişlerden doğar.
Doluluk gösteren bir kartın arkasında gerçekten salonda bulunmuş kişiler vardır; sayı bir tahmin motoru değildir.
Buna sistemde "konum kapılı giriş" (geofenced check-in) denir.
Aday havuzunun tavanı ve sayfalama
Diyelim ki filtresiz bir arama yaptın ve bölgede binlerce salon var.
Sunucu en fazla 500 adayı belleğe alır, puanlar, sıralar ve sana sayfa sayfa verir.
Üç bileşenli puanı veritabanı sorgusunun içine yazmak okunmaz bir ifade üretirdi; bu yüzden sıralama bellekte yapılır. Bellekte yapılan bir işin tavanı olmak zorundadır — yoksa kötü niyetli ya da filtresiz tek bir istek sunucuyu boğar. Arayüz zaten ya konum ya il/ilçe seçtirdiği için aday kümesi pratikte küçüktür; tavan bir sınır değil, savunmadır. Sayfa başına en fazla 50 sonuç döner.
Çok geniş bir aramada listenin sonuna kadar inmek yerine yarıçapı ya da ilçeyi daraltmak daha isabetli sonuç verir.
Buna sistemde "aday tavanı" (candidate cap) denir.
Salon sayfasında hangi alanlar dışarı çıkar
Diyelim ki bir salon kartına bastın ve halka açık salon sayfasına geldin: fotoğraflar, paketler, kampanyalar, çalışma saatleri, adres, telefon.
Halka açık sayfa ayrı bir serviste durur ve yalnız yayınlanabilir alanları taşır.
Salon sahibinin panelde gördüğü görünüm taslak alanları da içerir. İkisi aynı dosyada olsaydı bir gün biri yanlış alanı listeye ekler ve yayınlanmamış vitrin dışarı sızardı. Ayrım dosya düzeyinde tutulur. Sahibinin telefonu bilerek dışarı verilir — sporcunun arayabilmesi gerekir — ama e-posta ve hesap bilgileri hiçbir koşulda verilmez. Sayfa yalnız yayındaki salonu döndürür; incelemedeki bir vitrin adresi bilinse bile açılmaz.
Salon sayfasında gördüğün her alan salonun yayınlamayı seçtiği alandır; eksik gördüğün bir bilgi gizlenmiş değil, girilmemiştir.
Buna sistemde "yayın yüzeyi ayrımı" denir.
Açılış sırasının kaynağı
Diyelim ki beş kapalı alan var — sporcu mağazası, beslenme sepeti, antrenör, diyetisyen, GymSphere — ve hangisinin önce açılacağı sorusu masada.
Sıra tahminle değil, alan ve ülke kırılımlı talep sayımıyla kurulur.
Beş alan için beş ayrı kayıt tablosu olsaydı "en çok istenen hangisi" sorusu cevaplanamazdı: farklı şekildeki iki tabloyu karşılaştırmak, iki farklı birimi toplamaya çalışmaktır. Tek tablo, tek şekil, tek cinsten sayı. Ülke ayrı bir kırılımdır çünkü açılış sırası Türkiye ve Avrupa'da farklı çıkabilir; tek bir toplam sayı iki pazarı da yanlış temsil eder.
Oyun bir alan seçimine değil, o alanın hangi pazarda önce açılacağına da işlenir.
Buna sistemde "alan × ülke talep özeti" denir.
Verin ne işe yarar 8
Konum izni (yalnız arama anında)
Girersen Salonlar sana en yakından sıralanır, kartta mesafe yazar ve yarıçap filtresi çalışır. Konum sunucuda saklanmaz — yalnız o istek boyunca mesafe hesaplamak için kullanılır ve cevapla birlikte unutulur; web tarafında tarayıcıda da yalnız sekme kapanana kadar tutulur.
Girmezsen Mesafe ekseni kapanır: kartlarda mesafe yazmaz, sıralama kalite ve tazelik üzerinden kurulur. İl ve ilçe seçerek arama yapmaya devam edebilirsin; bu eşdeğer bir yoldur, kısıtlı bir mod değildir.
Olanak filtresi (havuz, sauna, otopark, kadınlara özel saat…)
Girersen Liste yalnız seçtiğin olanakların HEPSİNİ taşıyan salonları gösterir; iki olanak seçersen ikisini birden sunanlar kalır.
Girmezsen Filtre uygulanmaz ve bölgedeki tüm yayındaki salonlar listede kalır. Aradığın olanağı kartın çiplerinden tek tek okumak zorunda kalırsın.
Telefon numarası (yalnız "İlgileniyorum" adımında)
Girersen Salon seni arayabilir. Numara profilinden ön-doldurulur ama talebe kopyalanır: profilini sonra değiştirsen bile salonun elindeki numara değişmez, yani yanlış kişiyi aramaz.
Girmezsen Talep hiç oluşmaz — sunucu 10 karakterden kısa ya da 20 karakterden uzun numarayı reddeder. Telefonsuz bir talep salona hiçbir işe yaramaz: "ilgilenen var ama ulaşamıyorsun" demek olurdu.
Rıza kutusu (numaranın salona aktarılması)
Girersen O an ekranda gösterilen rıza metninin aynısı kayda yazılır ve talep açılır. Metin ileride değişse bile senin kaydın kendi metnini taşır.
Girmezsen Kayıt açılmaz. Kutu işaretlenmeden gelen istek sunucuda reddedilir — yalnız arayüze güvenmek bu konuda savunulabilir değildir. Rıza metni boş ya da 20 karakterden kısa geldiğinde de kayıt açılmaz.
Salonun kapasitesi (işletme girer, sen değil)
Girersen Kartta doluluk yüzdesi ve seviyesi görünür; hangi saatte gitmen gerektiğine bakarak karar verebilirsin.
Girmezsen Kart doluluk hiç göstermez. Uydurma bir payda ile üretilen yüzde doğru görünen yanlış bir sayı olurdu ve sen ona bakarak salona giderdin.
Salonun çalışma saatleri (işletme girer)
Girersen Kart "Şu an açık" der, salon sayfasında haftalık saat tablosu ve kapanış saati görünür. "Şu an açık" filtresi de bu veriden çalışır.
Girmezsen Kart açıklık göstermez ve "Şu an açık" filtresinde salon listeden düşer. Doluluk da gösterilmez, çünkü salonun açık olup olmadığı bilinmeden doluluk anlamsızdır.
Hesabındaki ülke bilgisi (oy için)
Girersen Oyun alan ve ülke kırılımına işlenir; açılış planı iki pazarı ayrı görür.
Girmezsen Oy kaydı hiç yazılmaz. Ülkesi çözülemeyen satırlar "bilinmeyen" kovasında birikir ve o kova büyüdükçe sıralama güvenilmez olur — bu yüzden eksik kayıt açmak yerine hiç açılmaz.
Salonun vitrin doluluğu (fotoğraf, paket, olanak, saat, tanıtım metni)
Girersen Salon organik sıralamanın kalite bileşeninden puan alır ve daha üstte görünür. Fotoğraf bu bileşenin en ağır parçasıdır.
Girmezsen Kalite puanı düşer ve salon aynı mesafedeki rakiplerinin altına iner. Bu puan "iyi salon" iddiası değildir; "kendini iyi anlatan salon" ölçüsüdür — elde bulunan dürüst sinyal budur.