במאמר הזה מתוארות כמה תכונות מתקדמות של Google Analytics Data API v1. מידע מפורט על ה-API זמין בחומר העזר בנושא API.
רישום הגדרות מותאמות אישית ויצירת דוחות
ב-Data API ניתן ליצור דוחות על מאפיינים מותאמים אישית ועל מדדים מותאמים אישית רשומים. אפשר להשתמש בשיטת ה-Metadata API כדי להציג רשימה של שמות ה-API של ההגדרות המותאמות אישית שנרשמו בנכס. לדוגמה, תוכלו להשתמש בשמות ה-API האלה בקטע Report Requests (בקשות לדיווח) ל-method runReport.
הקטעים הבאים מציגים דוגמאות לכל סוג של הגדרה מותאמת אישית. בדוגמאות האלה, מחליפים את GA4_PROPERTY_ID
במזהה הנכס.
מאפיינים מותאמים אישית ברמת האירוע
שלב 1: שולחים שאילתה בשיטת ה-Metadata API למזהה הנכס.
GET https://analyticsdata.googleapis.com/v1beta/properties/GA4_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/GA4_PROPERTY_ID:runReport
{
"dateRanges": [{ "startDate": "2020-09-01", "endDate": "2020-09-15" }],
"dimensions": [{ "name": "customEvent:achievement_id" }],
"metrics": [{ "name": "eventCount" }]
}
מאפיינים מותאמים אישית עם היקף ברמת המשתמש
שלב 1: שולחים שאילתה בשיטת ה-Metadata API למזהה הנכס.
GET https://analyticsdata.googleapis.com/v1beta/properties/GA4_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/GA4_PROPERTY_ID:runReport
{
"entity": { "propertyId": "GA4_PROPERTY_ID" },
"dateRanges": [{ "startDate": "7daysAgo", "endDate": "yesterday" }],
"dimensions": [{ "name": "customUser:last_level" }],
"metrics": [{ "name": "activeUsers" }]
}
מדדים מותאמים אישית עם היקף ברמת האירוע
שלב 1: שולחים שאילתה בשיטת ה-Metadata API למזהה הנכס.
GET https://analyticsdata.googleapis.com/v1beta/properties/GA4_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/GA4_PROPERTY_ID:runReport
{
"dateRanges": [{ "startDate": "30daysAgo", "endDate": "yesterday" }],
"dimensions": [{ "name": "eventName" }],
"metrics": [{ "name": "customEvent:credits_spent" }]
}
מדדי שיעור המרה עבור המרה אחת
שלב 1: שולחים שאילתה בשיטת ה-Metadata API למזהה הנכס.
GET https://analyticsdata.googleapis.com/v1beta/properties/GA4_PROPERTY_ID/metadata
שלב 2: מוצאים את מדד שיעור ההמרה עבור המרה אחת, שעליה רוצים ליצור דוחות מהתשובה. אם אירוע ההמרה לא קיים, צריך להגדיר את אירוע ההמרה.
"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",
},
...
],
שלב 3: כוללים את מדד שיעור ההמרה בבקשת הדוח. בהמשך מוצגת בקשה לדוגמה לשיטה 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" }]
}
ממוצעים של מדדים מותאמים אישית עם היקף ברמת האירוע
שלב 1: שולחים שאילתה בשיטת ה-Metadata API למזהה הנכס.
GET https://analyticsdata.googleapis.com/v1beta/properties/GA4_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/GA4_PROPERTY_ID:runReport
{
"dateRanges": [{ "startDate": "2020-11-01", "endDate": "2020-11-10" }],
"dimensions": [{ "name": "eventName" }],
"metrics": [{ "name": "averageCustomEvent:credits_spent" }]
}
דוגמאות לדוחות על קבוצה בעלת מאפיינים משותפים
דוחות על קבוצה בעלת מאפיינים משותפים יוצרים פרק זמן של שימור משתמשים בקבוצה בעלת המאפיינים המשותפים. לתיעוד מפורט של כל שדה ב-API, ראו חומר עזר בנושא REST של קבוצות בעלות מאפיינים משותפים.
יצירת דוח על קבוצה בעלת מאפיינים משותפים
לפניכם דוח לדוגמה על קבוצה בעלת מאפיינים משותפים, שבו:
- הקבוצה בעלת המאפיינים המשותפים כוללת משתמשים עם
firstSessionDate
של2020-12-01
. המאפיין מוגדר על ידי האובייקטcohorts
. המאפיינים והמדדים בתשובה לדוח יתבססו רק על המשתמשים בקבוצה בעלת המאפיינים המשותפים. - בדוח על קבוצה בעלת מאפיינים משותפים יוצגו שלוש עמודות. העמודות האלה מוגדרות על ידי האובייקטים של המאפיינים ומדדים.
- המאפיין
cohort
הוא השם של הקבוצה בעלת המאפיינים המשותפים. - המאפיין
cohortNthDay
הוא מספר הימים מאז2020-12-01
. - המדד
cohortActiveUsers
הוא מספר המשתמשים שעדיין פעילים.
- המאפיין
- האובייקט
cohortsRange
מציין שהדוח צריך להכיל נתוני אירוע של הקבוצה בעלת המאפיינים המשותפים, שמתחילה ב-2020-12-01
ומסתיימת ב-2020-12-06
.- כשמשתמשים ברמת פירוט של
DAILY
, מומלץ להשתמש במאפייןcohortNthDay
כדי לשמור על עקביות.
- כשמשתמשים ברמת פירוט של
בקשת הדיווח על קבוצה בעלת מאפיינים משותפים היא:
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"
}
},
}
בתגובה לבקשה הזו, דוגמה לתגובה בדוח:
{
"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
}
יוצג תרשים של הדוח על קבוצה בעלת מאפיינים משותפים מתוך התגובה לדוח הזה. מדוח זה עולה שהירידה המשמעותית ביותר במספר המשתמשים הפעילים בקבוצה בעלת המאפיינים המשותפים הזו הייתה בין היום הראשון ליום השני.
קבוצות מרובות בעלות מאפיינים משותפים (cohort) ושיעור שימור משתמשים
צירוף משתמשים ושימור משתמשים הם דרכים להגדיל את האתר או האפליקציה. דוחות על קבוצות בעלות מאפיינים משותפים מתמקדים בשימור משתמשים. בדוגמה הזו, הדוח מראה שהנכס הזה שיפר את שימור המשתמשים ב-4 ימים ב-10% במהלך שבועיים.
כדי ליצור את הדוח הזה, אנחנו מציינים שלוש קבוצות בעלות מאפיינים משותפים: הראשונה עם firstSessionDate
של 2020-11-02
, השנייה עם firstSessionDate
של 2020-11-09
ושלישית עם firstSessionDate
של 2020-11-16
. מאחר שמספר המשתמשים בנכס יהיה שונה בשלושת הימים האלה, אנחנו משווים את מדד שימור המשתמשים של הקבוצה בעלת המאפיינים המשותפים cohortActiveUsers/cohortTotalUsers
במקום את המדד הישיר cohortActiveUsers
.
בקשת הדוח לגבי קבוצות בעלות מאפיינים משותפים היא:
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"
}
},
}
בתגובה לבקשה הזו, דוגמה לתגובה בדוח:
{
"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 הימים גדל ב-10% לאורך השבועיים. הקבוצה בעלת המאפיינים המשותפים במועד מאוחר יותר, עם firstSessionDate
מתוך 2020-11-16
, חורגת משימור הקבוצה הקודמת עם firstSessionDate
מתוך 2020-11-02
.
קבוצות בעלות עניין משותף בשבוע ושימוש בקבוצות בעלות מאפיינים משותפים עם תכונות API אחרות
כדי להסיר את השונות היומית בהתנהגות המשתמשים, אפשר להשתמש בקבוצות בעלות מאפיינים משותפים (cohort) שבועיים. בדוחות שבועיים של קבוצה בעלת מאפיינים משותפים, כל המשתמשים עם firstSessionDate
באותו שבוע יוצרים את הקבוצה. השבועות מתחילים ביום ראשון ומסתיימים ביום שבת. בדוח הזה אנחנו גם פורסים את הקבוצה בעלת המאפיינים המשותפים כדי להשוות בין משתמשים עם פעילות ברוסיה לבין משתמשים עם פעילות במקסיקו. מערכת הפילוח הזו משתמשת במאפיין country
ובמאפיין dimensionFilter
כדי להביא בחשבון רק את שתי המדינות.
בקשת הדוח לגבי קבוצות בעלות מאפיינים משותפים היא:
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"
}
},
}
בתגובה לבקשה הזו, דוגמה לתגובה בדוח:
{
"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
}
יוצג תרשים של הדוח על קבוצה בעלת מאפיינים משותפים מתוך התשובה לדוח הזה. על סמך הדוח הזה, הנכס הזה מניב ביצועים טובים יותר בשימור משתמשים עם פעילות במקסיקו, בהשוואה למשתמשים עם פעילות ברוסיה.