Nutzereigenschaften beschreiben Segmente Ihrer Nutzerbasis, z. B. Spracheinstellungen oder geografische Standorte. Einige Nutzereigenschaften werden in Analytics automatisch protokolliert. Wenn Sie zusätzliche Eigenschaften erfassen möchten, können Sie pro Projekt bis zu 25 zusätzliche Nutzereigenschaften einrichten. Unter Benutzerdefinierte Nutzereigenschaften erfahren Sie, wie Sie Nutzereigenschaften festlegen und registrieren.
Nutzereigenschaften verbessern die Nutzersegmentierung. Die Daten zu Nutzereigenschaften sind jedoch häufig nur serverseitig verfügbar. Mit dem Measurement Protocol können Sie clientseitige Messungen mit serverseitigen Daten ergänzen. Das ist mit reinen clientseitigen Lösungen in der Regel nicht möglich.
Reservierte Namen
Einige Namen von Nutzereigenschaften sind reserviert und können nicht in Messungen verwendet werden:
first_open_timefirst_visit_timelast_deep_link_referreruser_idfirst_open_after_install
Außerdem dürfen Namen von Nutzereigenschaften nicht mit folgenden Zeichen oder Präfixen beginnen:
google_ga_firebase_
Nutzungsbeispiel
In diesem Beispiel hat Ihr CRM eine Nutzereigenschaft (customer_tier), die Sie Ihren Messungen hinzufügen möchten. customer_tier kann auf premium oder standard festgelegt werden. So erhalten Sie diese Nutzereigenschaft in Ihren Berichten:
Zuerst muss der Client ein add_payment_info-Ereignis zusammen mit einem Aufruf an eine
Server-API senden, die Zugriff auf Ihr CRM-System hat:
Clientcode
FirebaseAnalytics.logEvent("add_payment_info")
ServerAPI.addCustomerTier(
FirebaseAnalytics.getAppInstanceId(),
"[{name: \"add_payment_info\"}"]
);
Ihr Server ergänzt die Messung dann mit der Nutzereigenschaft customer_tier über das Measurement Protocol:
Servercode
const firebaseAppId = "FIREBASE_APP_ID";
const apiSecret = "API_SECRET";
function addCustomerTier(appInstanceId, events) {
// Request the customer tier from the CRM.
const customerTier = getCustomerTier(appInstanceId);
const queryParams = `?firebase_app_id=${firebaseAppId}&api_secret=${apiSecret}`;
fetch(`https://www.google-analytics.com/mp/collect${queryParams}`, {
method: "POST",
headers: {
"Content-Type": "application/json"
},
body: JSON.stringify({
"app_instance_id": "APP_INSTANCE_ID",
"user_properties": {
"customer_tier": {
"value": "CUSTOMER_TIER"
}
},
"events": JSON.parse(events)
})
});
}
Diese Nutzereigenschaft meldet die beiden Segmente premium und standard.
Ausführliche Informationen zum S0}Senden von Ereignissen mit dem Measurement Protocol finden Sie unter Ereignisse senden.
Zeitstempel überschreiben
Das Measurement Protocol verwendet für jede Nutzereigenschaft in der Anfrage den ersten Zeitstempel, der in der folgenden Liste gefunden wird:
- Der
timestamp_microsdes Eintrags inuser_properties. - Der
timestamp_microsder Anfrage. - Der Zeitpunkt, zu dem das Measurement Protocol die Anfrage empfängt.
Im folgenden Beispiel wird ein Zeitstempel auf Anfrageebene gesendet, der für alle Nutzereigenschaften in der Anfrage gilt. Daher weist das Measurement Protocol den Nutzereigenschaften customer_tier und customer_group einen Zeitstempel von requestUnixEpochTimeInMicros zu.
{
"timestamp_micros": requestUnixEpochTimeInMicros,
"user_properties": {
"customer_tier": {
"value": customerTierValue
},
"customer_group": {
"value": customerGroupValue
}
}
}
Im folgenden Beispiel werden sowohl ein Zeitstempel auf Anfrageebene als auch ein Zeitstempel für die Nutzereigenschaft customer_tier gesendet. Daher weist das Measurement Protocol der Nutzereigenschaft customer_tier einen Zeitstempel von customerTierUnixEpochTimeInMicros und der Nutzereigenschaft customer_group einen Zeitstempel von requestUnixEpochTimeInMicros zu.
"timestamp_micros": requestUnixEpochTimeInMicros,
"user_properties": {
"customer_tier": {
"value": customerTierValue,
"timestamp_micros": customerTierUnixEpochTimeInMicros
},
"customer_group": {
"value": customerGroupValue
}
}