Çerez eşleme

Genel olarak çerez eşleştirme, bir reklamverenin veya tedarikçi firmanın alanında bulunan çerezleri Google'ın alanındaki çerezlerle ilişkilendirmesini sağlayan işlemdir. Bu çerezleri eşleştirmek, sahip olduğunuz birinci taraf verilerini aynı kullanıcı ile ilgili Google reklam verilerine (Display & Video 360 ve Campaign Manager 360 üzerinden izlenir) bağlamanızı sağlar. Böylece, CRM verilerini ekleyebilir ve kullanıcı davranışını daha iyi anlayabilirsiniz. Bu verileri gizlilik odaklı birleştirmeler aracılığıyla birleştirerek:

  • Reklamlarınız ve alanınızla etkileşime geçmiş kullanıcıların alışveriş sepetlerinde bıraktıkları belirli ürünlere göre kitleleri hedefleyebilirsiniz.
  • Hangi reklamların alanınızda oturumların daha uzun olmasını sağladığını belirleyebilirsiniz.
  • Kampanya sonrası verilerle birleştirilen satın alma geçmişini analiz edebilirsiniz.

Sınırlamalar ve son kullanıcı gizliliği

Çerez eşleştirme yöntemi güçlü olsa da bazı sınırlamaları vardır:

  • *_match ile *_match olmayan tablolar arasında birleştirme işlemlerine izin verilmez.
  • Hem sizin hem de Google'ın mühendislik çalışması yapması gerekir.
  • Google reklam verilerinizin tümünü eşleştirme olasılığınız düşüktür. Eşleşme oranları çeşitli faktörlere bağlı olduğundan kullanım alanına ve istemci tarafı kurulumuna göre değişiklik gösterir. Eşleşme oranları genellikle kullanıcıların beklediğinden daha düşüktür. Kullanıcılar, yalnızca alanınız ve reklamlarınızla etkileşime geçmeleri durumunda çerez eşleştirme için uygun olur.
  • Google, eşleşme tablolarınız ayarlandıktan sonra bunları doldurmaya başlar. Kullanıcıların sitenizi ziyaret etme ve eşleştirme pikselinizi alma sıklığına bağlı olarak, eşleşme tablolarınızın kullanıcılarınızla ilgili bütünsel ve kararlı verilere sahip olması birkaç ayı bulabilir.
  • Kullanıcıları cihazlar arasında bağlamanın bir yolu olmadığı sürece, kullanıcıları birden fazla cihazla ilişkilendiremezsiniz.
  • Birden fazla çerez kullanarak tek bir kullanıcıyı eşleştiremezsiniz. Kullanıcının çerezleri temizlemesi durumunda da eşleştirme yapamazsınız.
  • Eşleşme tablolarında çalıştırılan işler, Ads Data Hub'daki diğer işlerle aynı toplama koşullarına tabidir. Düşük eşleşme oranı ve alanınıza yönelik ziyaretlerin sık olmaması, veri elde etme konusunda zorluklara yol açabilir. Bunun nedeni, eşleşme oranlarının ve toplama koşullarının birleşik etkisidir1.
  • Google'ın son kullanıcı gizliliğiyle ilgili politikalarına uygun olarak:
    • Belirli bir kullanıcının oturum açıkken ve oturum kapalıyken oluşan verilerini eşleştirmeniz yasaktır.
    • Verileri, reklam kişiselleştirmeyi devre dışı bırakan kullanıcılarla eşleştiremezsiniz.
  • iOS etkinliklerinde, iOS 14.5 ve sonraki sürümlerdeki uygulamalarda yalnızca Apple'ın Uygulama Takibi Şeffaflığı Çerçevesi kapsamında izin veren kullanıcılardan gelen verileri eşleştirebilirsiniz.

Ads Data Hub'da birinci taraf verilerinizi kullanabilmek için AEA'daki son kullanıcılardan alınan verileri, AB kullanıcı rızası politikası ve Ads Data Hub politikasına uygun şekilde Google ile paylaşmak için gereken izni aldığınızı doğrulamanız gerekir. Bu koşul her Ads Data Hub hesabı için geçerlidir ve yeni birinci taraf verileri yüklediğiniz her seferde güncellenmelidir. Bu onayı, hesabın tamamı adına kullanıcılardan herhangi biri verebilir.

Analiz sorguları için geçerli olan Google hizmeti sorgu kurallarının, çerez eşleştirme sorguları için de geçerli olduğunu unutmayın. Örneğin eşleşme tablosu oluşturduğunuzda, AEA'daki kullanıcılarla ilgili hizmetler arası sorgular yürütemezsiniz.

Ads Data Hub'da izni nasıl onaylayacağınızı öğrenmek için Avrupa Ekonomik Alanı için kullanıcı rızası koşulları sayfasını inceleyin.

Google'ın eşleşme tablolarınızı doldurması için alanınızın reklam verilerini eşleştirmek istediğiniz her sayfasında bir eşleştirme etiketi yayınlamanız gerekir. Pikseli nereye yerleştireceğiniz, reklamcılık hedeflerinize bağlıdır. Örneğin, alanınızı ziyaret eden her kullanıcıyı (neredeyse tüm sayfalarda piksel gerekir) eşleştirmeyi deneyebilir veya dönüşüm gerçekleştiren kullanıcıları (dönüşüm sayfasında piksel gerekir) eşleştirebilirsiniz. Genellikle, daha yaygın pikseller daha yüksek eşleşme oranları sağlar.

Eşleştirme etiketi, çerez eşleştirme profili kimliğinizi ve kodlanmış kullanıcı veya çerez kimliğini içeren şeffaf bir 1x1 pikseldir:

<img src="https://cm.g.doubleclick.net/pixel?google_nid=adh_customername&google_hm=Q29va2llIG51bWJlciAxIQ" />

Bu eşleşme etiketi, sizinle Google çerez eşleştirme hizmetleri arasında iletişim kurulmasını sağlar.

Adım adım genel bakış

  1. Kullanıcı, eşleştirme etiketi bulunan bir sayfayı ziyaret eder.
  2. Eşleştirme etiketi; Google Marketing Platform, Google Ads ve YouTube eşleştirme hizmetlerine bir dizi yönlendirme başlatır. İstekler, söz konusu kullanıcının web sitenizdeki kimliği veya çerezinin yanı sıra eşleşen hizmetin kimlik alanlarındaki her bir Google çerezini içerir.
  3. İsteğin yerine getirildiğini onaylamak için tarayıcıya şeffaf bir 1x1 piksel döndürülür.

Bu işlem aşağıdaki şemada gösterilmektedir:

Tarayıcı ile eşleşen hizmetler arasındaki bir dizi yönlendirmeyi gösteren resim

Kurulum

Ads Data Hub'da çerez eşleştirmeyi ayarlama işlemi aşağıdaki gibidir:

  1. Hesap temsilcinizle iletişime geçin ve çerez eşleştirmeyle ilgilendiğinizi bildirin. Temsilcinizle hedefleriniz hakkında konuşabilir ve izleme pikselini alanınıza dağıtma hakkında daha fazla bilgi edinebilirsiniz.
  2. Ads Data Hub uzmanları, teknik koşulları ve kullanım alanları hakkında konuşmak için yeni bir görüşme başlatır.
  3. Siz izleme pikselini ve hata uç noktasını dağıtırken Google, eşleşme tablolarınızı oluşturur.

Bu adımları tamamladıktan sonra herhangi bir işlem yapmanız gerekmez. Google, eşleşme tablolarınızı her gün doldurur2. Bu nedenle, tablonuzda anlamlı eşleşmeler sağlamak ve toplama koşullarını yerine getirmek amacıyla yeterli verinin yer alması için yeterli zaman tanımanız gerekir. Bu durum, kullanıcıların sitenizi ziyaret etme sıklığına bağlıdır. Her gün ziyaret eden kullanıcıları olan bir site, bu noktaya her ay ziyaret eden kullanıcıları olan bir siteye göre çok daha hızlı ulaşır. Net yeni eşleşme sayısı azaldıkça eşleşme tablolarınız daha kapsamlı veriler içerir.

Eşleşme tablolarını sorgulama

Eşleşme tablolarınız gizlilik kontrollerini karşılamaya yetecek kadar veri içerdiğinde tablolarda sorgu çalıştırmaya hazırsınız demektir.

Ads Data Hub şemasında, user_id alanı içeren her tabloya bir *_match tablosu eşlik eder. Örneğin Ads Data Hub, adh.google_ads_impressions tablosu için kullanıcı kimliklerinizi içeren adh.google_ads_impressions_match adlı bir eşleşme tablosu da oluşturur. Politikadan bağımsız tablolar için ayrı eşleşme tabloları oluşturulur. Örneğin Ads Data Hub, adh.google_ads_impressions_policy_isolated_youtube tablosu için kullanıcı kimliklerinizi içeren adh.google_ads_impressions_policy_isolated_youtube_match adlı bir eşleşme tablosu da oluşturur.

Bu tablolar, orijinal tablolarda bulunan ve user_id alanında eşleşmenin bulunduğu bir alt kümeyi içerir. Örneğin orijinal tablo hem Kullanıcı A hem de Kullanıcı B için veri içeriyorsa ancak yalnızca Kullanıcı A eşleşiyorsa Kullanıcı B eşleşme tablosunda yer almaz.

Eşleşme tabloları, external_cookie adlı ek bir sütun içerir. Bu sütun, çerezinizi BYTES olarak depolar.

Sorgularınızı yazarken alanın türünü dikkate almanız önemlidir. SQL karşılaştırma operatörleri, karşılaştırdığınız dizelerin aynı türde olmasını bekler. user_id içeriğinin birinci taraf verileri tablonuzda nasıl depolandığına bağlı olarak, verileri eşleştirmeden önce tablodaki verileri kodlamanız gerekebilir. Başarılı eşleşmeler için birleştirme anahtarınızı BYTES'e yayınlamanız gerekir:

JOIN ON
  adh.google_ads_impressions_match.external_cookie = CAST(my_data.user_id AS BYTES)

Ayrıca, SQL'deki dize karşılaştırmaları büyük/küçük harfe duyarlıdır. Bu yüzden, dizelerin doğru şekilde karşılaştırılabilmeleri için karşılaştırmanızın her iki tarafındaki dizeleri kodlamanız gerekebilir.

Kullanıcı kimliklerini kodlama

Kullanıcı kimliklerini istemci tarafı için kodlama

Farklı kimlik biçimlerinin URL aracılığıyla güvenli bir şekilde iletilebilmesi için tüm kimliklerin gönderilmeden önce URL için güvenli Base64 olarak kodlanmış olması gerekir. URL için güvenli Base64 kodu çözülmüş kimlik, Ads Data Hub'daki external_cookie alanında kullanıma sunulur. Dolayısıyla, orijinal kimliğinizi elde etmek için kodlamadan önce uyguladığınız tüm dönüşümleri geri almanız gerekir.

Kimliğiniz her zaman 24 karakter (veya bayt) ya da daha kısaysa 1. örnekte gösterildiği gibi URL için güvenli Base64 olarak kodlanmış kimliği bir piksele ekleyebilirsiniz. Kimliğiniz 24 karakterden (veya bayttan) büyükse 24 bayt ya da daha kısa bir gösterime dönüştürmeniz gerekir. Bazı durumlarda (2. örnekteki GUID gibi), bayt gösterimine dönüştürmek yeterlidir. Diğer durumlarda, Google'a kimliğinizin bir alt kümesini (veya bir karmasını) göndermeniz gerekebilir. Her durumda, birinci taraf tablonuzdaki kimliği aynı şekilde dönüştürecek bir SQL JOIN yazabileceğinizden emin olmanız gerekir.

1. örnek

Kullanıcı kimliği değeriniz her zaman 24 baytlık uzunluk sınırının altında olur. Ads Data Hub, kullanıcı kimliğinizi doğrudan ADH'ye göndermenizi önerir (URL aktarımı amacıyla URL için güvenli URL64 olarak kodladıktan sonra).

var userId = 'abcdef123456789';
// Encode the string (or number) in normal base64.
var userIdBase64 = btoa(userId);

// Ensure that the uploaded user IDs use web-safe Base64 encoding.
userIdBase64 = userIdBase64.replace(/\+/g, '-').replace(/\//g, '_')
    .replace(/=+$/, '');

// After encoding the UUID correctly, you can create the request tag and
// insert it into the DOM.
var imgElement = Document.createElement('img');
imgElement.src =
    'https://cm.g.doubleclick.net/pixel?google_nid=adh_customername&google_hm='
    + userIdBase64;
document.body.appendChild(imgElement);
2. örnek

Kullanıcı kimliği olarak evrensel bir benzersiz tanımlayıcı (UUID) atarsınız. Örneğin: 123e4567-e89b-12d3-a456-426655440000.

Ads Data Hub, eşleştirme için aşağıdaki dönüşümleri önerir:

  1. UUID, 36 karakterli bir dize olarak biçimlendirilir.
  2. Onaltılık kod çözme UUID'si.
  3. UUID, bayt olarak biçimlendirilir.
  4. URL için güvenli Base64 olarak kodlanmış baytlar.
  5. UUID dize olarak biçimlendirilir.

Bu uygulama için aşağıdaki kodu kullanabilirsiniz:

JavaScript

var userId = '123e4567-e89b-12d3-a456-426655440000';

// A helper function for converting a hex string to a byte array.
function strToBytes(str) {
        for (var bytes = [], i = 0; i < str.length; i += 2) {
          bytes.push(parseInt(str.substr(i, 2), 16));
        }
        return bytes;
}

// Remove the formatting dashes from the UUID.
userId = userId.replace(/-/g, '');

// Encode the hex string as a byte array.
var userIdBytes = strToBytes(userId);

// Encode the byte array in normal base64.
var userIdBase64 = btoa(String.fromCharCode(...new Uint8Array(userIdBytes)));

// Ensure that the uploaded user IDs use web-safe Base64 encoding.
userIdBase64 = userIdBase64.replace(/\+/g, '-').replace(/\//g, '_').replace(
    /=+$/, '');

// After encoding the UUID correctly, you can create the request tag and
// insert it into the DOM.
var imgElement = Document.createElement('img');
imgElement.src =
    'https://cm.g.doubleclick.net/pixel?google_nid=adh_customername&google_hm='
    + userIdBase64;
document.body.appendChild(imgElement);

Python

import base64

user_id = '123e4567-e89b-12d3-a456-426655440000'
user_id_as_bytes = bytes.fromhex(user_id.replace('-', ''))
base64.urlsafe_b64encode(user_id_as_bytes)

Google kullanıcı kimliğiyle eşleşme varsa external_cookie alanında kimliğiniz bayt değeri olarak yer alır. Orijinal kimliğinizin yeniden oluşturulması için aşağıdaki dönüşüm işlemi gerekir:

  1. external_cookie bayt olarak biçimlendirilir.
  2. Onaltılık olarak kodlanmış external_cookie.
  3. external_cookie dize olarak biçimlendirilir.

Ads Data Hub'da kullanıcı kimliklerini kodlama

UUID dizesini birinci taraf verilerinizdeki bir alanda depoluyorsanız verilerinizi başarılı bir şekilde birleştirmek için yukarıdaki örnekte olduğu gibi, dizeyi baytlara dönüştürmeniz gerekir.

Aşağıdaki örnekte, UUID'nizin nasıl kodlanacağı ve harici çerez alanında nasıl birleştirileceği gösterilmektedir:

JOIN my_data ON imp.external_cookie = FROM_HEX(REPLACE(my_data.uuid, '-', ''))

Tam sayıları baytlara dönüştüremeyeceğinizi unutmayın. Kullanıcı kimliğiniz tam sayıysa (yukarıdaki 1. örnekte olduğu gibi) önce kimliğinizi dizeye dönüştürmeniz gerekir:

JOIN my_data ON imp.external_cookie = CAST(CAST(my_data.user_id AS STRING) AS BYTES)

Verilerinizi eşleştirmek için gereken kodlamanın, verileri nasıl depoladığınıza ve Ads Data Hub'a göndermeden önce nasıl kodladığınıza bağlı olacağını unutmayın.

BigQuery SQL'deki dize işlevleri hakkında daha fazla bilgi edinin.

Örnek sorgu

Aşağıdaki örnekte, birinci taraf verileri google_ads_impressions_match ile birleştirilmekte ve ardından bu sonuçlar adh_google_ads_impressions ile ikinci bir sorguda birleştirilmektedir.

SELECT
  imp.campaign_id as campaign_id,
  sum(my_data.recent_orders) as orders,
  average(my_data.lifetime_value) as ltv
FROM
  adh.google_ads_impressions_match as imp
LEFT JOIN
  my_data ON imp.external_cookie = my_data.company_guest_id_bytes
GROUP BY
  campaign_id

Önceki sorgunun sonuçları previous_results olarak kaydedildikten sonra google_ads_impressions değerlerini birleştirebilirsiniz. Bu işlem, 0 gösterim içeren kampanyalarla ilgili verileri sonuçlarınıza ekler.

SELECT
  campaign_id,
  COALESCE(orders, 0) as orders,
  COALESCE(ltv, 0) as ltv,
FROM (SELECT DISTINCT campaign_id
   FROM adh.google_ads_impressions)
LEFT JOIN previous_results USING (campaign_id)

  1. Örnek: %20 eşleşme oranı, 50 kullanıcı toplama eşiğine ulaşmak için satır başına 250 kullanıcıya ihtiyacınız olduğu anlamına gelir (50 / 0,2 = 250). 

  2. Belirli bir gündeki eşleşmeler, 48 saate varan gecikmelerin ardından tablolarınızda görünebilir.