6 dk

Fiyat Deneyleri için Bir Web Uygulaması Nasıl Kurulur

Fiyat deneylerini yönetmek için varyantlar, trafik bölmeleri, atama, metrikler, panolar ve güvenli dağıtım kontrolleri içeren bir web uygulaması tasarlayın ve dağıtın.

Fiyat Deneyleri için Bir Web Uygulaması Nasıl Kurulur

Bir Fiyat Deneyi Yöneticisi Ne Yapmalı

Fiyat deneyleri, müşterinin farklı gruplarına farklı fiyatlar (veya paketler) gösterip dönüşüm, yükseltmeler, müşteri kaybı, ziyaret başına gelir ve benzeri neyin değiştiğini ölçtüğünüz yapılandırılmış testlerdir. Bu, A/B testinin fiyat versiyonudur ama ekstra risk taşır: bir hata müşterileri şaşırtabilir, destek talepleri yaratabilir veya iç politikalara aykırı olabilir.

Bir fiyat deneyi yöneticisi, bu testlerin kontrol altında, gözlemlenebilir ve geri alınabilir kalmasını sağlayan sistemdir.

Bu uygulamanın çözmesi gereken problemler

Kontrol: Ekiplerin neyin test edildiğini, nerede ve kimler için tanımlayabileceği tek bir yer gerekir. “Fiyatı değiştirdik” bir plan değildir—bir deneyin net bir hipotezi, tarihler, hedefleme kuralları ve bir kill switch'i olmalıdır.

Takip: Tutarlı tanımlayıcılar (deney anahtarı, varyant anahtarı, atama zaman damgası) olmadan analiz tahmine dönüşür. Yönetici, her maruz kalma ve satın alma olayının doğru teste atfedilmesini sağlamalıdır.

Tutarlılık: Müşteriler fiyat sayfasında bir fiyat, ödeme sırasında farklı bir fiyat görmemelidir. Yönetici, varyantların yüzeyler arasında nasıl uygulandığını koordine ederek deneyimi tutarlı kılmalıdır.

Güvenlik: Fiyat hataları maliyetli olabilir. Trafik limitleri, uygunluk kuralları (ör. sadece yeni müşteriler), onay adımları ve denetlenebilirlik gibi güvenlik bariyerlerine ihtiyaç vardır.

Kim kullanır

  • Ürün: deneyleri planlamak, başarı metriklerini tanımlamak ve neyin yayına alınacağına karar vermek için.
  • Büyüme/Pazarlama: fiyata bağlı teklif ve mesajları yinelemek için.
  • Finans: gelir kurallarını, indirim politikalarını ve raporlama gereksinimlerini uygulamak için.
  • Destek: bir müşterinin ne gördüğünü anlamak ve anlaşmazlıkları hızlı çözmek için.
  • Mühendislik: fiyat değişikliklerini güvenli ve öngörülebilir şekilde entegre etmek için.

Ne inşa ediyoruz (ve ne inşa etmiyoruz)

Bu yazı, deneyleri oluşturma, varyant atama, olay toplama ve sonuç raporlama işlevlerine sahip bir dahili web uygulaması üzerine odaklanır.

Bu, tam bir fiyat motoru değildir (vergi hesaplama, faturalama, çoklu para birimi katalogları, proration vb.). Bunun yerine, fiyat testlerini düzenli olarak çalıştırılabilir kılan kontrol paneli ve izleme katmanıdır.

Kapsam, Gereksinimler ve Non-Goal'lar

Bir fiyat deneyi yöneticisi, ne yapacağı ve ne yapmayacağı açık olmadıkça işe yaramaz. Sıkı kapsam, ürünü işletmeyi kolay ve gerçek gelir söz konusu olduğunda gönderimi daha güvenli kılar.

Minimum gereksinimler (olmazsa olmaz yetenekler)

En azından, teknik olmayan bir operatörün bir deneyi baştan sona yürütmesine izin veren bir web uygulaması olmalıdır:

  • Bir ad, hipotez, hedef ürün(ler), hedef segment(ler) ve planlanan süre ile deneyler oluşturma.
  • Varyantları tanımlama (ör. “Kontrol: $29”, “Tedavi: $35”), para birimi, faturalama dönemi ve uygunluk kuralları dahil.
  • Bir deneyi başlat / duraklat / durdurma; net durumlar ve etkili zaman damgaları ile.
  • Temel düzeyde sonuçları görüntüleme: dönüşüm, ziyaret başına gelir, ortalama sipariş değeri ve güven/ belirsizlik göstergeleri.

Eğer başka hiçbir şey yapmayacaksanız, bunları iyi yapın—temiz varsayılanlar ve güvenlik bariyerleriyle.

Desteklenen deney türleri (kasıtlı tutun)

Hangi deney formatlarını destekleyeceğinize erken karar verin ki UI, veri modeli ve atama mantığı tutarlı kalsın:

  • A/B testleri (bir kontrol vs bir tedavi) birincil yol olarak.
  • Multivariate / çok kollu testler (birden fazla fiyat noktası) daha fazla seçeneğe ihtiyaç duyan ekipler için.
  • Holdout grupları (ör. %5 temel fiyatı görür) uzun vadeli veya sistem çapı etkileri ölçmek için.
  • Kademeli dağıtım (trafik zaman içinde artırma) öğrenirken riski azaltmak için.

Non-goals (açıkça inşa etmeyeceğiniz şeyler)

Kapsam sürüklenmesini önlemek için açık olun:

  • Bir faturalama sistemi ikamesi değil (faturalama, vergiler, proration, iadeler).
  • Tam bir BI platformu değil (serbest veri keşfi, özel SQL, veri ambarı modelleme).
  • Karmaşık ML optimizasyonu değil (dinamik fiyat motorları, reinforcement learning, otomatik ayarlama).

Başarı kriterleri

Başarıyı sadece istatistiksel değil, operasyonel terimlerle tanımlayın:

  • Karar-almaya hazır içgörüler: bir ürün yöneticisi “yayınla / geri al / yinele” kararını güvenle verebilmeli.
  • Düşük operasyonel risk: güvenli varsayılanlar, kolay geri alma ve kontrollü maruz kalma.
  • Denetlenebilirlik: kim neyi, ne zaman ve neden değiştirdi—finans ve uyumluluk incelemeleri için uygun.

Veri Modeli: Deneyler, Varyantlar ve Atamalar

Bir fiyat deneyi uygulaması veri modeline bağlıdır. Bir müşterinin ne gördüğünü ve ne zaman gördüğünü güvenilir şekilde yanıtlayamıyorsanız, metrikleriniz gürültülü olur ve ekip güvenini kaybeder.

Modellemeniz gereken ana varlıklar

Fiyata nasıl bakıldığını yansıtan küçük bir çekirdek nesne seti ile başlayın:

  • Ürün: satılan şey (ör. “Analytics Suite”).
  • Plan: paketleme seviyesi (ör. Starter, Pro, Enterprise).
  • Fiyat: gerçek tutar ve faturalama kuralları (para birimi, aralık, ülke/KDV kuralları, etkin tarihleri).
  • Müşteri: analiz birimi (hesap, kullanıcı, workspace—birini seçin ve ona bağlı kalın).
  • Segment: yeniden kullanılabilir tanım (ör. “sadece ABD”, “self-serve”, “yeni müşteriler”).
  • Deney: kapsam, hipotez, başlangıç/bitiş ve hedefleme ile konteyner.
  • Varyant: her tedavi (Varyant A = mevcut fiyat, Varyant B = yeni fiyat).
  • Atama: bir müşterinin belirli bir varyanta yerleştirildiği kaydı.
  • Olay: izlenen aksiyonlar (page_view, checkout_started, subscription_created, upgrade).
  • Metrik: hesaplanmış tanım (dönüşüm oranı, ARPA, ziyaret başına gelir, churn).

İleride isteyeceğiniz kimlikler ve zaman alanları

Sistemler arasında stabil kimlikler kullanın (product_id, plan_id, customer_id). Anahtar olarak “güzel isimler” kullanmaktan kaçının—değişirler.

Zaman alanları da aynı derecede önemli:

  • Her şey için created_at.
  • Raporlama pencereleri için deneylerde starts_at / ends_at.
  • Sonucun kabul edildiği zamanı işaretlemek için decision_date (veya decided_at).

Ayrıca Fiyat kayıtlarında effective_from / effective_to düşünün ki herhangi bir zamanda fiyatı yeniden oluşturabilesiniz.

Atıfı mümkün kılan ilişkiler

İlişkileri açıkça tanımlayın:

  • Deney → Varyantlar (bir-den-çoğa).
  • Müşteri → Atamalar (bir-den-çoğa, fakat genellikle bir deney için bir aktif atama ile sınırlı).
  • Olay → Müşteri + Deney + Varyant.

Pratikte, bir Olay customer_id, experiment_id ve variant_id taşımalıdır ya da bu alanlarla birleştirilebilmelidir. Sadece customer_id depolayıp atamayı sonra “bakmaya” bırakırsanız, atamalar değiştiğinde yanlış join riski alırsınız.

Değişmezlik: geçmişi koruyun, üzerine yazmayın

Fiyat deneyleri denetlenebilir bir geçmişe ihtiyaç duyar. Ana kayıtları append-only yapın:

  • Fiyatlar yerinde güncellenmemeli, versiyonlanmalı.
  • Atamalar veri düzeltmek için düzenlenmemeli; bir maruz kalmayı değiştirmek gerekirse eski kaydı kapatıp yenisini oluşturun.
  • Kararlar (kazanan, gerekçe, decision_date) benzer bir testi daha sonra tekrar çalıştırırsanız korunmalıdır.

Bu yaklaşım raporlamanın tutarlı kalmasını sağlar ve denetim günlükleri gibi yönetişim özelliklerini daha kolay hale getirir.

Deney İş Akışı ve Yaşam Döngüsü

Bir fiyat deneyi yöneticisi, herkesin neyin düzenlenebilir, neyin kilitli ve deneye geçildiğinde müşterilere ne olacağı konusunda net olmasını sağlayan bir yaşam döngüsüne ihtiyaç duyar.

Önerilen yaşam döngüsü

Taslak → Zamanlandı → Çalışıyor → Durduruldu → Analiz Edildi → Arşiv

  • Taslak: Deney, varyantlar, hedef kitle ve başarı metrikleri oluşturulur. Müşterilere henüz servis verilmez.
  • Zamanlandı: Bir başlangıç zamanı (ve isteğe bağlı bitiş) ayarlanır. Sistem hazır olmayı doğrular ve paydaşları bilgilendirebilir.
  • Çalışıyor: Atama ve fiyat teslimatı canlıdır. Birçok alan kazara teste müdahale etmemek için kilitlenmelidir.
  • Durduruldu: Deney yeni kullanıcı atamaz; mevcut kullanıcılar nasıl ele alınacağına karar verirsiniz.
  • Analiz Edildi: Sonuçlar nihayete erdirilir, belgelenir ve paylaşılır.
  • Arşiv: Uyumluluk ve gelecekte referans için salt-okunur depolama.

Duruma göre gerekli alanlar ve doğrulama

Riskli lansmanları azaltmak için, deney ilerledikçe gerekli alanları zorunlu kılın:

  • Zamanlanmadan önce: sahip (owner), kapsam (ürünler/bölgeler/planlar), varyantlar ve fiyat noktaları, maruz kalma/trafik bölümü, başlangıç/bitiş zamanları.
  • Çalışmadan önce: hipotez, birincil metrik(ler), güvenlik bariyerleri (ör. churn, iadeler, destek talepleri), minimum örneklem büyüklüğü veya çalışma süresi kuralı, geri alma planı ve takip/olay şeması onayı.
  • Analizden önce: son veri snapshot zamanı, analiz notları ve karar (yayınla/yinele/reddet).

Onay kapıları ve üst geçitler

Fiyatlandırma için Finance ve Legal/Compliance gibi isteğe bağlı kapılar ekleyin. Sadece onaylayıcılar Zamanlandı → Çalışıyor geçişini yapabilsin. Eğer override (acil geri alma) destekleniyorsa, kimin neyi neden ve ne zaman override ettiğini denetim günlüğünde kaydedin.

“Durdur” ne anlama gelir operasyonel olarak

Bir deney Durdurulduğunda, iki açık davranışı tanımlayın:

  1. Atamaları dondur: yeni kullanıcı atamayı durdurun; mevcut kullanıcıları son atandıkları varyanta sabitleyin.
  2. Sunum politikası: ya son görülen fiyatı sunmaya devam et (müşteri yolculuğu için istikrar) ya da baz fiyata geri dön (hızlı geri alma).

Durdurma sırasında bu required bir seçim olsun ki ekip, müşteri etkisini değerlendirmeden testi durdurmasın.

Varyant Atama ve Trafik Bölme

Tam sahiplik sağlayın
Koder.ai ile başlayın, sonra dahili olarak sertleştirmek ve genişletmek için kaynak kodunu dışa aktarın.

Atamayı doğru yapmak güvenilir bir fiyat testi ile karışık gürültü arasındaki farktır. Uygulamanız kimin fiyat alacağını tanımlamayı kolaylaştırmalı ve onların bunu sürekli görmesini sağlamalıdır.

Tutarlı atama ("yapışkan" kural)

Bir müşteri oturumlar, cihazlar (mümkünse) ve sayfa yenilemeleri arasında aynı varyantı görmelidir. Bu, atamanın deterministik olduğu anlamına gelir: aynı atama anahtarı ve deney verildiğinde sonuç her zaman aynı olur.

Yaygın yaklaşımlar:

  • Hash-tabanlı atama: (experiment_id + assignment_key) hash'i hesaplayıp bir varyanta eşleyin.
  • Kaydedilmiş atama: atanan varyantı daha sonra alınmak üzere veritabanına yazın (denetim veya karmaşık override'lar için faydalı).

Birçok ekip varsayılan olarak hash tabanlı atama kullanır ve yalnızca gerektiğinde atamaları kaydeder.

Atama anahtarını seçme

Fiyatlandırma kullanıcı düzeyinde veya hesap düzeyinde olabileceği için uygulamanız birden çok anahtarı desteklemelidir:

  • user_id: giriş güvenilir olduğunda bireysel fiyatlandırma için en iyisi.
  • account_id / org_id: B2B fiyatlandırma için, aynı şirketteki herkes aynı fiyatı görsün diye.
  • anonim cookie/device ID: giriş öncesi için kullanışlı; signup/login sonrası user_id ile birleştirme yolu olmalı.

Bu yükseltme yolu önemlidir: birisi anonim gezinirken sonra hesap oluşturursa, orijinal varyantını koruyup süreklilik sağlamak mı yoksa yeniden atamak mı isteyeceğinize açık bir ayar yapın.

Trafik bölme ve kademeli artışlar

Esnek tahsisatı destekleyin:

  • Basit A/B için %50/%50
  • Risk kontrolü için ağırlıklı bölümler (ör. %90/%10)
  • Tarih/zaman ile kademeli artış planları (ör. %1 → %5 → %25 → %50)

Kademeli artışta atamalar yapışkan kalmalıdır: trafiği artırmak mevcut kullanıcıları karıştırmamalı, sadece yeni kullanıcılar deneye eklenmelidir.

Ele alınması gereken uç durumlar

Aynı anda çalışan testler çakışabilir. Şunlar için güvenlik önlemleri kurun:

  • Karşılıklı hariç gruplar (bir kullanıcı/hesap için sadece bir fiyat deneyi aktif)
  • Öncelik kuralları (aynı müşteriyi hedefleyen iki deney varsa hangisi kazanır?)
  • Hariç tutmalar (dahili personel, test hesapları, bölgeler, planlar, mevcut sözleşmeler)

“Örnek bir kullanıcı/hesap verildiğinde hangi atamanın yapılacağını gösteren” bir “Atama önizleme” ekranı, teknik olmayan ekiplerin lansmandan önce kuralları doğrulamasına yardımcı olur.

Fiyatları Ürüne Güvenli Şekilde Entegre Etme

Yönetişimi baştan dahil edin
Finans ve destek ekiplerinin güvenebileceği roller, denetim kayıtları ve değişiklik geçmişini oluşturun.

Fiyat deneyleri çoğunlukla entegrasyon katmanında başarısız olur—deney mantığı yanlış olduğu için değil, ürünün bir yerde bir fiyat gösterip başka bir yerde başka bir fiyatla tahsil etmesi yüzünden. Web uygulamanız “fiyatın ne olduğu” ve “ürünün bunu nasıl kullandığı” konusunu çok açık yapmalıdır.

Fiyat tanımını fiyat tesliminden ayırın

Fiyat tanımını (varyantın fiyat kuralları, etkin tarihler, para birimi, vergi işlemleri vb.) kaynak olarak ele alın. Fiyat teslimini ise seçilen varyantın fiyatını bir API uç noktası veya SDK aracılığıyla getiren basit bir mekanizma olarak düşünün.

Bu ayrım deney yönetim aracını temiz tutar: teknik olmayan ekipler tanımları düzenlerken mühendisler GET /pricing?sku=... gibi stabil bir teslim sözleşmesini entegre eder.

Fiyatın nerede hesaplanacağına karar verin

İki yaygın desen vardır:

  • Sunucu tarafında checkout'ta (tahsilat için tavsiye edilir): nihai ödenecek tutarı sunucuda hesaplayın, tutarsızlık ve kötü niyetli müdahaleyi önlemek için.
  • Görünüm için istemci tarafı: tahmini fiyat gösterimi için uygundur, ancak satın alma sırasında sunucu hesaplamasıyla doğrulanmalıdır.

Pratik yaklaşım: “istemcide göster, sunucuda doğrula ve hesapla” ve aynı deney atamasını kullanın.

Para birimleri, vergiler ve yuvarlama konusunda katı olun

Varyantlar şu kuralları aynı şekilde takip etmelidir:

  • para birimi seçimi (kullanıcı yerel ayarı vs fatura ülkesine göre)
  • vergi dahil etme (KDV dahil mi, sonradan mı ekleniyor)
  • yuvarlama (ürün başı vs fatura bazında)

Bu kuralları fiyatın yanında saklayın ki her varyant karşılaştırılabilir ve finans için uygun olsun.

Güvenli geri dönüş planları oluşturun

Eğer deney servisi yavaşsa veya kapalıysa, ürününüz güvenli bir varsayılan fiyat döndürmelidir (genellikle mevcut baz fiyat). Zaman aşımı, önbellekleme ve bir “kapalı durumda güvenli” politika tanımlayın ki checkout bozulmasın—ve geri dönüşleri nicelendirmeniz için loglayın.

Metrikler, Olaylar ve Atıf Temelleri

Fiyat deneyleri ölçümle yaşar veya ölür. Web uygulamanız "gönder ve um" yaklaşımını zorlaştırmalı; deney başlatılmadan önce net başarı metrikleri, temiz olaylar ve tutarlı bir atıf yaklaşımı gerektirmelidir.

Birincil metrikleri seçin ("karar metrikleri")

Kazananı karar vermek için bir veya iki metrikle başlayın. Yaygın fiyat seçimleri:

  • Dönüşüm oranı (ör. ziyaretçi → checkout, deneme → ücretli)
  • Ziyaret başına gelir (RPV) (fiyat ve dönüşümü birlikte yakalar)
  • ARPA/ARPU (abonelik katmanları için kullanışlı)
  • Churn / tutundurma (makul bir pencere içinde ölçülebiliyorsa)

Yardımcı bir kural: ekipler testi tartışıyorsa muhtemelen karar metriğini yeterince açık tanımlamamışsınızdır.

Güvenlik bariyerleri ekleyin ("işi bozma")

Güvenlik bariyerleri kısa vadeli gelir iyi görünse bile hasarı yakalar:

  • İade oranı ve chargeback'ler
  • Destek talepleri (faturalama, karışıklık, şikayetler)
  • Ödeme hataları (kart reddi, 3DS sorunları)
  • Deneme→ücretli düşüşü (fiyat değişiklikleri niyeti etkileyebilir)

Uygulamanız eşikleri zorunlu kılabilir (ör. “iade oranı %0.3'ten fazla artmamalı”) ve ihlalleri deney sayfasında vurgulayabilir.

Güvenilir bir olay şeması tanımlayın

En azından takip, her ilgili olayda deney ve varyant için stabil tanımlayıcılar içermelidir.

{
  "event": "purchase_completed",
  "timestamp": "2025-01-15T12:34:56Z",
  "user_id": "u_123",
  "experiment_id": "exp_earlybird_2025_01",
  "variant_id": "v_price_29",
  "currency": "USD",
  "amount": 29.00
}

Bu özellikleri alım sırasında zorunlu yapın, "en iyi çaba" değil. Bir olay experiment_id/variant_id olmadan gelirse, onu “atanamayan” kovaya yönlendirin ve veri kalitesi sorununu işaretleyin.

Atıf pencerelerini seçin (ve geciken sonuçları ele alın)

Fiyat sonuçları çoğunlukla gecikebilir (yenilemeler, yükseltmeler, churn). Şunları tanımlayın:

  • Atıf penceresi: ör. “ilk maruz kalmadan sonraki 7 gün içinde yapılan satın alımları say”
  • Maruz kalma kuralı: ilk maruz kalma vs son maruz kalma (ilk genelde fiyat için daha güvenlidir)
  • Geciken metrikler: ön sonuçları hızlıca gösterin ama pencere kapandığında güncellenen “nihai” durumu saklayın

Bu, ekiplerin bir sonucun ne zaman güvenilir olduğunu anlamasını sağlar ve erken karar verilmesini önler.

Teknik Olmayan Ekipler için UX ve Ekranlar

Kurulumdan dağıtıma geçin
Dahili aracınızı barındırın ve ekip gerçek testlere başladıkça yineleyin.

Bir fiyat deneyi aracı, ürün yöneticileri, pazarlamacılar ve finansin her tıklama için mühendis istemeden kullanabileceği kadar kolay olmalıdır. UI üç soruya hızlı cevap vermeli: Ne çalışıyor? Müşteriler için ne değişecek? Ne oldu ve neden?

Dahil edilmesi gereken temel ekranlar

Deney listesi operasyon panosu gibi olmalı. Göster: ad, durum (Taslak/Zamanlandı/Çalışıyor/Durduruldu/Bitti), başlangıç/bitiş, trafik bölümü, birincil metrik ve sahip. Gösterilen “son güncelleyen” ve zaman damgası güven sağlar.

Deney detay ana merkezdir. Üstte kompakt bir özet (durum, tarihler, kitle, bölüm, birincil metrik) koyun. Altında Varyantlar, Hedefleme, Metrikler, Değişiklik günlüğü ve Sonuçlar gibi sekmeler kullanın.

Varyant düzenleyici basit ve yönlendirici olmalı. Her varyant satırı fiyat (veya fiyat kuralı), para birimi, faturalama dönemi ve düz İngilizce açıklama içermeli (“Yıllık plan: $120 → $108”). Canlı bir varyantı kazara düzenlemeyi zorlaştırmak için onay isteyin.

Sonuç görünümü kararla başlamalı, sadece grafiklerle değil: “Varyant B, ödeme başlangıcı dönüşümünü %2.1 artırdı (%%95 CI …).” Sonra destekleyici kırılımlar ve filtreler verin.

Güven için tasarım

Tutarlı durum rozetleri kullanın ve önemli tarihlerden oluşan bir zaman çizelgesi gösterin. Trafik bölümünü yüzde ve küçük bir bar olarak gösterin. “Kim neyi ne zaman değiştirdi” paneli ekleyin; varyant, hedefleme ve metrik düzenlemelerinin listesi olsun.

Başlatmadan önce doğrulama ve güvenlik bariyerleri

Başlatma iznine izin vermeden önce: en az bir birincil metrik seçilmiş olmalı, geçerli fiyatlara sahip en az iki varyant, tanımlı bir rampa planı (isteğe bağlı ama önerilir) ve bir geri alma/fallback fiyatı. Eksik bir şey varsa eyleme geçirilebilir hatalar gösterin (“Sonuçları etkinleştirmek için bir birincil metrik ekleyin”).

Zaman kazandıran hızlı eylemler

Güvenli, görünür eylemler sağlayın: Pause, Stop, Ramp up (örn. %10 → %25 → %50) ve Duplicate (ayarları yeni bir Taslağa kopyala). Riskli eylemler için etkiyi özetleyen onaylar kullanın (“Duraklatma atamaları dondurur ve maruz kalmayı durdurur”).

İç aracı daha hızlı prototipleme

İş akışlarını (Taslak → Zamanlandı → Çalışıyor) tam bir inşa öncesi doğrulamak istiyorsanız, sohbet tabanlı bir spesifikasyondan dahili web uygulaması çıkarabilen bir vibe-coding platformu gibi Koder.ai size hızlıca çalışan bir React UI ve Go/PostgreSQL arka uç oluşturup daha sonra sertleştirmeniz için yardımcı olabilir. Bu yaklaşım erken prototiplerde özellikle yararlıdır.

SSS

Bir fiyat deneyi yöneticisi nedir ve hangi problemi çözer?

Bu, fiyat testleri için dahili bir kontrol paneli ve takip katmanıdır. Ekiplerin deneyleri (hipotez, hedef kitle, varyantlar) tanımlamasına, tutarlı bir fiyatın tüm yüzeylerde gösterilmesini sağlamasına, atıf-eylem (attribution-ready) olaylarını toplamasına ve denemeyi güvenli bir şekilde başlatma/durdurma yapmasına yardımcı olur.

Kasıtlı olarak tam bir faturalama veya vergi motoru değildir; mevcut fiyatlandırma/faturalama yığını etrafında denemeleri koordine eder.

Bir MVP için en az hangi özellikler olmalı?

Pratik bir MVP şunları içermelidir:

  • Deney + varyant oluşturma (para birimi, faturalama periyodu, uygunluk)
  • Deterministik, yapışkan atama (kullanıcı/kuruluş/cookie)
  • Başlat/durdur/pausa alma ile etkili zaman damgaları ve bir kill switch
  • Temel sonuçlar (dönüşüm, ziyaret başına gelir, ortalama sipariş değeri) belirsizlik/güven göstergeleriyle
  • Güvenlik bariyerleri (trafik limitleri, hariç tutmalar, doğrulama) ve bir denetim kaydı

Bunlar güvenilirse, daha zengin hedefleme ve raporlama üzerine yineleyebilirsiniz.

Doğru atıf için hangi veri modeli varlıkları en önemlidir?

“Bu müşterinin hangi fiyatı, ne zaman gördüğünü” cevaplamaya izin verecek çekirdek nesneleri modelleyin. Genellikle:

  • Deney, Varyant, Atama
  • Müşteri (veya hesap/organizasyon), Segment
  • Fiyat (etkin tarihleriyle versiyonlanmış)
  • Olay (event) — mutlaka experiment_id + variant_id taşımalı, sadece customer_id değil

Anahtar tarihçeye mutable düzenlemeler yapmaktan kaçının: fiyatları versiyonlayın ve atama kayıtlarını üzerine yazmak yerine ekleyin.

Riskleri azaltmak için deney yaşam döngüsü nasıl çalışmalı?

Taslak → Zamanlanmış → Çalışıyor → Durduruldu → Analiz Edildi → Arşiv gibi bir yaşam döngüsü tanımlayın.

Çalışırken riskli alanları (varyantlar, hedefleme, trafik bölümü) kilitleyin ve bir durumdan diğerine geçmeden önce doğrulamaları (metrik seçimi, takip onayı, geri alma planı) zorunlu kılın. Bu, “test ortasında değişiklik”lerin sonucunu güvensiz hale getirmesini ve müşteri tutarsızlığı yaratmasını engeller.

Müşterileri nasıl güvenilir şekilde (yapışkan atama) atarsınız?

Aynı müşterinin oturumlar/cihazlar arasında aynı varyantı görmesi için yapışkan atama kullanın.

Yaygın yaklaşımlar:

  • Hash tabanlı: (experiment_id + assignment_key) hash'ini alıp bir varyant kovasına eşleyin
  • Kaydedilmiş atama: atanmış varyantı daha sonra sorgulamak için veritabanına yazın (denetim/destek durumları için faydalı)

Birçok ekip önce hash yapar, gerektiğinde atamayı kaydeder.

Atama anahtarı olarak user_id, account_id veya anonim cookie'den hangisini seçmeliyim?

Fiyatlandırma deneyleri genellikle bireysel login veya hesap düzeyinde çalışır:

  • org_id/account_id: B2B için (aynı şirketteki herkes aynı fiyatı görür)
  • user_id: Giriş güvenilirse bireysel fiyatlandırma için
  • anonim cookie/device ID: Giriş öncesi gezinme için; signup/login sonrası bir “kimlik yükseltme” yolu belirleyin (orijinal varyantı koruma vs yeniden atama)

Başlangıçta anonimseniz, geçiş kuralını açıkça belirtin.

Bir deneyi durdurduğunuzda mevcut müşterilere ne olur?

“Durdur” iki ayrı kararı gerektirir:

  1. Atamaların dondurulması: yeni kullanıcıların atanmamasını sağlayın; mevcut kullanıcıları son atandıkları varyanta sabitleyin
  2. Sunum politikası: ya son görülen fiyatı sunmaya devam et (müşteri deneyimi için istikrar) ya da baz fiyata geri dön (hızlı geri çekme)

Durdurma sırasında sunum politikasını zorunlu bir seçim haline getirin ki ekipler müşteri etkisini kabul etmeden testi durduramasın.

Müşteri bir fiyatı görüp başka bir fiyatla mı ücretlendirilmemeli, bunu nasıl önlersiniz?

Fiyatı hem gösteren hem de tahsil eden yer aynı varyantı kullanmalı:

  • Deney yöneticisini fiyat tanımı için kaynak olarak kullanın
  • Fiyat sayfası ve ödeme için paylaşılacak sabit bir teslim sözleşmesi (API/SDK) verin
  • Nihai ödenecek tutarı sunucu tarafında hesaplayın (istemci tarafı sadece gösterim için olabilir)

Hizmet yavaşsa/kapanırsa güvenli bir varsayılan (genellikle baz fiyat) tanımlayın ve tüm fallback'leri kaydedin.

Fiyat deneyleri için hangi metrikler ve olaylar takip edilmeli?

Her ilgili olayda experiment_id ve variant_id bulunmasını zorunlu kılan küçük, tutarlı bir olay şeması kullanın.

Genellikle tanımlarsınız:

  • Karar metrikleri (ör. dönüşüm oranı, ziyaret başına gelir)
  • Güvenlik bariyerleri (iade, destek talepleri, ödeme hataları)
  • Atıf penceresi ve maruz kalma kuralı (çoğunlukla “ilk maruz kalma” + 7–14 gün)

Bir olay experiment_id/variant_id olmadan gelirse onu “atanamayan” kovaya yönlendirin ve veri kalitesi sorununu işaretleyin.

İzinler, onaylar ve denetim kayıtları fiyat deneylerine nasıl uyuyor?

Basit bir rol modeli ve eksiksiz bir denetim izi kullanın:

  • Roller: Viewer, Editor, Approver, Admin (isteğe bağlı olarak ürün/ bölge bazında kapsamlı)
  • Varyantlar, hedefleme, trafik bölümleri, başlat/durdur, onaylar için kim/ne/ne zaman ve önce/sonra farklarını içeren denetim kayıtları
  • Hipotez, gerekçe ve karar sonuçları için notlar

Bu, kazara başlatmaları azaltır ve finans/uyumluluk incelemelerini ile sonrasında yapılan retrospektifleri kolaylaştırır.

Related posts