Toplama anahtarları nedir, Attribution Reporting API'de nasıl kullanılır ve hedefleri anahtarlara nasıl dönüştürebilirsiniz?
Çeşitli ürün kategorileri için birden fazla yerde kampanya yayınlayan bir reklam teknolojisi şirketi olarak reklamverenlerin aşağıdaki soruları yanıtlamasına yardımcı olmak istiyorsunuz:
- Her coğrafi bölgedeki kampanyalarımdan her biri her ürün kategorisinden kaç satın alma işlemi sağladı?
- Her coğrafi bölgedeki kampanyalarımın her biri, her ürün kategorisi için ne kadar gelir elde etti?
Birçok reklam teknolojisi şirketi, reklamverenleri çeşitli dönüşüm türlerini yapılandırmaya teşvik etse de satın alma işlemleri gibi en önemli dönüşümlere odaklanmak, bu önemli olaylarla ilgili özet sonuçların ayrıntılı ve doğru olmasını sağlamak için iyi bir yöntemdir.
Bunu yapmak için veriler toplanmadan önce hangi soruları yanıtlamak istediğinizi düşünmeniz gerekir.
Boyutlar, anahtarlar ve değerler
Bu soruları yanıtlamak için boyutlara, anahtarlara ve değerlere göz atalım.
Boyutlar
Kampanyalarınızın burada açıklandığı şekilde nasıl gelir elde ettiğini anlamak için aşağıdaki boyutları izlemeniz gerekir:
- Reklam kampanyası kimliği: Belirli kampanyanın tanımlayıcısı.
- Coğrafya kimliği: Reklamın sunulduğu coğrafi bölge.
- Ürün kategorisi: Tanımladığınız ürün türü.
Kampanya Kimliği ve Coğrafi Konum Kimliği boyutları reklam sunulduğunda (reklam sunma süresi) bilinse de kullanıcı bir dönüşümü tamamladığında Ürün kategorisi, tetikleyici etkinliğinden (dönüşüm zamanı) bilinir.
Bu örnek için izlemek istediğiniz boyutlar aşağıdaki resimde gösterildiği gibidir:
Toplama anahtarı (paket) nedir?
Toplama anahtarı ve paket terimleri aynı anlama gelir. Toplama anahtarı, raporları yapılandırmak için kullanılan tarayıcı API'lerinde kullanılır. Paket terimi, toplanabilir ve özet raporlarda ve toplama hizmeti API'lerinde kullanılır.
Toplama anahtarı, izlenen boyutların değerlerini temsil eden bir veri parçasıdır. Veriler daha sonra her toplama anahtarında toplanır.
Örneğin, Ürün kategorisi, Coğrafya Kimliği ve Kampanya Kimliği boyutlarını izlediğinizi varsayalım.
Coğrafya Kimliği 7'de bulunan bir kullanıcı, Kampanya Kimliği 12'nin reklamını gördüğünde ve daha sonra Ürün kategorisi 25'te bir ürün satın alarak dönüşüm gerçekleştirdiğinde, aşağıdaki resimdekine benzeyen bir toplama anahtarı ayarlayabilirsiniz:
Daha sonra bir toplama anahtarının pratikte tam olarak böyle görünmediğini göreceksiniz. Şimdi, anahtarda yer alan bilgilere odaklanalım.
Toplanabilir değerler nedir?
Ana hatlarıyla belirttiğimiz boyutlarla ilgili sorularınızı yanıtlamak için şunları bilmeniz gerekir:
- Satın alma sayısı (satın alma sayısı). Bu sayı, toplanıp özet raporunda kullanılabilir hâle getirildikten sonra toplam satın alma sayısı (özet değer) olur.
- Her satın alma işleminin geliri (satın alma değeri). Bu sayı toplanıp bir özet raporunda kullanılabilir hâle getirildikten sonra toplam gelir (özet değer) olur.
Bunların her biri (bir dönüşüm için satın alma sayısı ve bir dönüşüm için satın alma değeri) toplanabilir bir değerdir. Toplanabilir değerleri, ölçüm hedeflerinizin değerleri olarak düşünebilirsiniz.
Soru | Toplanabilir değer = Ölçüm hedefi |
---|---|
Kaç satın alma… | Satın alma sayısı |
Ne kadar gelir... | Satın alma değeri |
Coğrafya Kimliği 7'de bulunan bir kullanıcı, Kampanya Kimliği 12'nin reklamını gördüğünde ve daha sonra Ürün kategorisi 25'teki bir ürünü 120 ABD doları karşılığında (para biriminizin ABD doları olduğu varsayıldığında) satın alarak dönüşüm gerçekleştirdiğinde, aşağıdaki gibi bir toplama anahtarı ve toplanabilir değerler ayarlayabilirsiniz:
Toplanabilir değerler, özet raporlarda özet değerler biçiminde toplu analizler oluşturmak için birçok kullanıcıda anahtar başına toplanır.
Toplanabilir değerler toplanarak ölçüm hedefleriniz için toplu analizler oluşturulur.
Bu şemada şifre çözme işleminin atlandığını ve gürültü uygulanmayan basitleştirilmiş bir örneğin gösterildiğini unutmayın. Sonraki bölümde, bu örneği gürültü ile ana hatlarıyla açıklayacağız.
Anahtarlar ve değerlerden raporlara
Şimdi toplanabilir anahtarların ve değerlerin raporlarla ilişkisini inceleyelim.
Toplanabilir raporlar
Kullanıcı bir reklamı tıklayıp veya görüntüledikten sonra dönüşüm gerçekleştirdiğinde tarayıcıya bir {toplama anahtarı, aggregatable value} çiftini depolaması için talimat verirsiniz.
Örneğimizde, bir kullanıcı bir reklamı tıkladığında veya görüntülediğinde ve daha sonra dönüşüm gerçekleştirdiğinde tarayıcıdan iki katkı (ölçüm hedefi başına bir) oluşturması için talimat verirsiniz.
Daha sonra, {toplama anahtarı, aggregatable değer} toplanabilir raporun tam olarak bu şekilde görünmediğini göreceksiniz. Şimdi, raporda yer alan bilgilere odaklanalım.
Tarayıcıya iki katkı oluşturmasını talimat verdiğinizde tarayıcı, dönüşümü önceki bir görüntüleme veya tıklamayla eşleştirebiliyorsa birleştirilebilir bir rapor oluşturur.
Toplanabilir raporlar şunları içerir:
- Yapılandırdığınız katkılar.
- Tıklama veya görüntüleme etkinliği ve dönüşüm etkinliğiyle ilgili meta veriler: Dönüşümün gerçekleştiği site ve daha fazlası. Birleştirilebilir rapordaki tüm alanları görün.
Toplanabilir raporlar JSON biçimindedir ve diğer özelliklerin yanı sıra nihai özet raporunda veri girişi olarak kullanılacak bir yük alanı içerir.
Yük, her biri bir {toplama anahtarı, toplanabilir değer} çifti olan katkıların bir listesini içerir:
bucket
: Bayt dizesi olarak kodlanmış toplama anahtarı.value
: Söz konusu ölçüm hedefi için bayt dizesi olarak kodlanmış toplanabilir değer.
Aşağıda bununla ilgili bir örnek verilmiştir:
{
"data": [
{
"bucket": "111001001",
"value": "11111010000",
}
],
"operation": "histogram"
}
Pratikte, birleştirilebilir raporlar, paketlerin ve değerlerin önceki örnekten farklı görünmesini sağlayacak şekilde kodlanır (yani bir paket \u0000\u0000\x80\u0000
gibi görünebilir). Paket ve değer'in ikisi de bayt dizeleridir.
Özet raporlar
Toplanabilir raporlar, birçok tarayıcı ve cihaz (kullanıcı) genelinde aşağıdaki gibi toplanır:
- Bir reklam teknolojisi, belirli bir anahtar grubu ve birçok farklı tarayıcıdan (kullanıcı) gelen belirli bir toplu rapor grubu için özet raporlar ister.
- Toplanabilir raporların şifresi toplama hizmeti tarafından çözülür.
- Her anahtar için, birleştirilebilir raporlardaki birleştirilebilir değerler toplanır.
- Özet değere gürültü eklenir.
Sonuç, bir {toplama anahtarı, özet değer} çiftleri grubu içeren bir özet rapordur.
Özet rapor, JSON sözlük stilinde bir anahtar/değer çifti grubu içerir. Her çift aşağıdakileri içerir:
bucket
: Bayt dizesi olarak kodlanmış toplama anahtarı.value
: Belirli bir ölçüm hedefi için ondalık olarak gösterilen özet değer. Mevcut tüm birleştirilebilir raporlardan toplanır ve ek bir gürültü düzeyi eklenir.
Örnek:
[
{"bucket": "111001001", "value": "2558500"},
{"bucket": "111101001", "value": "3256211"},
{...}
]
Pratikte özet raporlar, paketlerin ve değerlerin örnekte belirtilenden farklı görünmesini sağlayacak şekilde kodlanır (yani bir paket \u0000\u0000\x80\u0000
gibi görünebilir). Hem paket hem de değer bayt dizesidir.
Uygulamada toplama anahtarları
Toplama anahtarları (paketler), bir reklam teknolojisi şirketi tarafından genellikle iki adımda tanımlanır: bir reklamın tıklanması veya görüntülenmesi ve kullanıcının dönüşüm gerçekleştirmesi.
Anahtar yapısı
Bir anahtara kodlanmış boyut grubunu belirtmek için anahtar yapısı terimini kullanacağız.
Örneğin, kampanya kimliği × coğrafi kimlik × ürün kategorisi temel bir yapıdır.
Anahtar türleri
Toplanabilir değerler, birden çok kullanıcı/tarayıcıda belirli bir anahtar için toplanır. Ancak toplu olarak toplanabilen değerlerin, satın alma değeri veya satın alma sayısı gibi farklı ölçüm hedeflerini izleyebileceğini gördük. Toplama hizmetinin, aynı türde toplanabilir değerleri topladığından emin olmak istiyorsunuz.
Bunu yapmak için her anahtarda, özet değerin neyi temsil ettiğini (bu anahtarın atıfta bulunduğu ölçüm hedefini) belirten bir veri parçası kodlayın. Bunu yapmanın bir yolu, anahtarınız için ölçüm hedefi türünü temsil eden ek bir boyut oluşturmaktır.
Önceki örneğimizi kullanırsak, bu ölçüm hedefi türünün iki farklı olası değeri olur:
- Satın alma sayısı, ilk ölçüm hedefi türüdür.
- Satın alma değeri, ikinci ölçüm hedefi türüdür.
n ölçüm hedefiniz varsa ölçüm hedefi türü n farklı değer türüne sahip olur.
Bir anahtarın boyutlarını bir metrik olarak düşünebilirsiniz. Örneğin, "coğrafya başına kampanya başına belirli bir ürünün satın alma sayısı".
Anahtar boyutu, boyut boyutu
Maksimum anahtar boyutu bit cinsinden tanımlanır. Bu, tam anahtarı oluşturmak için ikili sistemdeki sıfır ve bir sayılarının toplamıdır. API, 128 bit anahtar uzunluğuna izin verir.
Bu boyut, çok ayrıntılı anahtarlara izin verir ancak daha ayrıntılı anahtarların, daha gürültülü değerlere yol açma olasılığı daha yüksektir. Gürültü hakkında daha fazla bilgiyi Gürültüyü anlama başlıklı makalede bulabilirsiniz.
Daha önce de belirtildiği gibi boyutlar, toplama anahtarında kodlanır. Her boyutun belirli bir kardinalitesi vardır. Bu, boyutun alabileceği farklı değerlerin sayısıdır. Her boyutun, kardinalitesine bağlı olarak belirli sayıda bitle temsil edilmesi gerekir. n bit ile 2n farklı seçenek ifade edilebilir.
Örneğin, dünyada yaklaşık 200 ülke bulunduğundan Ülke boyutunun kardinalitesi 200 olabilir. Bu boyutu kodlamak için kaç bit gerekir?
7 bit yalnızca 27 = 128 farklı seçenek depolayabilir. Bu, gereken 200'den azdır.
8 bit, 28 = 256 farklı seçenek depolar. Bu, gerekli olan 200'den fazladır. Bu nedenle, bu boyutu kodlamak için n=8 bit kullanabilirsiniz.
Anahtar kodlama
Tarayıcıda anahtar ayarladığınızda, anahtarlar onaltılık olarak kodlanmalıdır. Özet raporlarda anahtarlar ikili programda görünür (ve paketler olarak adlandırılır).
Tam anahtar için iki anahtar parçası ayarlama
Aşağıdaki boyutları izlemek için bir anahtar kullandığınızı varsayalım:
- Kampanya Kimliği
- Coğrafya kimliği
- Ürün kategorisi
Kampanya kimliği ve Coğrafi Bölge kimliği boyutları reklam sunulduğunda (reklam sunma zamanı) bilinirken ürün kategorisi, kullanıcı bir dönüşümü tamamladığında (dönüşüm zamanı) bir tetikleyici etkinliğinden bilinir.
Pratikte bu, anahtarı iki adımda ayarlayacağınız anlamına gelir:
- Tıklama veya görüntüleme sırasında anahtarın bir parçasını (Kampanya Kimliği × Coğrafi Kimliği) ayarlarsınız.
- Anahtarın ikinci bölümünü (ürün kategorisi) dönüşüm sırasında ayarlarsınız.
Anahtarın bu farklı bölümlerine anahtar parçaları denir.
Anahtar, anahtar parçalarının VEYA (v
) işleminin alınmasıyla hesaplanır.
Örnek:
- Kaynak tarafı anahtar parçası =
0x159
- Tetikleyici tarafındaki anahtar parçası =
0x400
- Anahtar =
0x159 v 0x400 = 0x559
Önemli parçaları uyumlu hale getirme
Dikkatlice yerleştirilmiş 64 bitlik dolgu/ofsetler (on altı sıfır) kullanılarak 128 bit'e genişletilen iki 64 bitlik anahtar parçasının VEYA işlemi, anahtar parçalarını birleştirmeye eşdeğerdir. Bu işlem, mantık yürütmek ve doğrulamak açısından daha kolaydır:
- Kaynak tarafı anahtar parçası =
0xa7e297e7c8c8d0540000000000000000
- Tetikleyici tarafındaki anahtar parçası =
0x0000000000000000674fbe308a597271
- Anahtar =
0xa7e297e7c8c8d0540000000000000000 v 0x0000000000000000674fbe308a597271 = 0xa7e297e7c8c8d054674fbe308a597271
Reklam tıklaması veya görüntüleme başına birden fazla anahtar
Pratikte her ilişkilendirme kaynağı etkinliği (reklam tıklaması veya görüntüleme) için birden fazla anahtar ayarlayabilirsiniz. Örneğin, şunları ayarlayabilirsiniz:
- Coğrafi kimlik × kampanya kimliğini izleyen bir anahtar.
- Reklam Öğesi Türü × Kampanya Kimliği'ni izleyen başka bir anahtar.
Başka bir örnek için B Stratejisi'ne göz atın.
Boyutları anahtarlara kodlama
Özet rapor isteğinde bulunurken, belirli bir toplama anahtarı grubu için özet raporları isteyerek toplama hizmetine hangi metriklere erişmek istediğinizi bildirmeniz gerekir.
Özet raporlar, ham {anahtar, özet değer} çiftlerini içerir ve anahtarla ilgili ek bilgi içermez. Bunun anlamı:
- Kullanıcı bir reklamı görüntülediğinde veya tıkladığında ve daha sonra dönüşüm gerçekleştirdiğinde anahtarları ayarlarken anahtarları, temsil ettikleri boyutların değerlerine göre güvenilir bir şekilde ayarlamanız gerekir.
- Özet raporları istemek istediğiniz anahtarları tanımlarken, kullanıcı bir reklamı görüntülediğinde veya tıklayıp dönüşüm gerçekleştirdiğinde ayarlanan anahtarlarla aynı anahtarları güvenilir bir şekilde oluşturmanız veya anında erişmeniz gerekir. Bu anahtarlar, toplu verilerini görmek istediğiniz boyutların değerlerine göre belirlenir.
Anahtar yapısı eşlemelerini kullanarak boyutları kodlama
Boyutları anahtarlara kodlamak için anahtarlarınızı tanımladıktan sonra (reklam sunma zamanından önce) önceden bir anahtar yapısı haritası oluşturabilir ve bu haritayı koruyabilirsiniz.
Anahtar yapısı haritası, boyutlarınızın her birini ve anahtardaki konumlarını temsil eder.
Uygulamada, anahtar yapı haritaları oluşturmak ve sürdürmek, kod çözücü mantığını uygulamanız ve sürdürmeniz gerektiği anlamına gelir. Bunu yapmanızı gerektirmeyen bir yöntem arıyorsanız bunun yerine karma oluşturmaya dayalı bir yaklaşım kullanmayı düşünebilirsiniz.
Aşağıda bununla ilgili bir örnek verilmiştir:
Belirli kampanyalar, coğrafi bölgeler ve ürünler için hem satın alma işlemlerini hem de satın alma değerlerini izlemeyi planladığınızı varsayalım.
Ürün kategorisi, coğrafi kimlik ve kampanya kimliğinin, anahtarlarınızda boyut olması gerekir. Ayrıca, iki farklı ölçüm hedefini (satın alma sayısı ve satın alma değeri) izlemek istediğiniz için anahtarınıza anahtar türünü izleyen bir boyut eklemeniz gerekir. Bu sayede, özet raporlarda {anahtar, toplanabilir değer} çiftlerini aldıktan sonra toplanabilir değerin aslında neyi temsil ettiğini tanımlayabilirsiniz.
Bu ölçüm hedeflerinde anahtarınız aşağıdaki boyutlara sahip olur:
- Ürün kategorisi
- Ölçüm hedefi türü
- Coğrafya kimliği
- Kampanya Kimliği
Şimdi her boyuta bakarak kullanım alanınızda aşağıdakileri izlemeniz gerektiğini varsayalım:
- 29 farklı ürün kategorisi.
- 8 farklı coğrafi bölge bulunuyor: Kuzey Amerika, Orta Amerika, Güney Amerika, Avrupa, Afrika, Asya, Karayipler ve Okyanusya.
- 16 farklı kampanya bulunuyor.
Anahtarınızdaki her bir boyutu kodlamak için ihtiyacınız olan bit sayısını burada görebilirsiniz:
- Ürün kategorisi: 5 bit (25 = 32 > 29).
- Ölçüm hedefi türü: 1 bit. Ölçüm hedefi, satın alma sayısı ya da satın alma değeri şeklindedir. Bu, iki farklı olasılık anlamına gelir. Dolayısıyla, bunu depolamak için bir bit yeterlidir.
Coğrafi konum kimliği: 3 bit (23 = 8). Ayrıca her ikili değerin hangi coğrafi bölgeyi temsil ettiğini öğrenmek isterseniz Coğrafya Kimliği için bir boyut haritası tanımlarsınız. Coğrafi Kimliği boyutuyla ilgili boyut haritanız şöyle görünebilir:
Anahtardaki ikili değer Coğrafya 000 Kuzey Amerika 001 Orta Amerika 010 Güney Amerika 011 Avrupa 100 Afrika 101 Asya 110 Karayip 111 Okyanusya Kampanya kimliği: 4 bit (24 = 16)
Bu yapıyı takip eden anahtarlar 13 bit uzunluğunda olur (5 + 1 + 3 + 4).
Bu örnek için, bu anahtarların temel yapısı aşağıdaki gibi olacaktır:
Anahtardaki boyutların sıralaması size bağlıdır.
Boyutların bir anahtar yapısını nasıl oluşturduğunu göstermek için ikili gösterim kullanacağız. Bu nedenle kampanya kimliği (ilk bitler) en sağda, ürün kategorisi (son bitler) ise en solda yer alır.
Her boyuttaki en önemli bit (en büyük sayısal değeri taşıyan bit) en soldaki bittir. En az anlamlı bit (en küçük sayısal değeri taşıyan bit) en sağdaki bittir.
Bir anahtarın kodunu çözmek için anahtar yapısı haritasını nasıl kullanacağınızı görelim.
Örnek anahtar olarak 0b1100100111100 değerini alalım ve bu anahtarın önceki görseldeki anahtar yapısı haritasını izlediğini bildiğiniz varsayalım.
Anahtar yapısı haritasına göre bu anahtarın kodu şu şekilde çözülür:
`11001 0 011 1100`
Dolayısıyla 0b1100100111100 anahtarı, Avrupa'da kullanıma sunulan Kampanya Kimliği 12 için Ürün kategorisi 25'in satın alma sayısını temsil eder.
Karma işlevi kullanarak boyutları kodlama
Anahtar yapısı haritası kullanmak yerine, anahtarları tutarlı ve güvenilir bir şekilde dinamik olarak oluşturmak için karma oluşturma işlevi kullanabilirsiniz.
İşleyiş şekli:
- Karma oluşturma algoritması seçin.
- Reklam sunma zamanında, izlemek istediğiniz tüm boyutları ve değerlerini içeren bir dize oluşturun. Kaynak tarafı anahtar parçasını oluşturmak için bu dizeye karma oluşturma işlemi uygulayın ve dizeyi tetikleyici tarafı anahtar parçasıyla hizalamak için sıfırlardan oluşan 64 bitlik bir sonek ekleyin ve VEYA ifadesini daha kolay hale getirin.
- Kaynak taraflı anahtar parçası
=<64-bit hex hash("COUNT, campaignID=12, geoID=7"))><64-bit 00000000…>
COUNT
, anahtar yapı haritası yaklaşımındameasurementGoalType=0
ile aynı şeyi kodlar.COUNT
biraz daha basit ve daha açıktır.
- Kaynak taraflı anahtar parçası
- Dönüşüm sırasında, izlemek istediğiniz tüm boyutları ve değerlerini içeren bir dize oluşturun. Tetikleyici tarafında bir anahtar parçası oluşturmak için bu dizeyi karma oluşturma işlemine tabi tutun ve 64 bitlik sıfır ön ek ekleyin:
- Tetikleyici tarafındaki anahtar parçası
=
<64-bit 00000000…><64-bit hex hash("productCategory=25")>
- Tetikleyici tarafındaki anahtar parçası
=
- Tarayıcı, bir anahtar oluşturmak için bu anahtar parçalarını VEYA kullanır.
- 128 bit toplama anahtarı
=<64-bit hex source-side key piece hash><64-bit hex source-side key piece hash>
- 128 bit toplama anahtarı
- Daha sonra, bu anahtar için özet rapor isteğinde bulunmaya hazır olduğunuzda raporu anında oluşturun:
- İlgilendiğiniz boyutlara göre, daha önce yaptığınız gibi bir kaynak tarafı ve tetikleyici tarafı anahtar parçası oluşturun.
- Kaynak taraflı anahtar parçası
=<64-bit hex hash("COUNT, campaignID=12, geoID=7"))><64-bit 00000000…>
- Tetikleyici tarafındaki anahtar parçası
=<64-bit 00000000…><64-bit hex hash("productCategory=25")>
- tetikleyici taraflı anahtar parçası =
toHex(hash("productCategory=25"))
- Kaynak taraflı anahtar parçası
- Tıpkı tarayıcı gibi, tarayıcı tarafından daha önce oluşturulan anahtarı oluşturmak için bu anahtar parçalarını VEYA kullanın.
- 128 bit toplama anahtarı
=<64-bit source-side key piece hash><64-bit source-side key piece hash>
- 128 bit toplama anahtarı
- İlgilendiğiniz boyutlara göre, daha önce yaptığınız gibi bir kaynak tarafı ve tetikleyici tarafı anahtar parçası oluşturun.
Karma oluşturmaya dayalı bu yaklaşımı kullanıyorsanız birkaç pratik ipucu:
- Her zaman aynı boyut sıralamasını kullanın. Bu sayede karma oluşturma işlemleriniz güvenilir bir şekilde yeniden oluşturulabilir. (
"COUNT, CampaignID=12, GeoID=7"
,"COUNT, GeoID=7, CampaignID=12"
ile aynı karmayı oluşturmaz). Bunu yapmanın basit bir yolu, boyutları alfanümerik olarak sıralamaktır. Örnekte de bunu yapacağız. Tek fark, boyuttaki ilk öğeyi her zamanCOUNT
veyaVALUE
olarak belirlememizdir.COUNT
veyaVALUE
, diğer tüm boyutlardan kavramsal olarak biraz farklı bilgiler kodladığından bu, okunabilirlik için yapılan bir seçimdir. - Anahtarlarda kullandığınız boyut grubunu takip edin. Hiç kullanmadığınız bir boyut grubuna göre anahtar oluşturmaktan kaçınmak istiyorsunuz.
- Uygun bir karma işlevi kullanılıyorsa karma çakışmaları nadir görülür. Ancak daha önce kullanılan karmalarla (toplama hizmetinden alınan sonuçların yorumlanması için saklanması gerekir) kontrol edilmesi, eski anahtarlarla çakışan yeni anahtarlar uygulanmasını önleyebilir.
Tıklama veya görüntüleme başına bir dönüşüm örneğinde karma tabanlı anahtarları pratikte nasıl kullanacağınızı öğrenin.
Uygulamada toplanabilir değerler
Reklam teknolojisi şirketi, bir kullanıcı dönüşüm gerçekleştirdiğinde toplanabilir değerler belirler.
Kullanıcı gizliliğini korumak için her kullanıcının katkısında bir üst sınır vardır. Tek bir kaynakla (reklam tıklaması veya görüntüleme) ilişkili toplanabilir tüm değerlerde hiçbir değer belirli bir katkı sınırının üzerinde olamaz.
Bu sınıra CONTRIBUTION_BUDGET
diyeceğiz. Açıklama bölümünde bu sınır L1 bütçesi olarak adlandırılır ancak CONTRIBUTION_BUDGET
ile aynıdır.
Katkı bütçesiyle ilgili ayrıntılı bilgi için Özet raporlar için katkı bütçesi başlıklı makaleyi inceleyin.
Örnek: tıklama veya görüntüleme başına bir dönüşüm
Bu örnekte, aşağıdaki soruları yanıtlamak istediğinizi varsayalım:
- Her bölgede en değerli ürün kategorileri hangileri?
- Her bölgede en etkili kampanya stratejileri hangileridir?
Ayrıca, kullanım alanınız için haftalık analizlere ihtiyacınız olduğunu varsayalım.
Ayrıca aşağıdakileri de izlemeniz gerekir:
- 16 farklı kampanya.
- 8 farklı coğrafi bölge bulunuyor: Kuzey Amerika, Orta Amerika, Güney Amerika, Avrupa, Afrika, Asya, Karayipler ve Okyanusya.
- 29 farklı ürün kategorisi var.
Neleri ölçmeliyim?
Birçok reklam teknolojisi şirketi, reklamverenleri çeşitli dönüşüm türlerini yapılandırmaya teşvik etse de satın alma işlemleri gibi en önemli dönüşümlere odaklanmak, bu önemli dönüşüm etkinlikleri için toplu sonuçların ayrıntılı ve doğru olmasını sağlamak için iyi bir yöntemdir. Gerçekten de, ne kadar fazla metrik ölçerseniz metrik başına katkı bütçeniz o kadar küçük olur ve dolayısıyla her bir değerin gürültülü olma olasılığı o kadar artar. Bu nedenle, neyi ölçeceğinizi dikkatlice seçmeniz gerekir.
Bu örnekte, tıklama veya görüntüleme başına yalnızca bir dönüşümü (satın alma işlemi) ölçen kampanya kurulumlarına odaklanacağız.
Hem satın alma sayısını hem de satın alma değerini ölçmeye devam eder, toplam satın alma değeri ve coğrafi dökümler gibi çeşitli önemli toplu istatistiklere erişebilirsiniz. Bu yöntem, gürültünün makul düzeyde kalmasını sağlar ve katkı bütçeniz için basit bir ölçeklendirme yaklaşımı sunar.
Peki ya para birimleri?
Farklı bölgelerde kampanya yayınlamak, para birimlerinin dikkate alınması gerektiği anlamına gelir. Şunları yapabilirsiniz:
- Para birimini, toplama anahtarlarında özel bir boyut yapın.
- Alternatif olarak, para birimini bir kampanya kimliğinden çıkarıp tüm para birimlerini bir referans para birimine dönüştürebilirsiniz.
Bu örnekte, bir kampanya kimliğinden para birimini tahmin edebileceğinizi varsayıyoruz. Bu sayede, belirli bir satın alma değerini kullanıcının yerel para biriminden seçtiğiniz bir referans para birimine dönüştürebilirsiniz. Bu dönüşümü, kullanıcı bir öğe satın aldığında da anında gerçekleştirebilirsiniz.
Bu teknikle, tüm toplanabilir değerler aynı referans para biriminde olur ve bu nedenle toplam satın alma değeri (özet satın alma değeri) oluşturmak üzere toplanabilir.
Hedefleri anahtarlara çevirme
Ölçüm hedefleriniz ve metrikleriniz sayesinde, temel stratejiniz için birçok seçeneğiniz vardır. Bu stratejilerden ikisine odaklanalım:
- A stratejisi: tek bir ayrıntılı anahtar yapısı.
- B stratejisi: iki kaba anahtar yapısı.
Strateji A: tek derin ağaç (tek bir ayrıntılı anahtar yapısı)
A stratejisinde, ihtiyacınız olan tüm boyutları içeren ayrıntılı tek bir anahtar yapısı kullanırsınız:
Tüm anahtarlarınız bu yapıyı kullanır.
İki ölçüm hedefini desteklemek için bu temel yapıyı iki ana türe ayırırsınız.
- Satın alma sayısı olarak tanımladığınız anahtar türü 0: ölçüm hedefi türü = 0.
- Satın alma değeri olarak tanımlamaya karar verdiğiniz anahtar türü 1: ölçüm hedefi türü = 1.
Özet raporlar aşağıdaki gibi görünür:
A stratejisini "derin bir ağaç" stratejisi olarak düşünebilirsiniz:
- Özet raporlardaki her özet değeri, izlediğiniz tüm boyutlarla ilişkilendirilir.
- Bu özet değerleri, bu boyutların her biri ile birlikte toplayabilirsiniz. Böylece bu toplama işlemleri, sahip olduğunuz boyut sayısı kadar derin olabilir.
A stratejisinde sorularınızı aşağıdaki gibi yanıtlarsınız:
Soru | Yanıtla |
---|---|
Her bölgede en değerli ürün kategorileri hangileri? | Tüm kampanyalar genelinde özet raporlarındaki özet satın alma sayılarını ve değerleri toplayın. Bu, coğrafi kimlik × ürün kategorisi başına satın alma sayısını ve değerini gösterir. Her bölge için farklı ürün kategorilerinin satın alma değerini ve sayısını karşılaştırın. |
Her bölgede en etkili kampanya stratejileri hangileri? | Tüm ürün kategorileri genelinde özet raporlarındaki özet satın alma sayılarını ve değerleri toplayın. Bu, kampanya kimliği × coğrafi kimlik başına satın alma sayısını ve değerini verir. Her bölge için farklı kampanyaların satın alma değerini ve sayısını karşılaştırın. |
A stratejisiyle, şu üçüncü soruyu doğrudan yanıtlayabilirsiniz:
"Her bir coğrafi bölgedeki kampanyalarımdan her biri, her bir ürün için ne kadar gelir sağladı?"
Özet değerleri karışık olsa da her kampanya arasında ölçülen değerdeki farkların ne zaman yalnızca gürültüden kaynaklanmadığını belirleyebilirsiniz. Bu işlemi nasıl yapacağınızı Gürültüyü anlama bölümünden öğrenebilirsiniz.
B Stratejisi: iki sığ ağaç (iki kaba anahtar yapısı)
B stratejisinde, her biri ihtiyacınız olan boyutların alt kümesini içeren iki genel anahtar yapısı kullanırsınız:
İki ölçüm hedefini desteklemek için bu temel yapıların her birini iki anahtar türe ayırırsınız.
- Ölçüm hedefi türü = 0. Bu değeri satın alma sayısı olarak tanımlamaya karar verdiniz.
- Ölçüm hedefi türü = 1. Bu değeri satın alma değeri olarak tanımlamaya karar verdiniz.
Dört anahtar türü elde edersiniz:
- Anahtar türü I-0: Temel yapı I, satın alma sayısı.
- Anahtar türü I-1: Temel yapı I, satın alma değeri.
- Anahtar türü II-0: Temel yapı II, satın alma sayısı.
- Anahtar türü II-1: Temel yapı II, satın alma değeri.
Özet raporlar aşağıdaki gibi görünür:
B stratejisini "iki sığ ağaç" stratejisi olarak düşünebilirsiniz:
- Özet raporlardaki özet değerler, iki küçük boyut grubundan biriyle eşlenir.
- Bu özet değerleri, bu gruplardaki her bir boyutla birlikte toplanabilir. Bu, toplanacak daha az boyut olduğu için bu toplama işlemlerinin A seçeneğinde olduğu kadar derin olmadığı anlamına gelir.
B stratejisinde sorularınızı şu şekilde yanıtlarsınız:
Soru | Yanıtla |
---|---|
Her bölgede en değerli ürün kategorileri hangileri? | Özet raporlardaki özet satın alma sayılarına ve değerlerine doğrudan erişebilirsiniz. |
Her bölgede en etkili kampanya stratejileri hangileri? | Özet raporlardaki özet satın alma sayılarına ve değerlerine doğrudan erişebilirsiniz. |
Karar: A Stratejisi
A stratejisi daha basittir. Tüm veriler aynı temel yapıya sahiptir. Bu da, yönetmeniz gereken tek bir temel yapının olduğu anlamına gelir.
Ancak A stratejisinde, bazı sorularınızı yanıtlamak için özet raporlarda aldığınız özet değerleri toplamanız gerekir. Bu özet değerlerinin her biri gürültülüdür. Bu verileri toplayarak gürültüyü de toplamış olursunuz.
Özet raporlarda sunulan özet değerlerinin zaten ihtiyacınız olan bilgileri sağladığı B stratejisinde bu durum söz konusu değildir. Bu, B stratejisinin, A stratejisine kıyasla gürültünün daha az etkisine yol açacağı anlamına gelir.
Hangi stratejiyi kullanacağınızı nasıl belirlemelisiniz? Mevcut reklamverenler veya kampanyalar için dönüşüm hacminin A stratejisi mi yoksa B stratejisi mi için daha uygun olduğunu belirlemek üzere geçmiş verilerden yararlanabilirsiniz. Ancak yeni reklamverenler veya kampanyalar için şunları yapmaya karar verebilirsiniz:
- Ayrıntılı anahtarlarla bir aylık verileri toplayın (Strateji A). Veri toplama süresini uzattığınız için özet değerler daha yüksek, gürültü ise nispeten daha düşük olacaktır.
- Haftalık dönüşüm sayısını ve satın alma değerini makul bir doğrulukla değerlendirin.
Bu örnekte, haftalık satın alma sayısı ve satın alma değerinin, A stratejisinin kullanım alanınız için kabul edilebilir bir gürültü yüzdesine yol açacak kadar yüksek olduğunu varsayalım.
A stratejisi daha basit olduğu ve karar verme yeteneğinizi etkilemeyen bir gürültü etkisine yol açtığı için A stratejisini kullanmaya karar veriyorsunuz.
Karma oluşturma algoritması seçme
Anahtarlarınızı oluşturmak için karma oluşturmaya dayalı bir yaklaşım kullanmaya karar verdiniz. Bunu yapmak için bu yaklaşımı destekleyecek bir karma oluşturma algoritması seçmeniz gerekir.
SHA-256'yı seçtiğinizi varsayalım. Ayrıca MD5 gibi daha basit, güvenliği düşük bir algoritma da kullanabilirsiniz.
Tarayıcıda: anahtarları ve değerleri ayarlayın
Anahtar yapısına ve karma oluşturma algoritmasına karar verdiğiniz için kullanıcılar reklamları tıkladığında veya görüntülediğinde ve ardından dönüşüm gerçekleştirdiğinde anahtarları ve değerleri kaydetmeye hazırsınız.
Ardından, anahtarları ve değerleri tarayıcıya kaydetmek için ayarlayacağınız başlıklara genel bir bakış sunulur:
Kaynak tarafı anahtar parçalarını ayarlama
Kullanıcı bir reklamı tıkladığında veya görüntülediğinde Attribution-Reporting-Register-Aggregatable-Source
başlığında toplama anahtarlarını ayarlayın.
Bu aşamada, her anahtar için yalnızca reklam sunma sırasında bilinen anahtar kısmını veya anahtar parçasını ayarlayabilirsiniz.
Önemli parçaları oluşturalım:
Anahtar kimliği için kaynak taraflı anahtar parçası… | Ayarlamak istediğiniz boyut değerlerini içeren dize | Bu dizenin onaltılık olarak karması, ilk 64 bite kırpılır (64/4 = 16 karakter1) | VEYA işlevini basitleştirmek için eklenen sıfırlarla onaltılık karma. Bu, kaynak tarafındaki anahtar parçadır. |
---|---|---|---|
key_purchaseCount |
COUNT, CampaignID=12, GeoID=7 |
0x3cf867903fbb73ec | 0x3cf867903fbb73ec0000000000000000 |
key_purchaseValue |
VALUE, CampaignID=12, GeoID=7 |
0x245265f432f16e73 | 0x245265f432f16e730000000000000000 |
Şimdi temel parçaları ayarlayalım:
// Upon receiving the request from the publisher site
res.set(
"Attribution-Reporting-Register-Aggregatable-Source",
JSON.stringify([
{
"id": "key_purchaseCount",
"key_piece": "0x3cf867903fbb73ec0000000000000000"
},
{
"id": "key_purchaseValue",
"key_piece": "0x245265f432f16e730000000000000000"
}
])
);
Anahtar kimliklerinin nihai raporlarda görünmeyeceğini unutmayın. Bunlar yalnızca tarayıcıda anahtarlar ayarlanırken kullanılır. Böylece kaynak tarafı ve tetikleyici tarafı anahtar parçaları birbiriyle eşlenebilir ve tam bir anahtarda birleştirilebilir.
İsteğe bağlı: etkinlik düzeyinde raporlar
Birleştirilebilir raporlarla birlikte etkinlik düzeyinde raporları kullanmanız gerekiyorsa belirli bir kaynak için etkinlik düzeyindeki veriler (kaynak etkinlik kimliği ve tetikleyici veriler) ve toplama anahtarının eşleştirilebilmesini sağlar.
Örneğin, en yüksek satın alma sayısını sağlama eğiliminde olan reklam türleriyle ilgili modeller çalıştırmak için etkinlik düzeyinde raporlar kullanmayı planlıyorsanız her iki raporu da kullanabilirsiniz.
Kullanıcı dönüşüm gerçekleştirir
Kullanıcı dönüşüm gerçekleştirdiğinde reklam teknolojisi sunucusuna genellikle bir piksel isteği gönderilir. Bu isteği aldıktan sonra:
- Anahtarı tamamlamak için dönüşüm tarafı (tetikleyici tarafı) anahtar parçalarını ayarlayın.
Bu anahtar parçalarını
Attribution-Reporting-Register-Aggregatable-Trigger-Data
başlığı aracılığıyla ayarlarsınız. Attribution-Reporting-Register-Aggregatable-Values
başlığı aracılığıyla ilgili dönüşüm için toplanabilir değeri ayarlayın.
Anahtarı tamamlamak için tetikleyici tarafı anahtar parçalarını ayarlama
Önemli parçaları oluşturalım:
Anahtar kimliği için tetikleyici tarafı anahtar parçası… | Ayarlamak istediğiniz boyut değerlerini içeren dize | Bu dizenin onaltılık olarak karması, ilk 64 bite kırpılır (64/4 = 16 karakter1) | VEYA işlemini basitleştirmek için eklenen sıfırlarla onaltılık karma. Bu, kaynak tarafındaki anahtardır. |
---|---|---|---|
key_purchaseCount |
ProductCategory=25 |
0x1c7ce88c4904bbe2 | 0x0000000000000000f9e491fe37e55a0c |
key_purchaseValue |
(aynı) | (aynı) | (aynı) |
Şimdi temel unsurları belirleyelim:
// Upon receiving the pixel request from the advertiser site
res.set(
"Attribution-Reporting-Register-Aggregatable-Trigger-Data",
JSON.stringify([
// Each dictionary independently adds pieces to multiple source keys
{
"key_piece": "0x0000000000000000f9e491fe37e55a0c",
"source_keys": ["key_purchaseCount", "key_purchaseValue"]
},
])
);
source_keys
içinde birden fazla anahtar kimliği listeleyerek aynı anahtar parçasını birden fazla anahtara nasıl eklediğinizi unutmayın. Anahtar parçası her iki anahtara da eklenir.
Toplanabilir değerler belirleyin
Toplanabilir değerleri ayarlamadan önce, gürültüyü azaltmak için değerleri ölçeklendirmeniz gerekir.
25 numaralı ürün için 52 TL'lik bir satın alma işleminin yapıldığını varsayalım.
Bunları doğrudan toplanabilir değerler olarak ayarlamazsınız:
key_purchaseCount
: 1 dönüşümkey_purchaseValue
: 52 TL
Bunun yerine, bu toplanabilir değerleri kaydetmeden önce gürültüyü en aza indirmek için bunları ölçeklendirmeniz gerekir.
Katkı bütçenizi harcamak için iki hedefiniz olduğundan katkı bütçesini ikiye bölme kararı alabilirsiniz.
Bu durumda her hedefe en fazla CONTRIBUTION_BUDGET/2
(=65.536/2=32.768) ayrılır.
Sitenin tüm kullanıcıları arasındaki işlem geçmişine dayalı olarak tek bir kullanıcı için maksimum satın alma değerinin 1.500 ABD doları olduğunu varsayalım. Örneğin, bu tutarın üzerinde harcama yapan çok az sayıda kullanıcı gibi aykırı değerler olabilir ancak bu aykırı değerleri yoksayabilirsiniz.
Satın alma değeri için ölçeklendirme faktörünüz şu olmalıdır:
((CONTRIBUTION_BUDGET
/2) / 1.500) = 32.768/1.500 = 21,8 ≈ 22
Reklam tıklaması veya görüntüleme (kaynak etkinlik) başına en fazla bir satın alma işlemini izlemeye karar verdiğiniz için satın alma sayısı için ölçeklendirme faktörünüz 32.768/1 = 32.768'dir.
Artık şu değerleri ayarlayabilirsiniz:
key_purchaseCount
: 1 × 32.768 = 32.768key_purchaseValue
: 52 × 22 = 1.144
Pratikte, özel Attribution-Reporting-Register-Aggregatable-Values
başlığını kullanarak bunları aşağıdaki gibi ayarlarsınız:
// Instruct the browser to schedule-send a report
res.set(
"Attribution-Reporting-Register-Aggregatable-Values",
JSON.stringify({
"key_purchaseCount": 32768,
"key_purchaseValue": 1144,
})
);
Toplanabilir rapor oluşturulur
Tarayıcı, dönüşümü önceki bir görüntüleme veya tıklamayla eşleştirir ve rapor meta verilerinin yanındaki şifrelenmiş yükü içeren birleştirilebilir rapor oluşturur.
Aşağıda, temiz metin olarak okunabiliyorsa toplanabilir raporun yükü içinde bulunabilecek verilere bir örnek verilmiştir:
[
{
key: 0x3cf867903fbb73ecf9e491fe37e55a0c, // = source-side key piece OR conversion-side key piece for the key key_purchaseCount
value: 32768 // the scaled value for 1 conversion, in the context of [CONTRIBUTION_BUDGET/2]
},
{
key: 0x245265f432f16e73f9e491fe37e55a0c, // source-side key piece OR conversion-side key piece for the key key_purchaseValue
value: 1144 // the scaled value for $52, in the context of [CONTRIBUTION_BUDGET/2]
},
]
Burada, tek bir toplanabilir raporda iki ayrı katkı görebilirsiniz.
Özet rapor isteğinde bulunma
- Toplu olarak toplanabilir raporlar. Gruplandırma bölümündeki önerileri uygulayın.
- Verilerini görmek istediğiniz anahtarları oluşturun. Örneğin, 12 numaralı kampanya kimliği × 7 numaralı coğrafi kimlik × 25 numaralı ürün kategorisi için
COUNT
(toplam satın alma sayısı) veVALUE
(toplam satın alma değeri) ile ilgili özet verileri görmek istiyorsanız:- Tarayıcıda ayarlarken yaptığınız gibi kaynak taraflı anahtar parçasını oluşturun.
- Tarayıcıda ayarlarken yaptığınız gibi, tetikleyici tarafı anahtar parçasını oluşturun.
İstemek istediğiniz metrik1 | Kaynak tarafı anahtar parçası | Tetikleyici tarafı anahtar parçası | Toplama hizmetine istek göndermek için anahtar2 |
---|---|---|---|
Toplam satın alma sayısı (COUNT ) |
0x3cf867903fbb73ec 0000000000000000 |
0x00000000000000 00f9e491fe37e55a0c |
0x3cf867903fbb73 ecf9e491fe37e55a0c |
Toplam satın alma değeri (VALUE ) |
0x245265f432f16e73 0000000000000000 |
0x0000000000000000 f9e491fe37e55a0c |
0x245265f432f16e73 f9e491fe37e55a0c |
- Bu anahtarlar için toplama hizmetinden özet veriler isteyin.
Özet raporunu işleme
Sonuç olarak, aşağıdaki gibi görünen bir özet rapor alırsınız:
[
{"bucket": "00111100111110000110011110010000001111111011101101110011111011001111100111100100100100011111111000110111111001010101101000001100",
"value": "2558500"},
{"bucket": "00100100010100100110010111110100001100101111000101101110011100111111100111100100100100011111111000110111111001010101101000001100",
"value": "687060"},
…
]
İlk paket, ikili sistemdeki COUNT
anahtarıdır. İkinci paket, ikili programdaki VALUE
anahtarıdır.
Anahtarlar heterojen olsa da (COUNT
ve VALUE
) aynı raporda yer aldıklarını unutmayın.
Değerleri aşağı ölçeklendirme
- 2.558.500, bu anahtar için daha önce hesapladığınız ölçeklendirme faktörü ile ölçeklendirilmiş satın alma işlemlerinin sayısını ifade eder. Satın alma sayısının ölçeklendirme faktörü 32.768'di. 2.558.500'ü hedefin katkı bütçesine bölün: 2.558.500/32.768 = 156,15 satın alma işlemi.
- 687.060 → 687.060/22 = 31.230 ABD doları toplam satın alma değeri.
Sonuç olarak, özet raporları size aşağıdaki bilgileri sağlar:
- Within the reporting time period, campaign #12
run in Europe drove about 156 purchases (± noise)
for the product category #25
```
```text
- Within the reporting time period, campaign #12
run in Europe drove $31,230 of purchases (± noise)
for the product category #25.