Gösterge panelini değil, raporları okuyun
Ajanın neyi ve nereden okuyacağı baştan belirlenir: kampanya ve reklam grubu başına harcama, atfedilen dönüşümler, edinme başına maliyet, bütçe nedeniyle kaybedilen gösterim payı ile konum nedeniyle kaybedilen gösterim payı — farklı kararlar gerektiren iki farklı sayı. Okuma API aracılığıyla, ayrı bir hizmet hesabıyla yapılır, arayüzdeki ekran görüntüleriyle değil. Okuma katmanı önce teslim edilir ve tek başına çalıştırılır, hesapta hiçbir yazma izni olmadan.
Değişikliği, nedeni yanına yazılı olarak önerin
Bir öneri bir sayı değildir. Değişecek alan, eski değer, yeni değer, kararın alındığı veri aralığı ve nedenidir. Öneriler, bir insanın okuyacağı bir raporda, “X kampanyasının günlük bütçesini A’dan B’ye yükseltirdim, çünkü son N günde M% oranında bütçe nedeniyle sınırlanmıştı, kabul edilen eşiğin altında bir edinme başına maliyetle” biçiminde toplanır. Neden yazılamıyorsa, öneri yapılmaz.
Üç eşik: tek başına ne yapar, ne zaman bir insan ister, neyi asla yapmaz
Her alan, bir şey başlamadan önce yazılmış üç kategoriden birine girer. Tek başına: kabul edilen bir yüzde altındaki değişiklikler, günlük bir tavan içinde, açık olarak işaretlenmiş kampanyalarda. Onayla: tavanın aşılması, herhangi bir yeni kampanya, herhangi bir yeni kitle, herhangi bir teklif değişikliği. Asla: onun başlatmadığı bir kampanyayı durdurmak, ödeme yöntemini değiştirmek, faturalandırma hesaplarına dokunmak. Liste sözleşmede yazılır, kodda değil, ve kod onu okur.
Dry-run varsayılan olarak açık — bizimle gelen kalıp
999.md’deki ücretli tanıtım motorumuzda, paranın harcanıp harcanmayacağını belirleyen işlev alışılmışın tersine yazılmıştır: ortam değişkeni tam olarak `false` değerine sahip değilse dry-run etkindir. Ayarlanmamış, boş, `true`, yanlış yazılmış — hepsi dry-run’ı açık tutar. Bu bilinçli bir seçimdir: bir yapılandırma hatası vanayı açamaz, yalnızca kapalı tutabilir. Aynı işlev iki bağımsız yerde vardır, tanıtım motoru ve yeniden yayınlama yürütücüsü.
Maliyet oluşturan her eylem bir kayda yazılır
Tanıtım sisteminde her yürütme, reklamı, kullanıcıyı, eylem türünü, leu cinsinden tutarı, başarılı olup olmadığını, sağlayıcının ham yanıtını ve `dry_run` işaretini içeren `agent_costs` tablosuna girer. Yazma işlemi programlama güncellemesiyle aynı işlem içinde yapılır, bu yüzden iz bırakmayan bir harcama ya da harcamasız bir iz olamaz. Dry-run olduğunda kaydedilen tutar sıfırdır, ama satır vardır — ne olacağını tam olarak görürsünüz.
Gerçek dönüşüm sinyali — zaten var olan parça
Birisi ücretli bir tıklamadan gelip bir talep gönderdiğinde, sinyal Google’a ancak talep müşterinin sistemine girdikten sonra gider, düğmeye basıldığında değil. Entegrasyon `https://datamanager.googleapis.com/v1/events:ingest` kullanır, tıklama kimliğini, zamanı, değeri ve para birimini, ayrıca SHA-256 ile geçirilmiş kullanıcı kimliklerini gönderir — küçük harfe çevrilmiş normalleştirilmiş adres, uluslararası formata getirilmiş telefon. Tıklama kimliği olmadan gönderim kendi kendine durur ve atlandı olarak işaretlenir, çünkü atfedilebilir olmazdı.
Onay, etiketlerden önce konur, sonra değil
Consent Mode v2, herhangi bir Google betiği başlamadan önce tüm pazarlama ve analiz amaçları için `denied` olarak başlatılır, 500 ms’lik bir güncelleme bekleme penceresiyle. Kişinin banner ile etkileşimi üzerine, sayfa yeniden yüklenmeden yalnızca `granted` durumuna geçilir. İşlevsel ve güvenlik depolaması açık kalır, çünkü bunlar olmadan sayfa çalışmaz. Bir kez yazılır ve her ziyarette çalışır.
İki seçenek arasındaki karar, izlenime göre değil, kanıta göre verilir
Kurduğumuz A/B test aracı, her varyantı uniform prior ile Beta-Binomial olarak modeller ve 10.000 Monte Carlo örneklemesiyle hangisinin daha iyi olma olasılığını tahmin eder. Varyant başına 100 gösterim ve 0,95 olasılığın altında kazanan ilan etmez. 168 saat içinde karar verilmezse, destekleyemeyeceği bir kazanan adı vermek yerine deneyi kapatır ve süresinin dolduğunu söyler.
Atlanamayan bir devre kesici
İç sistemimizdeki kampanya orkestratörü, her şeyden önce bir ortam değişkenini kontrol eder. Eğer ayarlanmışsa, başlamayı reddeder — `--force` yoktur, bunu aşacak bir argüman yoktur. Bu, gerçek bir çift gönderim olayından sonra eklendi, dekor olarak değil. Aynı desen burada da uygulanır: tüm yazmaları durduran, okumayı ve raporlamayı sürdürmeye bırakan hesap düzeyinde bir anahtar.