Measurement Protocol-Ereignisse an Google Analytics senden

In diesem Leitfaden erfahren Sie, wie Sie Web- und App-Streams (Measurement Protocol von Google Analytics) Ereignisse in ein Google Analytics-Server, damit Sie Measurement Protocol-Ereignisse in Ihrem Google Analytics-Berichte:

Wählen Sie die Plattform aus, die in diesem Leitfaden angezeigt werden soll:

<ph type="x-smartling-placeholder"></ph>

Anfrage formatieren

Das Measurement Protocol von Google Analytics unterstützt nur HTTP-POST-Anfragen.

Verwenden Sie das folgende Format, um ein Ereignis zu senden:

POST /mp/collect HTTP/1.1
HOST: www.google-analytics.com
Content-Type: application/json
<payload_data>

In der Anfrage-URL müssen Sie Folgendes angeben:

  • api_secret: Das in der Google Analytics-Benutzeroberfläche erstellte API-GEHEIM.

    Gehen Sie zu Verwaltung >, um ein neues Secret zu erstellen. Datenstreams > Wählen in deinem Stream > Measurement Protocol > Erstellen:

  • measurement_id: Die mit einem Stream verknüpfte Mess-ID, die im Google Analytics-Benutzeroberfläche unter Verwaltung > Datenstreams > Wählen Sie Stream > Mess-ID:

    measurement_id ist nicht deine Stream-ID.

Die vollständige Referenz finden Sie unter Abfrageparameter.

Im Anfragetext müssen Sie Folgendes angeben:

  • client_id: Eine eindeutige Kennung für einen Client. Dies unterscheidet sich von einer Firebase app_instance_id. Verwenden Sie gtag.js('get').
  • user_id: Optional. Eine eindeutige Kennung für einen Nutzer. Darf nur UTF-8 enthalten Zeichen. Weitere Informationen finden Sie unter User-ID für plattformübergreifende Analysen. zu dieser Kennung.

  • consent: Optional. Weitere Informationen zum Festlegen der Einwilligung Einstellungen.

  • timestamp_micros: Optional. Die Unix-Epochen-Zeit in Mikrosekunden für die -Ereignisse und Nutzereigenschaften in der Anfrage festlegen. Wenn keine Angabe erfolgt, wird standardmäßig die Zeitpunkt der Anfrage.

  • events: ein Array von Ereigniselementen. Sie können mehrere Ereignisse in ein Ereignis aufnehmen

    Damit Nutzeraktivitäten in Berichten wie Echtzeit, engagement_time_msec und session_id müssen als Teil des params für event. Der Parameter engagement_time_msec sollte für Interaktionsdauer des Ereignisses in Millisekunden.

    Beispiel:

  {
   "client_id": "123456.7654321",
   "events": [
     {
        "name": "campaign_details",
        "params": {
          "campaign_id": "google_1234",
          "campaign": "Summer_fun",
          "source": "google",
          "medium": "cpc",
          "term": "summer+travel",
          "content": "logolink",
          "session_id": "123",
          "engagement_time_msec": "100"
        }
     }
   ]
  }

session_start ist zwar eine reservierte Veranstaltung Name, Wenn Sie eine neue session_id erstellen, wird eine neue Sitzung erstellt, ohne dass Sie session_start Informationen zu Sitzungen werden gezählt.

Ausprobieren

Hier ist ein Beispiel, wie Sie ein tutorial_begin-Ereignis an Ihr Google Analytics-Server:

const measurement_id = `G-XXXXXXXXXX`;
const api_secret = `<secret_value>`;

fetch(`https://www.google-analytics.com/mp/collect?measurement_id=${measurement_id}&api_secret=${api_secret}`, {
  method: "POST",
  body: JSON.stringify({
    client_id: 'XXXXXXXXXX.YYYYYYYYYY',
    events: [{
      name: 'tutorial_begin',
      params: {},
    }]
  })
});

Zeitstempel überschreiben

Das Measurement Protocol verwendet den ersten Zeitstempel in der folgenden Liste. für jedes Ereignis in der Anfrage:

  1. Die timestamp_micros des Ereignisses.
  2. Die timestamp_micros der Anfrage.
  3. Die Uhrzeit, zu der das Measurement Protocol die Anfrage empfängt

Im folgenden Beispiel wird ein Zeitstempel auf Anfrageebene gesendet, Ereignisse in der Anfrage. Daher weist das Measurement Protocol sowohl die tutorial_begin- und join_group-Ereignisse haben den Zeitstempel requestUnixEpochTimeInMicros

{
  "timestamp_micros": requestUnixEpochTimeInMicros,
  "events": [
    {
      "name": "tutorial_begin"
    },
    {
      "name": "join_group",
      "params": {
        "group_id": "G_12345",
      }
    }
  ]
}

Im folgenden Beispiel wird sowohl ein Zeitstempel auf Anfrageebene als auch ein Zeitstempel auf Ereignisebene Zeitstempel. Daher weist das Measurement Protocol die tutorial_begin den Zeitstempel tutorialBeginUnixEpochTimeInMicros und das join_group Ereignis den Zeitstempel requestUnixEpochTimeInMicros.

{
  "timestamp_micros": requestUnixEpochTimeInMicros,
  "events": [
    {
      "name": "tutorial_begin",
      "timestamp_micros": tutorialBeginUnixEpochTimeInMicros
    },
    {
      "name": "join_group",
      "params": {
        "group_id": "G_12345",
      }
    }
  ]
}

Beschränkungen

Für das Senden von Measurement Protocol-Ereignissen an Google gelten die folgenden Einschränkungen Analyse:

  • Anfragen können maximal 25 Ereignisse umfassen.
  • Ereignisse dürfen maximal 25 Parameter haben.
  • Ereignisse dürfen maximal 25 Nutzereigenschaften haben.
  • Namen von Nutzereigenschaften dürfen maximal 24 Zeichen lang sein.
  • Werte von Nutzereigenschaften dürfen maximal 36 Zeichen umfassen.
  • Ereignisnamen dürfen maximal 40 Zeichen lang sein und nur alphanumerische Zeichen enthalten. Zeichen und Unterstriche enthalten und muss mit einem Buchstaben beginnen.
  • Parameternamen mit Artikelparametern dürfen maximal 40 Zeichen lang sein. dürfen nur alphanumerische Zeichen und Unterstriche enthalten und müssen am mit einem Buchstaben an.
  • Parameterwerte, die Artikelparameterwerte enthalten, müssen 100 Zeichen lang sein oder weniger für eine Google Analytics-Standard-Property und maximal 500 Zeichen für eine Google Analytics 360-Property.
  • Artikelparameter dürfen maximal zehn benutzerdefinierte Parameter haben.
  • Der Post-Text muss kleiner als 130 KB sein.
  • App Measurement Protocol-Ereignisse, die an Google Analytics gesendet werden, erscheinen nicht in der Google Suche Zielgruppen für App-Nutzer in Google Ads.

Weitere Anforderungen für die einzelnen Anwendungsfälle finden Sie unter Häufige Anwendungsfälle.