Jak obliczyć liczbę unikalnych użytkowników według kategorii urządzenia – GA4 BigQuery

Jednym z najczęstszych pytań w analizie danych GA4 jest to, ilu unikalnych użytkowników korzysta z serwisu na mobile, desktopie i tablecie.
W interfejsie GA4 takie dane są dostępne, ale dopiero BigQuery daje pełną kontrolę nad logiką liczenia, zakresem dat i sposobem agregacji.

W tym artykule pokażę, jak krok po kroku obliczyć unikalnych użytkowników według kategorii urządzenia (Device Category) na podstawie eksportu danych GA4 do BigQuery.

Gdzie w BigQuery znajdują się dane o urządzeniach?

GA4 w eksporcie BigQuery udostępnia wiele pól związanych z urządzeniami użytkowników.
Aby je znaleźć, wystarczy:

  • przejrzeć schemat tabel events_*,
  • wyszukać sekcję device.

Najważniejsze pole, które interesuje nas w tym przypadku, to:

  • device.category

To pole przyjmuje zazwyczaj wartości:

  • desktop
  • mobile
  • tablet

Logika liczenia użytkowników według kategorii urządzenia

Zanim przejdziemy do SQL-a, warto jasno zrozumieć logikę raportu.

Chcemy:

  • pogrupować użytkowników według kategorii urządzenia,
  • policzyć unikalnych użytkowników w każdej z tych grup.

W praktyce oznacza to:

  • kolumna Device Category → wartości z device.category,
  • kolumna Total Users → liczba unikalnych user_pseudo_id.

Dlaczego używamy user_pseudo_id?

W GA4:

  • user_pseudo_id to podstawowy identyfikator użytkownika,
  • jest stabilny w obrębie jednego urządzenia i przeglądarki,
  • pozwala liczyć unikalnych użytkowników w ramach danego zakresu danych.

Dlatego do liczenia „Total Users” zawsze stosujemy:

  • COUNT(DISTINCT user_pseudo_id).

Przygotowanie danych (warstwa pośrednia)

Dobrą praktyką jest najpierw przygotować dane w zapytaniu pomocniczym (CTE), gdzie:

  • wybieramy tylko potrzebne kolumny,
  • czyścimy puste wartości kategorii urządzenia,
  • ograniczamy zakres dat.

W tym kroku:

  • pobieramy user_pseudo_id,
  • pobieramy device.category,
  • zamieniamy puste wartości na NULL.

Przykładowe zapytanie SQL

Pamiętaj, aby podstawić własny identyfikator tabeli. W przeciwnym razie zapytanie nie zadziała.

-- Obliczanie liczby unikalnych użytkowników według kategorii urządzenia w GA4

WITH prep AS (
  SELECT
    user_pseudo_id,
    NULLIF(device.category, '') AS device_category
  FROM
    `<Your table ID>`
  WHERE
    _TABLE_SUFFIX BETWEEN '20251001' AND '20251031'
)

SELECT
  device_category,
  COUNT(DISTINCT user_pseudo_id) AS total_users
FROM
  prep
GROUP BY
  device_category
ORDER BY
  total_users DESC;

Jak interpretować wyniki?

Raport odpowiada na kluczowe pytania biznesowe:

  • jaki procent użytkowników korzysta z mobile vs desktop,
  • czy ruch mobilny rzeczywiście dominuje,
  • jak zmienia się struktura urządzeń w czasie,
  • czy warto priorytetyzować optymalizację mobilną.

Dzięki BigQuery:

  • możesz łatwo rozszerzyć raport o źródło ruchu, kampanię lub kraj,
  • możesz analizować długie zakresy danych bez ograniczeń GA4 UI,
  • masz pełną kontrolę nad definicją „użytkownika”.

Najważniejsza lekcja

SQL jest prosty.
Najważniejsze jest zrozumienie logiki danych:

  • skąd pochodzi wymiar (device.category),
  • co dokładnie liczymy (unikalny user_pseudo_id),
  • w jakim zakresie dat,
  • na jakim poziomie agregacji.

Gdy rozumiesz logikę:

  • możesz generować zapytania ręcznie,
  • albo z pomocą AI,
  • i skalować to podejście na dziesiątki raportów.

Podobne wpisy