Gelişmiş Kullanım Alanları

Bu belgede, Google Analytics Data API v1'in çeşitli gelişmiş özellikleri açıklanmaktadır. API'nin ayrıntılı referansı için API Referansı'na bakın.

Özel tanımları listeleme ve rapor oluşturma

Data API, kayıtlı özel boyutlar ve özel metrikler hakkında raporlar oluşturabilir. Metadata API Method, mülkünüzün kayıtlı özel tanımlarının API adlarını listelemek için kullanılabilir. Bu API adları, örneğin runReport yöntemi için rapor isteklerinde kullanılabilir.

Aşağıdaki bölümlerde her Özel Tanım türü için örnekler verilmiştir. Bu örneklerde GA_PROPERTY_ID yerine mülk kimliğinizi yazın.

Etkinlik kapsamlı özel boyutlar

1. adım: Mülk kimliğinizle Metadata API Yöntemi'ni sorgulayın.

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

2. adım: Yanıttan, rapor oluşturmak istediğiniz etkinlik kapsamlı özel boyutu bulun. Boyut mevcut değilse boyutu kaydetmeniz gerekir.

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

3. adım: Özel boyutu bir rapor isteğine ekleyin. Aşağıda, runReport yöntemine yönelik örnek bir istek verilmiştir.

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

Kullanıcı kapsamlı özel boyutlar

1. adım: Mülk kimliğinizle Metadata API Yöntemi'ni sorgulayın.

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

2. adım: Yanıttan, rapor oluşturmak istediğiniz kullanıcı kapsamlı özel boyutu bulun. Boyut mevcut değilse boyutu kaydetmeniz gerekir.

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

3. adım: Özel boyutu bir rapor isteğine ekleyin. Aşağıda, runReport yöntemine yönelik örnek bir istek verilmiştir.

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

Etkinlik kapsamlı özel metrikler

1. adım: Mülk kimliğinizle Metadata API Yöntemi'ni sorgulayın.

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

2. adım: Yanıttan, rapor oluşturmak istediğiniz etkinlik kapsamlı özel metriği bulun. Metrik yoksa kaydetmeniz gerekir.

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

3. adım: Özel metriği bir rapor isteğine dahil edin. Aşağıda, runReport yöntemine yönelik örnek bir istek verilmiştir.

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

Tek bir önemli etkinliğin önemli etkinlik oranı metrikleri

1. adım: Mülk kimliğinizle Metadata API Method'u sorgulayın.

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

2. adım: Yanıttan, rapor oluşturmak istediğiniz bir önemli etkinliğin önemli etkinlik oranı metriğini bulun. Önemli etkinlik mevcut değilse önemli etkinliği ayarlamanız gerekir.

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

3. adım: Önemli etkinlik oranı metriğini bir rapor isteğine ekleyin. Aşağıda, runReport yöntemine yönelik örnek bir istek verilmiştir.

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

Etkinlik kapsamlı özel metrik ortalamaları

1. adım: Mülk kimliğinizle Metadata API Yöntemi'ni sorgulayın.

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

2. adım: Yanıttan, rapor oluşturmak istediğiniz etkinlik kapsamlı özel metrik ortalamasını bulun. Metrik yoksa kaydetmeniz gerekir.

"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"
    },
...
],

3. adım: Özel metrik ortalamasını bir rapor isteğine dahil edin. Aşağıda, runReport yöntemine yönelik örnek bir istek verilmiştir.

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

Kullanıcı grubu raporu örnekleri

Kullanıcı grubu raporları, kullanıcı grubu için kullanıcı elde tutma oranının zaman serisini oluşturur. Her API alanı hakkında ayrıntılı doküman için CohortSpec için REST referansı bölümüne bakın.

Kohort raporu oluşturma

Aşağıda, örnek bir grup raporu verilmiştir. Bu raporda:

  • Grup, firstSessionDate değeri 2020-12-01 olan kullanıcılardan oluşur. Bu, cohorts nesnesi tarafından yapılandırılır. Rapor yanıtındaki boyutlar ve metrikler yalnızca kohortun kullanıcılarına göre belirlenir.
  • Kullanıcı grubu raporunda üç sütun gösterilir. Bu sütunlar, boyutlar ve metrikler nesneleri tarafından yapılandırılır.
    • cohort boyutu, grubun adıdır.
    • cohortNthDay boyutu, 2020-12-01 tarihinden itibaren geçen gün sayısıdır.
    • cohortActiveUsers metriği, hâlâ etkin olan kullanıcıların sayısıdır.
  • cohortsRange nesnesi, raporun bu kohort için 2020-12-01 ile başlayan ve 2020-12-06 ile biten etkinlik verilerini içermesi gerektiğini belirtir.
    • DAILY ayrıntı düzeyi kullanıldığında tutarlılık için cohortNthDay boyutu önerilir.

Kullanıcı grubu için rapor isteği:

POST https://analyticsdata.googleapis.com/v1beta/properties/GA_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"
    }
  },
}

Bu istek için örnek rapor yanıtı:

{
  "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
}

Bu rapor yanıtından sonra, bu kullanıcı grubu raporu için bir grafik gösterilir. Bu rapordan elde edilen bir analiz, bu gruptaki etkin kullanıcı sayısında en büyük düşüşün ilk ve ikinci gün arasında yaşandığıdır.

Zaman içinde kohort kullanıcılarının görselleştirilmesi

Birden çok grup ve kullanıcıları elde tutma oranı

Kullanıcı edinme ve elde tutma, web sitenizi veya uygulamanızı büyütmenin yollarıdır. Kohort raporları, kullanıcıları elde tutmaya odaklanır. Bu örnekte, rapor bu mülkün iki hafta içinde 4 günlük kullanıcı elde tutma oranını% 10 artırdığını gösteriyor.

Bu raporu oluşturmak için üç grup belirtiyoruz: ilki 2020-11-02 firstSessionDate, ikincisi 2020-11-09 firstSessionDate ve üçüncüsü 2020-11-16 firstSessionDate. Mülkünüzdeki kullanıcı sayısı bu üç gün boyunca farklı olacağından, doğrudan cohortActiveUsers metriğini kullanmak yerine grubun kullanıcı elde tutma oranı metriği olan cohortActiveUsers/cohortTotalUsers değerini karşılaştırırız.

Bu gruplar için rapor isteği:

POST https://analyticsdata.googleapis.com/v1beta/properties/GA_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"
    }
  },
}

Bu istek için örnek rapor yanıtı:

{
  "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
}

Bu rapor yanıtından sonra, bu kullanıcı grubu raporu için bir grafik gösterilir. Bu rapordaki bir analiz, 4 günlük kullanıcı elde tutma oranının iki hafta içinde% 10 arttığını gösteriyor. firstSessionDate olan 2020-11-16 ile daha sonraki kohort, firstSessionDate olan 2020-11-02 ile daha önceki kohortun elde tutma oranını aşıyor.

Birden fazla kohortun elde tutma oranını gösteren grafik

Haftalık gruplar ve grupları diğer API özellikleriyle kullanma

Kullanıcı davranışındaki günlük varyansı kaldırmak için haftalık grupları kullanın. Haftalık kohort raporlarında, aynı hafta içinde firstSessionDate olan tüm kullanıcılar kohortu oluşturur. Haftalar pazar günü başlar ve cumartesi günü sona erer. Ayrıca bu raporda, Rusya'da etkinliği olan kullanıcıları Meksika'da etkinliği olan kullanıcılarla karşılaştırmak için grubu dilimliyoruz. Bu dilimleme, yalnızca iki ülkeyi dikkate almak için country boyutunu ve dimensionFilter kullanır.

Bu gruplar için rapor isteği:

POST https://analyticsdata.googleapis.com/v1beta/properties/GA_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"
    }
  },
}

Bu istek için örnek rapor yanıtı:

{
  "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
}

Bu rapor yanıtının ardından, bu kullanıcı grubu raporunun grafiği yer almaktadır. Bu rapora göre, bu tesis Meksika'da etkinlik gösteren kullanıcıları elde tutma konusunda Rusya'da etkinlik gösteren kullanıcılara kıyasla daha iyi performans gösteriyor.

Ülke karşılaştırma kohortları grafiği

Karşılaştırmalar

Karşılaştırmalar, verilerinizin alt gruplarını yan yana değerlendirmenize olanak tanır. Rapor tanımında comparisons alanını belirterek karşılaştırmalar tanımlayabilirsiniz. Veri API'sinin Karşılaştırmalar özelliği, Google Analytics ön ucundaki karşılaştırmalara benzer.

Her API alanı hakkında ayrıntılı doküman için Karşılaştırma REST referansı bölümüne bakın.

Karşılaştırma oluşturma

Karşılaştırmak istediğiniz her veri kümesi için ayrı bir karşılaştırma oluşturabilirsiniz. Örneğin, uygulama ve web verilerini karşılaştırmak istiyorsanız Android ve iOS verileri için bir karşılaştırma, web verileri için başka bir karşılaştırma oluşturabilirsiniz.

İki karşılaştırmayı tanımlayan ve ülkeye göre ayrılmış etkin kullanıcıları döndüren örnek bir raporu aşağıda bulabilirsiniz.

"Uygulama trafiği" adlı ilk karşılaştırmada, inListFilter, platform boyutunu "iOS" ve "Android" değerleriyle eşleştirmek için kullanılıyor. "Web trafiği" adlı ikinci karşılaştırma, platform boyutunu "web" ile eşleştirmek için stringFilter kullanır.

  POST https://analyticsdata.googleapis.com/v1beta/properties/GA_PROPERTY_ID:runReport
  {
    "comparisons": [
      {
        "name": "App traffic",
        "dimensionFilter": {
          "filter": {
            "fieldName": "platform",
            "inListFilter": {
              "values": [
                "iOS",
                "Android"
              ]
            }
          }
        }
      },
      {
        "name": "Web traffic",
        "dimensionFilter": {
          "filter": {
            "fieldName": "platform",
            "stringFilter": {
              "matchType": "EXACT",
              "value": "web"
            }
          }
        }
      }
    ],
    "dateRanges": [
      {
        "startDate": "2024-05-01",
        "endDate": "2024-05-15"
      }
    ],
    "dimensions": [
      {
        "name": "country"
      }
    ],
    "metrics": [
      {
        "name": "activeUsers"
      }
    ]
  }

Karşılaştırma özelliğini kullanan tüm isteklerde, oluşturulan rapora comparison alanı otomatik olarak eklenir. Bu alan, istekte sağlanan karşılaştırmanın adını içerir.

Aşağıda, karşılaştırmalar içeren bir yanıta ait örnek snippet verilmiştir:

{
  "dimensionHeaders": [
    {
      "name": "comparison"
    },
    {
      "name": "country"
    }
  ],
  "metricHeaders": [
    {
      "name": "activeUsers",
      "type": "TYPE_INTEGER"
    }
  ],
  "rows": [
    {
      "dimensionValues": [
        {
          "value": "Web traffic"
        },
        {
          "value": "United States"
        }
      ],
      "metricValues": [
        {
          "value": "638572"
        }
      ]
    },
    {
      "dimensionValues": [
        {
          "value": "Web traffic"
        },
        {
          "value": "Japan"
        }
      ],
      "metricValues": [
        {
          "value": "376578"
        }
      ]
    },
  {
      "dimensionValues": [
        {
          "value": "App traffic"
        },
        {
          "value": "United States"
        }
      ],
      "metricValues": [
        {
          "value": "79527"
        }
      ]
    },

    ...

  ],

...

}