Google Analytics kullanıcı arayüzü ile BigQuery Export arasındaki boşluğu doldurun

Minhaz Kazi, Geliştirici Destekçisi, Google Analytics – Nisan 2023


"Peki, sayılar neden kullanıcı arayüzüyle eşleşmiyor?"

GA4 mülkünüz için BigQuery etkinlik dışa aktarma verileriyle çalıştıysanız bu soruyu bir noktada sordunuz. Daha da kötüsü, başka biri size bunu sordu. Soruyu cevaplamaya çalışırken muhtemelen hakkındaki korkunç takip sorusu:

"Peki bu nerede yazıyor?"

Bu gönderide, her ikisine de ışık tutmaya çalışacağız.

Rakamların nasıl değişiklik gösterdiğine ilişkin ayrıntılara geçmeden önce, BigQuery etkinlik dışa aktarma verilerinin amaçlanan amacı. Google Analytics kullanıcıları aşağıdaki yöntemlerden birini kullanarak toplanmış verileri GA'ya gönderebilir: Google Etiket, Google Etiket Yöneticisi, Measurement Protocol, SDK'lar ve Verileri İçe Aktarma. Google Analytics, GA mülkünün ayarlarına bağlı olarak önemli bir değer yapar standart raporlama platformlarına ulaşmadan önce toplanan verilere ek standart raporlar, Explorations ve Veri API'si dahil. Bu değerler Google sinyallerinin dahil edilmesi, modelleme, trafik ve ilişkilendirme, tahmin vb.

Standart raporlama platformları, GA kullanıcılarına en yüksek değeri sorunu çözebilir. Ancak geniş kullanıcı skalasında, bazıları Google Analytics'in sağladığı değer katkılarını tamamlamak veya bir hale getirebilirsiniz. Bu kullanıcılar için BigQuery etkinlik dışa aktarımı belirli bir başlangıç noktası görevi görebilir. BigQuery etkinlik dışa aktarımında toplanan veriler, ve istemciden veya uygulamadan Google Analytics'e gönderilen bir veridir. BigQuery etkinliğini dışa aktarma yukarıda bahsedilen çoğu değer eklemesiyle ilgili ayrıntılı veriler içermez.

Böylece, çok sayıda kullanım alanında standart raporlama platformları ve Bu politikalar söz konusu olduğunda BigQuery Export verilerinin mutabakatı beklenemez. değer katan kısımları. Her ikisinde de iç tutarlılık varsa ve bunlar eşleşiyorsa bu verileri topladıysanız devam edebilirsiniz.

Şimdi de farklılıkların nedenlerinden bazılarına göz atalım ve yöntemlerine göz atacağız. Bu yazının odak noktası, BigQuery Akış dışa aktarma işlemi değil, yalnızca günlük etkinlik dışa aktarma işlemi.

Örnekleme

BigQuery Export verilerinizi standart raporlarla doğru şekilde karşılaştırmak için, API raporları veya Keşif raporları, bunların örneklenmiş verilere dayanmadığını onaylar. GA4'teki Veri Örnekleme, daha ayrıntılı bilgi ve örneklemeyi ele alma yöntemleri sağlar.

Etkin kullanıcı sayısı

GA4'e en az bir etkinlik kaydeden tüm kullanıcıları sayıyorsanız Toplam Kullanıcı Sayısı metriğini görürsünüz. Toplam Kullanıcı Sayısı metriği, GA4 kullanıcı arayüzündeki Explorations bölümünde bulunur. Bu metrik, GA4'teki raporlama özelliği etkin kullanıcı sayısı olarak ayarlanmıştır. GA4 kullanıcı arayüzünde ve raporlarda yalnızca Kullanıcılar Burada genellikle Etkin Kullanıcı Sayısı anlamına gelir. Bu nedenle, kullanıcı sayısını gösterirken, yalnızca etkin kullanıcıları filtrelemeniz ve ve GA kullanıcı arayüzüyle karşılaştırılabilir hale getirmek için. Hesaplama yöntemi ayrıca seçtiğiniz Raporlama Kimliğine göre farklılık gösterir.

Teknik uygulama

BigQuery etkinlik dışa aktarma verilerinde farklı User-ID'leri sayarsanız Toplam Kullanıcı Sayısı gösterilir. Burada, hem Toplam user_pseudo_id bazında Kullanıcılar ve Yeni Kullanıcılar:

-- Example: Get 'Total User' count and 'New User' count.

WITH
  UserInfo AS (
    SELECT
      user_pseudo_id,
      MAX(IF(event_name IN ('first_visit', 'first_open'), 1, 0)) AS is_new_user
    -- Replace table name.
    FROM `bigquery-public-data.ga4_obfuscated_sample_ecommerce.events_*`
    -- Replace date range.
    WHERE _TABLE_SUFFIX BETWEEN '20201101' AND '20201130'
    GROUP BY 1
  )
SELECT
  COUNT(*) AS user_count,
  SUM(is_new_user) AS new_user_count
FROM UserInfo;

Yalnızca etkin kullanıcıları seçmek için sorgunuzu is_active_user olan etkinliklerle sınırlandırın - true:

-- Example: Get exact and approximate Active User count.

WITH
  ActiveUsers AS (
    SELECT
      user_pseudo_id
    -- Replace table name.
    FROM `bigquery-public-data.ga4_obfuscated_sample_ecommerce.events_*`
    -- Replace date range.
    WHERE _TABLE_SUFFIX BETWEEN '20201101' AND '20201130'
      AND is_active_user
    GROUP BY 1
  )
SELECT
  COUNT(DISTINCT user_pseudo_id) AS exact_active_user_count,
  APPROX_COUNT_DISTINCT(user_pseudo_id) AS approx_active_user_count
FROM ActiveUsers;

HyperLogLog++

Google Analytics, kardinaliteyi tahmin etmek için HyperLogLog++ (HLL++) algoritmasını kullanır sık kullanılan metrikler için (Etkin Kullanıcı Sayısı ve Oturum Sayısı dahil) Yani, bir proje için bu metriklerin kullanıcı arayüzünde veya API üzerinden benzersiz sayısını tahmine dayalı sonuçlar verir. BigQuery'de, BigQuery'de ayrıntılı verilere sahipseniz bu metriklerin tam kardinalitesini hesaplayabilirsiniz. ODK metrikler küçük bir yüzdede değişiklik gösterebilir. %95 güven aralığında hassasiyet, oturum sayısı için ±% 1,63 olabilir. Hassasiyet düzeyleri, proje yönetiminde ve güven aralıklarına göre değişir. Görüntüleyin Farklı güven aralıklarındaki hassasiyet seviyeleri için HLL++ Çizimler için farklı hassasiyet parametreleri bulunmaktadır.

Teknik uygulama

HLL++'nın nasıl çalıştığını anlamak için Google Analytics'te benzersiz sayı yaklaşımı'na bakın. ve aynı sürümde aynı işleve sahip .

Veri toplama gecikmesi

Günlük dışa aktarma tabloları, GA'nın ilgili güne ilişkin tüm etkinlikleri toplamasından sonra oluşturulur. Günlük tablolar, tablo tarihinden 72 saat sonrasına kadar güncellenebilir tablonun tarihiyle zaman damgalı etkinlikler içerir. Ayrıntıları okuyun ve örneklere göz atın. Bu durum daha çok Firebase SDK'sı veya Measurement Protocol uygulamanız, verileri ertelenmiş olaylar. Standart raporlama yüzeyinin ve BigQuery'nin, bu 72 saat içinde güncellendiyse, dikkat edin. Bu tür bir uygulama için eski veriler üzerinde karşılaştırmalar yapılmalıdır. 72 saatten fazla.

Yüksek kardinaliteli raporlar

Bir raporu standart raporlar veya Data API aracılığıyla görüntülediğinizi varsayalım. Rapor, büyük miktarda veri gösteriyor ve boyutları yüksek kardinalite. Yüksek kardinaliteli boyutlar, raporun kardinalite sınırını yükseltin. Böyle bir durumda, Google Analytics daha seyrek rastlanan değerleri gruplandırır ve (diğer) olarak etiketler.

Basitleştirilmiş ve küçük ölçekli bir örnek kullanarak, temel tablo 10 satır ise aşağıdaki şekilde olmasını bekleyebilirsiniz:

Kesin doğruluk verileri ile diğer verileri içeren birleştirilmiş tablo karşılaştırması için basitleştirilmiş örnek
satır

Gördüğünüz gibi toplam etkinlik sayısı değişmez. Ancak daha az bir araya getirildiğinde tabloyu, ilk girdiğiniz herhangi bir boyutta (ör. birleştirilmiş tabloyu alıp toplam belirli bir şehirdeki etkinlik sayısını yüksek kesinlikte bulabilirsiniz). Örnek, daha fazla herhangi bir boyuta dayalı olarak birleştirilmiş verilere filtre uygularsanız daha yüksek ayrıntıya ulaşabilirsiniz.

(other) satırının bu gruplandırılması yalnızca raporlama modülünde ve Rapor kardinalite sınırını aştığında Data API. hesaplamalarınızda her zaman kesin referans verileri elde edersiniz; satırlarda daha fazla yer alır. (other) satırı ve şu konuyla ilgili en iyi uygulamalar hakkında daha fazla bilgi edinin: nasıl korunacağınızı öğrenin.

Google Sinyalleri

GA4 mülkünüzde Google sinyallerini etkinleştirmenin aşağıdakiler gibi çeşitli avantajları vardır: kullanıcıları farklı platformlar ve cihazlar genelinde tekilleştirme. Kullanıcı bilgilerini almazsanız Kimlik doğrulaması veya Google sinyallerini etkinleştirme ve bir kullanıcı web sitenizi varsa, Google Analytics bu etkinliği üç farklı web tarayıcısında farklı kullanıcılar oluşturabilir ve BigQuery Export'un üç ayrı user_pseudo_id'i olur. Bunun aksine, Google sinyalleri etkinleştirilmiş ve kullanıcı üç tarayıcının tamamında tek bir Google Hesabı oluşturabilirsiniz. Google Analytics, etkinliği bir kullanıcıya bildirir ve bu sayıyı standart raporlama platformlarına yansıtır. Ancak BigQuery yine de üç ayrı user_pseudo_id göstermeye devam eder çünkü BigQuery Export'ta Google sinyalleriyle ilgili bilgiler yok. Böylece, Google sinyalleri verileri içeren raporların kullanıcı sayısı muhtemelen daha az olacaktır verileri BigQuery'ye aktarın.

Bu etkiyi azaltmanın en iyi yolu GA4'te User-ID'leri uygulamaktır. özelliğini etkinleştirdiğinizden emin olun. Böylece, tekilleştirme, ilk olarak user_id temelinde gerçekleşir. Oturum açmış kullanıcılar için user_id alanı BigQuery'de doldurulur ve hesaplama amacıyla kullanılabilir. Ancak oturum açmamış kullanıcılar (user_id içermeyen oturumlar) için Google sinyalleri, tekilleştirme için kullanılmaya devam eder.

Ayrıca, standart raporlama platformlarındaki belirli raporlarda, eşik uygulanır ve belirli verileri döndürmez. Paydaşlarla toplantı yaparken genellikle BigQuery Export'ta kullanılamaz.

Web sitelerinde ve mobil uygulamalarda izin modu, kullanıcılarınızın çerez veya uygulama tanımlayıcısı izin durumunu Google'a bildirir. Ziyaretçiler izin vermeyi reddettiğinde GA4, veri toplama sürecindeki eksiklikleri önemli etkinlik modellemesi ve davranışsal hakkında daha fazla bilgi edinin. Modellenmiş verilerin hiçbiri BigQuery etkinlik dışa aktarımında kullanılamaz. İzin modu uygulandığında BigQuery veri kümesi çerezsiz ping'ler içerir GA tarafından toplanır ve her oturum farklı bir user_pseudo_id değerine sahip olur. Kaynak: standart raporlama platformları ile standart raporlama platformları arasında BigQuery'deki ayrıntılı veriler. Örneğin, davranış modelleme nedeniyle etkin kullanıcı sayısı, BigQuery Export'a kıyasla daha az olabilir. modelleme, izin verilmeyen bireysel kullanıcıların birden fazla oturumunu tahmin etmeye yardımcı olur.

Bunun etkisini azaltmak için GA4'te User-ID'leri uygulamanız gerekir. user_id boyutları ve özel boyutlar onay durumunu öğrenebilirsiniz.

Trafik ilişkilendirme verileri

BigQuery'de trafik ilişkilendirme verileri kullanıcıda (ilk ziyaret) ve etkinlik düzeyi. Bunlar toplanan verilerdir. Ancak Google Analytics oturum düzeyinde kendi ilişkilendirme modelini uygular. Bu model, ne doğrudan BigQuery Export'ta kullanılabilir ne de tam tutarlı verilerdir. Kullanım alanınıza bağlı olarak şunları göz önünde bulundurabilirsiniz: BigQuery veri kümesini ilgili birinci taraf verileriyle birleştirerek ilişkilendirme modelinizi kullanmanız önerilir. Gelecekte, trafik için toplanan ek veriler ilişkilendirme, BigQuery etkinlik dışa aktarımı aracılığıyla kullanılabilir.

Sık karşılaşılan hesaplama hataları

  • Hesaplama yöntemi: BigQuery'de farklı metrikler hesaplanırken, doğru yöntemi kullandığınızdan emin olun. Örnek:
    • Google Analytics 4'te oturumları saymanın standart yöntemi her bir özelliğin benzersiz kombinasyonlarını sayıyor. Şundan bağımsız olarak user_pseudo_id/user_id ve ga_session_id: daha yüksek olacaktır. Universal Analytics'te oturumlar gece yarısı sıfırlanır. Eğer UA modelini izler, her gün için oturum sayısını hesaplar ve bunları hesabınıza eklersiniz sayısını ikiye katlarsanız oturumun toplam oturum sayısını birden fazla güne yayılan oturumlar.
    • Seçtiğiniz Raporlama Kimliği'ne bağlı olarak kullanıcı sayısı güncellenmesi gerekecektir.
  • Boyut ve metrik kapsamı: Hesaplarınızın oturum, öğe veya etkinlik düzeyinde kapsama sahip olursunuz.
  • Saat Dilimi: BigQuery Export'ta raporlama zamanı event_date'dir. alt bölgesi, event_timestamp ise mikrosaniye cinsinden bir UTC zaman damgasıdır. ODK ideal olarak, sorguda event_timestamp kullanılıyorsa bunun için ayarlanması gerekir doğru raporlama saat dilimini kullanır.
  • Veri filtreleme ve dışa aktarma sınırları: Aşağıdakiler için Veri Filtreleme'yi ayarladıysanız BigQuery etkinlik dışa aktarma hacminiz veya günlük etkinlik dışa aktarma hacminiz aşıldı izin verilmezse BigQuery etkinlik dışa aktarma verileri, standart raporlama platformları.

Tüm bunlara ek olarak, bu yayında UNNEST ile ilgili bir nokta da var. Umarım şunları seçebilirsiniz: DISTINCT projeniz için doğru çözümleri buradaki yönergelerden öğrenebilirsiniz. Şu durumda: sorularınız varsa GA Discord sunucusuna KATILIN NEREDE sorgular en çok kabul edilir?