이 문서에서는 Google 애널리틱스의 여러 고급 기능을 설명합니다. Data API v1 API의 자세한 참조는 API 참조를 확인하세요.
맞춤 정의 나열 및 보고서 만들기
Data API를 사용하면 등록된 맞춤 측정기준 및 맞춤 측정항목. Metadata API 메서드를 사용하여 API를 나열할 수 있습니다. 속성에 등록된 맞춤 정의의 이름입니다. 이러한 API 이름은 에 대한 보고서 요청에서 runReport 메서드를 예로 들 수 있습니다.
다음 섹션에는 맞춤 정의의 각 유형에 대한 예가 나와 있습니다. 포함
이 예에서는 GA_PROPERTY_ID
를 속성 ID로 바꿉니다.
이벤트 범위 맞춤 측정기준
1단계: Metadata API 메서드 쿼리 을 속성 ID로 바꿉니다.
GET https://analyticsdata.googleapis.com/v1beta/properties/GA_PROPERTY_ID/metadata
2단계: 관심 있는 이벤트 범위 맞춤 측정기준 찾기 보고서를 생성할 수 있습니다 측정기준이 없는 경우 측정기준을 등록할 수 있습니다.
"dimensions": [
...
{
"apiName": "customEvent:achievement_id",
"uiName": "Achievement ID",
"description": "An event scoped custom dimension for your Analytics property."
},
...
],
3단계: 보고서 요청에 맞춤 측정기준을 포함합니다. 다음 runReport 메서드에 대한 샘플 요청입니다.
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" }]
}
사용자 범위 맞춤 측정기준
1단계: Metadata API 메서드 쿼리 을 속성 ID로 바꿉니다.
GET https://analyticsdata.googleapis.com/v1beta/properties/GA_PROPERTY_ID/metadata
2단계: 원하는 사용자 범위 맞춤 측정기준 찾기 보고서를 생성할 수 있습니다 측정기준이 없는 경우 측정기준을 등록할 수 있습니다.
"dimensions": [
...
{
"apiName": "customUser:last_level",
"uiName": "Last level",
"description": "A user property for your Analytics property."
},
...
],
3단계: 보고서 요청에 맞춤 측정기준을 포함합니다. 다음 runReport 메서드에 대한 샘플 요청입니다.
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" }]
}
이벤트 범위 맞춤 측정항목
1단계: Metadata API 메서드 쿼리 을 속성 ID로 바꿉니다.
GET https://analyticsdata.googleapis.com/v1beta/properties/GA_PROPERTY_ID/metadata
2단계: 관심 있는 이벤트 범위 맞춤 측정항목 찾기 보고서를 생성할 수 있습니다 측정항목이 없으면 측정항목을 등록합니다.
"metrics": [
...
{
"apiName": "customEvent:credits_spent",
"uiName": "Credits Spent",
"description": "An event scoped custom metric for your Analytics property.",
"type": "TYPE_STANDARD"
},
...
],
3단계: 보고서 요청에 맞춤 측정항목을 포함합니다. 다음 runReport 메서드에 대한 샘플 요청입니다.
POST https://analyticsdata.googleapis.com/v1beta/properties/GA_PROPERTY_ID:runReport
{
"dateRanges": [{ "startDate": "30daysAgo", "endDate": "yesterday" }],
"dimensions": [{ "name": "eventName" }],
"metrics": [{ "name": "customEvent:credits_spent" }]
}
주요 이벤트 1개의 주요 이벤트 비율 측정항목
1단계: Metadata API 쿼리 메서드를 속성 ID로 바꿉니다.
GET https://analyticsdata.googleapis.com/v1beta/properties/GA_PROPERTY_ID/metadata
2단계: 관심 있는 주요 이벤트 1개에 대한 주요 이벤트 비율 측정항목 찾기 생성할 수 있습니다. 주요 이벤트가 없으면 키를 설정하고 이벤트를 호출합니다.
"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단계: 보고서 요청에 주요 이벤트 비율 측정항목을 포함합니다. 다음 runReport 메서드를 사용하여 축소하도록 요청합니다.
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" }]
}
이벤트 범위 맞춤 측정항목 평균
1단계: Metadata API 메서드 쿼리 을 속성 ID로 바꿉니다.
GET https://analyticsdata.googleapis.com/v1beta/properties/GA_PROPERTY_ID/metadata
2단계: 관심 있는 이벤트 범위 맞춤 측정항목의 평균 찾기 보고서를 생성할 수 있습니다 측정항목이 없으면 측정항목을 등록합니다.
"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단계: 보고서 요청에 맞춤 측정항목 평균을 포함합니다. 다음 runReport 메서드에 대한 샘플 요청입니다.
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" }]
}
동질 집단 보고서의 예
동질 집단 보고서는 동질 집단의 사용자 유지율에 대한 시계열을 생성합니다. 대상 각 API 필드에 대한 자세한 내용은 REST 참조 문서를 참조하세요. CohortSpec을 함께 사용하세요.
동질 집단 보고서 만들기
다음은 샘플 동질 집단 보고서의 예입니다.
- 동질 집단이
firstSessionDate
이2020-12-01
인 사용자입니다. 이것은cohorts
객체로 구성됩니다. 보고서의 측정기준 및 측정항목 동질 집단의 사용자만을 기반으로 합니다. - 동질 집단 보고서에는 다음과 같은 세 개의 열이 표시됩니다. 이것은 Kubernetes
측정기준 및 측정항목 객체입니다.
- 측정기준
cohort
은 동질 집단의 이름입니다. cohortNthDay
측정기준은2020-12-01
이후 경과된 일수입니다.cohortActiveUsers
측정항목은 아직 활성 상태인 사용자 수입니다.
- 측정기준
cohortsRange
객체는 보고서에 이벤트 데이터를 포함해야 한다고 지정합니다. 이 사용자 집단의 요금은2020-12-01
부터2020-12-06
까지입니다.DAILY
의 세부사항이 사용되는 경우cohortNthDay
측정기준은 다음과 같습니다. 일관성을 위해 권장됩니다
동질 집단에 대한 보고서 요청:
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"
}
},
}
이 요청에 대한 보고서 응답 예는 다음과 같습니다.
{
"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
}
이 보고서 응답에서 동질 집단 보고서의 차트가 이어집니다. 통계 이 동질 집단에서 활성 사용자가 가장 많이 감소한 부분은 다르기 때문입니다
여러 동질 집단 및 사용자 유지율
사용자 획득 및 유지는 웹사이트 또는 앱을 성장시키는 방법입니다. 사용자 집단 보고서는 사용자 유지에 중점을 둡니다. 이 예에서 보고서에는 은 2주 동안 4일 사용자 유지율이 10% 증가했습니다.
이 보고서를 작성하기 위해 세 가지 동질 집단을 지정해야 합니다. 첫 번째 동질 집단은
2020-11-02
의 firstSessionDate
, 두 번째의 firstSessionDate
2020-11-09
이고 세 번째는 firstSessionDate
가 2020-11-16
인 세 번째 항목입니다. 왜냐하면
이 3일 동안 속성의 사용자 수가 달라질 수 있으므로
사용자 집단의 사용자 유지율 측정항목을
cohortActiveUsers/cohortTotalUsers
cohortActiveUsers
측정항목
해당 동질 집단에 대한 보고서 요청:
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"
}
},
}
이 요청에 대한 보고서 응답 예는 다음과 같습니다.
{
"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
}
이 보고서 응답에서 동질 집단 보고서의 차트가 이어집니다. 통계
4일간의 사용자 유지율이 전년 동기 대비
2주 동안 진행될 것입니다 이후 사용자 집단 2020-11-16
명 중 firstSessionDate
명
firstSessionDate
이(가) 있는 이전 사용자 집단의 유지율을 초과합니다.
/2020-11-02
주간 사용자 집단 생성 및 다른 API 기능과 함께 사용자 집단 사용
사용자 행동의 일별 변동을 제거하려면 주간 동질 집단을 사용하세요. 매주
동질 집단 보고서에서 같은 주에 firstSessionDate
이(가) 발생한 모든 사용자는
있습니다. 주는 일요일에 시작하여 토요일에 끝납니다. 또한 이 보고서에서는
동질 집단을 세분화하여 러시아의 사용자와
크게 늘었습니다. 이 슬라이싱에서는 country
측정기준 및
dimensionFilter
: 두 국가만 고려합니다.
해당 동질 집단에 대한 보고서 요청:
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"
}
},
}
이 요청에 대한 보고서 응답 예는 다음과 같습니다.
{
"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
}
이 보고서 응답에서 동질 집단 보고서의 차트가 이어집니다. 기반 보고서에 따르면 이 속성은 멕시코에서 활동하는 사용자를 유지하는 데 더 효과적임 더 높습니다.
비교
비교를 통해 데이터의 하위 집합을 나란히 평가할 수 있습니다. 다음과 같은 작업을 할 수 있습니다.
comparisons
필드를 설정할 수 있습니다. Data API의 비교 기능은
Google 애널리틱스 프런트엔드의 비교를 참조하세요.
각 API 필드에 대한 자세한 내용은 REST 참조에서 비교.
비교 만들기
비교하려는 각 데이터 세트에 대해 별도의 비교를 만들 수 있습니다. 예를 들어 앱 데이터와 웹 데이터를 비교하려면 Android 및 iOS 데이터와 웹 데이터를 비교한 결과입니다.
다음은 두 가지 비교를 정의하고 활성 사용자를 반환하는 샘플 보고서입니다. 분류되어 있습니다.
첫 번째 비교는 '앱 트래픽'입니다. inListFilter
를 사용하여
platform
측정기준을 'iOS' 값과 일치 'Android'가 포함됩니다. 두 번째
'웹 트래픽'이라는 이름의 비교 stringFilter
를 사용하여 platform
측정기준을 '웹'으로 바꿉니다.
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"
}
]
}
비교 기능을 사용하는 모든 요청에서 comparison
필드는 다음과 같습니다.
생성된 보고서에 자동으로 추가됩니다. 이 필드에는
비교의 뜻이 됩니다.
다음은 비교가 포함된 응답의 샘플 스니펫입니다.
{
"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"
}
]
},
...
],
...
}