Kasus Penggunaan Lanjutan

Dokumen ini menjelaskan beberapa fitur lanjutan Google Analytics Data API v1. Untuk referensi API mendetail, lihat Referensi API.

Mencantumkan Definisi Kustom dan Membuat Laporan

Data API dapat membuat laporan tentang Dimensi Kustom dan Metrik Kustom yang terdaftar. Metode Metadata API dapat digunakan untuk mencantumkan nama API dari Definisi Kustom yang terdaftar di Properti Anda. Nama API ini dapat digunakan dalam Permintaan Melaporkan Permintaan ke metode runReport, misalnya.

Bagian berikut menunjukkan contoh untuk setiap jenis Definisi Kustom. Dalam contoh ini, ganti GA4_PROPERTY_ID dengan ID Properti Anda.

Dimensi Kustom Cakupan Peristiwa

Langkah 1: Buat kueri Metode Metadata API dengan ID Properti Anda.

GET https://analyticsdata.googleapis.com/v1beta/properties/GA4_PROPERTY_ID/metadata

Langkah 2: Temukan Dimensi Kustom Cakupan Peristiwa yang ingin Anda buat laporannya dari respons. Jika dimensi tidak ada, Anda perlu mendaftarkan dimensi tersebut.

"dimensions": [
...
    {
      "apiName": "customEvent:achievement_id",
      "uiName": "Achievement ID",
      "description": "An event scoped custom dimension for your Analytics property."
    },
...
],

Langkah 3: Sertakan dimensi kustom dalam permintaan laporan. Berikut adalah contoh permintaan untuk metode runReport.

POST https://analyticsdata.googleapis.com/v1beta/properties/GA4_PROPERTY_ID:runReport
{
  "dateRanges": [{ "startDate": "2020-09-01", "endDate": "2020-09-15" }],
  "dimensions": [{ "name": "customEvent:achievement_id" }],
  "metrics": [{ "name": "eventCount" }]
}

Dimensi Kustom Cakupan Pengguna

Langkah 1: Buat kueri Metode Metadata API dengan ID Properti Anda.

GET https://analyticsdata.googleapis.com/v1beta/properties/GA4_PROPERTY_ID/metadata

Langkah 2: Temukan Dimensi Kustom Cakupan Pengguna yang ingin Anda buat laporannya dari respons. Jika dimensi tidak ada, Anda perlu mendaftarkan dimensi tersebut.

"dimensions": [
...
    {
      "apiName": "customUser:last_level",
      "uiName": "Last level",
      "description": "A user property for your Analytics property."
    },
...
],

Langkah 3: Sertakan dimensi kustom dalam permintaan laporan. Berikut adalah contoh permintaan untuk metode runReport.

POST https://analyticsdata.googleapis.com/v1beta/properties/GA4_PROPERTY_ID:runReport
{
  "entity": { "propertyId": "GA4_PROPERTY_ID" },
  "dateRanges": [{ "startDate": "7daysAgo", "endDate": "yesterday" }],
  "dimensions": [{ "name": "customUser:last_level" }],
  "metrics": [{ "name": "activeUsers" }]
}

Metrik Kustom Cakupan Peristiwa

Langkah 1: Buat kueri Metode Metadata API dengan ID Properti Anda.

GET https://analyticsdata.googleapis.com/v1beta/properties/GA4_PROPERTY_ID/metadata

Langkah 2: Temukan Metrik Kustom Cakupan Peristiwa yang ingin Anda buat laporannya dari respons. Jika metrik tidak ada, Anda harus mendaftarkan metrik tersebut.

"metrics": [
...
    {
      "apiName": "customEvent:credits_spent",
      "uiName": "Credits Spent",
      "description": "An event scoped custom metric for your Analytics property.",
      "type": "TYPE_STANDARD"
    },
...
],

Langkah 3: Sertakan metrik kustom dalam permintaan laporan. Berikut adalah contoh permintaan untuk metode runReport.

POST https://analyticsdata.googleapis.com/v1beta/properties/GA4_PROPERTY_ID:runReport
{
  "dateRanges": [{ "startDate": "30daysAgo", "endDate": "yesterday" }],
  "dimensions": [{ "name": "eventName" }],
  "metrics": [{ "name": "customEvent:credits_spent" }]
}

Metrik Rasio Konversi Untuk Satu Konversi

Langkah 1: Buat kueri Metode Metadata API dengan ID Properti Anda.

GET https://analyticsdata.googleapis.com/v1beta/properties/GA4_PROPERTY_ID/metadata

Langkah 2: Temukan Metrik Rasio Konversi Untuk Satu Konversi yang ingin Anda buat laporannya dari respons. Jika peristiwa konversi tidak ada, Anda perlu menyiapkan peristiwa konversi.

"metrics": [
...
    {
      "apiName": "sessionConversionRate:add_to_cart",
      "uiName": "Session conversion rate for add_to_cart",
      "description": "The percentage of sessions in which a specific conversion event was triggered",
    },
...
],

Langkah 3: Sertakan metrik rasio konversi dalam permintaan laporan. Berikut adalah contoh permintaan untuk metode runReport.

POST https://analyticsdata.googleapis.com/v1beta/properties/GA4_PROPERTY_ID:runReport
{
  "dateRanges": [{ "startDate": "30daysAgo", "endDate": "yesterday" }],
  "dimensions": [{ "name": "eventName" }],
  "metrics": [{ "name": "sessionConversionRate:add_to_cart" }]
}

Rata-Rata Metrik Kustom Cakupan Peristiwa

Langkah 1: Buat kueri Metode Metadata API dengan ID Properti Anda.

GET https://analyticsdata.googleapis.com/v1beta/properties/GA4_PROPERTY_ID/metadata

Langkah 2: Temukan Rata-Rata Metrik Kustom Cakupan Peristiwa yang ingin Anda buat laporannya dari respons. Jika metrik tidak ada, Anda harus mendaftarkan metrik tersebut.

"metrics": [
...
    {
      "apiName": "averageCustomEvent:credits_spent",
      "uiName": "Average Credits Spent",
      "description": "The average of an event scoped custom metric for your Analytics property.",
      "type": "TYPE_STANDARD"
    },
...
],

Langkah 3: Sertakan rata-rata metrik kustom dalam permintaan laporan. Berikut adalah contoh permintaan untuk metode runReport.

POST https://analyticsdata.googleapis.com/v1beta/properties/GA4_PROPERTY_ID:runReport
{
  "dateRanges": [{ "startDate": "2020-11-01", "endDate": "2020-11-10" }],
  "dimensions": [{ "name": "eventName" }],
  "metrics": [{ "name": "averageCustomEvent:credits_spent" }]
}

Contoh Laporan Kelompok

Laporan kelompok membuat deret waktu retensi pengguna untuk kelompok tersebut. Untuk dokumentasi terperinci setiap kolom API, lihat referensi REST untuk driveSpec.

Membuat laporan kelompok

Berikut adalah contoh laporan kelompok yang:

  • Kelompoknya adalah pengguna dengan firstSessionDate 2020-12-01; ini dikonfigurasi oleh objek cohorts. Dimensi dan metrik dalam respons laporan hanya akan didasarkan pada pengguna kelompok.
  • Laporan kelompok akan menampilkan tiga kolom; ini dikonfigurasi oleh objek dimensi dan metrik.
    • Dimensi cohort adalah nama kelompok.
    • Dimensi cohortNthDay adalah jumlah hari sejak 2020-12-01.
    • Metrik cohortActiveUsers adalah jumlah pengguna yang masih aktif.
  • Objek cohortsRange menentukan bahwa laporan harus berisi data peristiwa yang dimulai dari 2020-12-01 dan berakhir pada 2020-12-06 untuk kelompok ini.
    • Ketika perincian DAILY digunakan, dimensi cohortNthDay direkomendasikan untuk konsistensi.

Permintaan laporan untuk kelompok tersebut adalah:

POST https://analyticsdata.googleapis.com/v1beta/properties/GA4_PROPERTY_ID:runReport
{
  "dimensions": [{ "name": "cohort" }, { "name": "cohortNthDay" }],
  "metrics": [{ "name": "cohortActiveUsers" }],
  "cohortSpec": {
    "cohorts": [
      {
        "dimension": "firstSessionDate",
        "dateRange": { "startDate": "2020-12-01", "endDate": "2020-12-01" }
      }
    ],
    "cohortsRange": {
      "endOffset": 5,
      "granularity": "DAILY"
    }
  },
}

Untuk permintaan ini, contoh respons laporan adalah:

{
  "dimensionHeaders": [
    { "name": "cohort" }, { "name": "cohortNthDay" }
  ],
  "metricHeaders": [
    { "name": "cohortActiveUsers", "type": "TYPE_INTEGER" }
  ],
  "rows": [
    {
      "dimensionValues": [{ "value": "cohort_0" },{ "value": "0000" }],
      "metricValues": [{ "value": "293" }]
    },
    {
      "dimensionValues": [{ "value": "cohort_0" },{ "value": "0001" }],
      "metricValues": [{ "value": "143" }]
    },
    {
      "dimensionValues": [{ "value": "cohort_0" },{ "value": "0002" }],
      "metricValues": [{ "value": "123" }]
    },
    {
      "dimensionValues": [{ "value": "cohort_0" },{ "value": "0003" }],
      "metricValues": [{ "value": "92" }]
    },
    {
      "dimensionValues": [{ "value": "cohort_0" },{ "value": "0005" }],
      "metricValues": [{ "value": "86" }]
    },
    {
      "dimensionValues": [{ "value": "cohort_0" },{ "value": "0004" }],
      "metricValues": [{ "value": "83" }]
    }
  ],
  "metadata": {},
  "rowCount": 6
}

Dari respons laporan ini, diagram untuk laporan Kelompok ini akan mengikuti. Insight dari laporan ini menunjukkan bahwa penurunan terbesar pada pengguna aktif untuk kelompok ini antara hari pertama dan kedua.

Visualisasi pengguna kelompok dari waktu ke waktu

Beberapa kelompok dan bagian retensi pengguna

Akuisisi dan retensi pengguna adalah cara untuk mengembangkan Situs atau Aplikasi Anda. Laporan kelompok berfokus pada retensi pengguna. Dalam contoh ini, laporan menunjukkan bahwa properti ini telah meningkatkan retensi pengguna 4 hari sebesar 10% selama dua minggu.

Untuk membuat laporan ini, kami menentukan tiga kelompok: kelompok pertama dengan firstSessionDate 2020-11-02, kelompok kedua dengan firstSessionDate 2020-11-09, dan kelompok ketiga dengan firstSessionDate 2020-11-16. Karena jumlah pengguna di properti Anda akan berbeda selama tiga hari ini, kami membandingkan metrik fraksi retensi pengguna kelompok cohortActiveUsers/cohortTotalUsers, bukan menggunakan metrik cohortActiveUsers langsung.

Permintaan laporan untuk kelompok ini adalah:

POST https://analyticsdata.googleapis.com/v1beta/properties/GA4_PROPERTY_ID:runReport
{
  "dimensions": [{ "name": "cohort" },{ "name": "cohortNthDay" }],
  "metrics": [
    {
      "name": "cohortRetentionFraction",
      "expression": "cohortActiveUsers/cohortTotalUsers"
    }
  ],
  "cohortSpec": {
    "cohorts": [
      {
        "dimension": "firstSessionDate",
        "dateRange": { "startDate": "2020-11-02", "endDate": "2020-11-02" }
      },
      {
        "dimension": "firstSessionDate",
        "dateRange": { "startDate": "2020-11-09", "endDate": "2020-11-09" }
      },
      {
        "dimension": "firstSessionDate",
        "dateRange": { "startDate": "2020-11-16", "endDate": "2020-11-16" }
      }
    ],
    "cohortsRange": {
      "endOffset": 4,
      "granularity": "DAILY"
    }
  },
}

Untuk permintaan ini, contoh respons laporan adalah:

{
  "dimensionHeaders": [{ "name": "cohort" },{ "name": "cohortNthDay" }],
  "metricHeaders": [{
      "name": "cohortRetentionFraction",
      "type": "TYPE_FLOAT"
    }
  ],
  "rows": [
    {
      "dimensionValues": [{ "value": "cohort_0" },{ "value": "0000" }],
      "metricValues": [{ "value": "1" }]
    },
    {
      "dimensionValues": [{ "value": "cohort_1" },{ "value": "0000" }],
      "metricValues": [{ "value": "1" }]
    },
    {
      "dimensionValues": [{ "value": "cohort_2" },{ "value": "0000" }],
      "metricValues": [{ "value": "1" }]
    },
    {
      "dimensionValues": [{ "value": "cohort_2" },{ "value": "0001" }],
      "metricValues": [{ "value": "0.308" }]
    },
    {
      "dimensionValues": [{ "value": "cohort_1" },{ "value": "0001" }],
      "metricValues": [{ "value": "0.272" }]
    },
    {
      "dimensionValues": [{ "value": "cohort_2" },{ "value": "0002" }],
      "metricValues": [{ "value": "0.257" }]
    },
    {
      "dimensionValues": [{ "value": "cohort_0" },{ "value": "0001" }],
      "metricValues": [{ "value": "0.248" }]
    },
    {
      "dimensionValues": [{ "value": "cohort_2" },{ "value": "0003" }],
      "metricValues": [{ "value": "0.235" }]
    },
    {
      "dimensionValues": [{ "value": "cohort_2" },{ "value": "0004" }],
      "metricValues": [{ "value": "0.211" }]
    },
    {
      "dimensionValues": [{ "value": "cohort_1" },{ "value": "0002" }],
      "metricValues": [{ "value": "0.198" }]
    },
    {
      "dimensionValues": [{ "value": "cohort_0" },{ "value": "0002" }],
      "metricValues": [{ "value": "0.172" }]
    },
    {
      "dimensionValues": [{ "value": "cohort_1" },{ "value": "0003" }],
      "metricValues": [{ "value": "0.167" }]
    },
    {
      "dimensionValues": [{ "value": "cohort_1" },{ "value": "0004" }],
      "metricValues": [{ "value": "0.155" }]
    },
    {
      "dimensionValues": [{ "value": "cohort_0" },{ "value": "0003" }],
      "metricValues": [{ "value": "0.141" }]
    },
    {
      "dimensionValues": [{ "value": "cohort_0" },{ "value": "0004" }],
      "metricValues": [{ "value": "0.118" }]
    }
  ],
  "metadata": {},
  "rowCount": 15
}

Dari respons laporan ini, diagram untuk laporan Kelompok ini akan mengikuti. Berdasarkan insight dari laporan ini, retensi pengguna 4 hari meningkat sebesar 10% selama dua minggu. Kelompok berikutnya dengan firstSessionDate sebesar 2020-11-16 melebihi retensi kelompok sebelumnya dengan firstSessionDate 2020-11-02.

Diagram beberapa retensi kelompok

Kelompok mingguan dan Menggunakan kelompok dengan fitur API lainnya

Untuk menghapus variasi harian dalam perilaku pengguna, gunakan kelompok mingguan. Dalam laporan kohor mingguan, semua pengguna dengan firstSessionDate di minggu yang sama membentuk kohor. Minggu dimulai pada hari Minggu dan berakhir pada hari Sabtu. Dalam laporan ini, kami juga memotong kelompok untuk membandingkan pengguna yang memiliki aktivitas di Rusia dengan pengguna yang memiliki aktivitas di Meksiko. Pemotongan ini menggunakan dimensi country dan dimensionFilter untuk hanya mempertimbangkan kedua negara.

Permintaan laporan untuk kelompok ini adalah:

POST https://analyticsdata.googleapis.com/v1beta/properties/GA4_PROPERTY_ID:runReport
{
  "dimensions": [
    { "name": "cohort" },
    { "name": "cohortNthWeek" },
    { "name": "country" }
  ],
  "metrics": [{ "name": "cohortActiveUsers" }],
  "dimensionFilter": {
    "filter": {
      "fieldName": "country",
      "inListFilter": {
        "values": [ "Russia", "Mexico" ]
      }
    }
  },
  "cohortSpec": {
    "cohorts": [
      {
        "dimension": "firstSessionDate",
        "dateRange": {
          "startDate": "2020-10-04",
          "endDate": "2020-10-10"
        }
      }
    ],
    "cohortsRange": {
      "endOffset": 5,
      "granularity": "WEEKLY"
    }
  },
}

Untuk permintaan ini, contoh respons laporan adalah:

{
  "dimensionHeaders": [
    { "name": "cohort" },
    { "name": "cohortNthWeek" },
    { "name": "country" }
  ],
  "metricHeaders": [
    { "name": "cohortActiveUsers", "type": "TYPE_INTEGER" }
  ],
  "rows": [
    {
      "dimensionValues": [
        { "value": "cohort_0" },{ "value": "0000" },{ "value": "Russia" }
      ],
      "metricValues": [{ "value": "105" }]
    },
    {
      "dimensionValues": [
        { "value": "cohort_0" },{ "value": "0000" },{ "value": "Mexico" }
      ],
      "metricValues": [{ "value": "98" }]
    },
    {
      "dimensionValues": [
        { "value": "cohort_0" },{ "value": "0001" },{ "value": "Mexico" }
      ],
      "metricValues": [{ "value": "35" }]
    },
    {
      "dimensionValues": [
        { "value": "cohort_0" },{ "value": "0002" },{ "value": "Mexico" }
      ],
      "metricValues": [{ "value": "24" }]
    },
    {
      "dimensionValues": [
        { "value": "cohort_0" },{ "value": "0001" },{ "value": "Russia" }
      ],
      "metricValues": [{ "value": "23" }]
    },
    {
      "dimensionValues": [
        { "value": "cohort_0" },{ "value": "0004" },{ "value": "Mexico" }
      ],
      "metricValues": [{ "value": "17" }]
    },
    {
      "dimensionValues": [
        { "value": "cohort_0" },{ "value": "0003" },{ "value": "Mexico" }
      ],
      "metricValues": [{ "value": "15" }]
    },
    {
      "dimensionValues": [
        { "value": "cohort_0" },{ "value": "0005" },{ "value": "Mexico" }
      ],
      "metricValues": [{ "value": "15" }]
    },
    {
      "dimensionValues": [
        { "value": "cohort_0" },{ "value": "0002" },{ "value": "Russia" }
      ],
      "metricValues": [{ "value": "3" }]
    },
    {
      "dimensionValues": [
        { "value": "cohort_0" },{ "value": "0003" },{ "value": "Russia" }
      ],
      "metricValues": [{ "value": "1" }]
    },
    {
      "dimensionValues": [
        { "value": "cohort_0" },{ "value": "0004" },{ "value": "Russia" }
      ],
      "metricValues": [{ "value": "1" }]
    }
  ],
  "metadata": {},
  "rowCount": 11
}

Dari respons laporan ini, diagram laporan Kelompok ini akan muncul. Berdasarkan laporan ini, properti ini berperforma lebih baik dalam mempertahankan pengguna yang beraktivitas di Meksiko daripada pengguna yang beraktivitas di Rusia.

Diagram kelompok perbandingan negara