Deze functie maakt deel uit van een open bèta en kan worden gewijzigd.
Deze instructies zijn bedoeld voor beheerders en bewerkers die willen weten hoe ze het codefragment voor verzameling van door gebruikers verstrekte gegevens op hun website instellen met Google Tag Manager.
Als u uw code updatet in vergelijking met de andere configuratie-opties, zorgt u dat de e-mailadressen, telefoonnummers en/of namen en adressen beschikbaar zijn op de pagina op het moment dat Analytics door gebruikers verstrekte gegevens verzamelt.
Overzicht
Volg deze stappen om het codefragment in te stellen met Google Tag Manager:
- Velden voor door gebruikers verstrekte gegevens herkennen en definiëren in uw websitecode
- Elk veld met door gebruikers verstrekte gegevens in een aangepaste JavaScript-variabele doorgeven aan Google Analytics
Opmerking: U kunt gehashte of niet-gehashte klantgegevens naar Google Analytics sturen. Als u niet-gehashte gegevens stuurt, hasht Google de gegevens voor u voordat de gegevens op de servers van Google worden opgeslagen. U kunt de gegevens ook hashen voordat u de gegevens naar Google stuurt.
Voordat u begint
In deze instructies wordt ervan uitgegaan dat u aan de volgende vereisten voldoet:
- U heeft toegang tot de broncode van uw website.
- U heeft verzameling van door gebruikers verstrekte gegevens geactiveerd en toestemming gegevens voor mogelijkheden voor door gebruikers verstrekte gegevens.
- U heeft een Google Analytics: GA4-gebeurtenistag ingesteld in uw Google Tag Manager-container.
- U heeft de rol Beheerder voor de Google Analytics-property.
Hashing the data
You can send hashed or unhashed data from a website. If you send unhashed data, Google normalizes and hashes the data before the data reaches Google's servers. To ensure Analytics interprets the data correctly and to comply with the User-provided data policy, you must use the correct key name (in the next section).
To hash the data:
- Use hex SHA256.
To normalize the data:
- Remove leading or trailing whitespaces.
- Convert the text to lowercase.
- Format phone numbers according to the E.164 standard.
Defining the fields in your code
You must provide at least one of these fields:
- Email (preferred).
- Address (first name, last name, postal code, and country are required). You can optionally provide street address, city, and region as additional match keys.
- A phone number can also be provided along with an email or full name and address.
Make sure the data is available when the Google tag fires. If the data is collected on a previous page, make sure it’s available in your code on the current page so you can configure the field.
Fields to set
The following table describes each field you can set. The key name shows how you must reference the field in your code. You must pass the data as a String type. When defining name and address, make sure to define each component as an individual variable (for example, first name, last name, and so on).
Note: If you want to send unhashed data and let Google normalize and hash the data, use the first key name for each data field. For example, email in the Email address data field below. If you want to send hashed data, use the key name that begins with sha256_.
Data Field | Key Name | Description |
---|---|---|
Email address | email |
User email. Example: ‘[email protected]’ |
sha256_email_address |
Hashed user email. Example: ‘a8af8341993604f29cd4e0e5a5a4b5d48c575436c38b28abbfd7d481f345d5db’ |
|
Phone number | phone_number |
User phone number. Must be in E.164 format, which means it must be 11 to 15 digits including a plus sign (+) prefix and country code with no dashes, parentheses, or spaces. Example: ‘+11231234567’ |
sha256_phone_number |
Hashed user phone number. Example: ‘e9d3eef677f9a3b19820f92696be53d646ac4cea500e5f8fd08b00bc6ac773b1’ |
|
First name | address.first_name |
User first name. Example: 'John' |
address.sha256_first_name |
Hashed user first name. Example: ‘96d9632f363564cc3032521409cf22a852f2032eec099ed5967c0d000cec607a’ |
|
Surname | address.last_name |
User last name. Example: 'Doe' |
address.sha256_last_name |
Hashed user last name. Example: ‘799ef92a11af918e3fb741df42934f3b568ed2d93ac1df74f1b8d41a27932a6f’ |
|
Street address | address.street |
User street address. Example: '123 New Rd' |
City | address.city |
User city name. Example: `Southampton’ |
Region | address.region |
User province, state, or region. Example: `Hampshire’ |
Postal code | address.postal_code |
User post code. Example: 'SO99 9XX' |
Country | address.country |
User country code. Example: 'UK'. Use 2-letter country codes, per the ISO 3166-1 alpha-2 standard. |
De gebeurtenistag updaten met een aangepaste JavaScript-variabele
Voordat u uw Tag Manager-container updatet, leest u meer informatie over hoe u de aangepaste JavaScript-code updatet die u aan uw container toevoegt.
- Log in bij Google Tag Manager.
- Klik op het tabblad Werkruimte links op Tags.
- Open de tag Google Analytics: GA4-gebeurtenis waar u klantgegevens verzamelt. Zorg dat de gebeurtenistag de metings-ID gebruikt voor de webstream waar de gebruikersgegevens worden verzameld.
- Selecteer Door gebruikers verstrekte gegevens van uw website opnemen.
- Selecteer of maak in het dropdownmenu Gebruikersgegevens een variabele voor door gebruikers verstrekte gegevens.
- Als u een nieuwe variabele maakt, selecteert u Code in de variabele voor door gebruikers verstrekte gegevens.
- Klik in het dropdownmenu Gegevensbron op Nieuwe variabele....
- Klik op Variabeleconfiguratie > Aangepast JavaScript.
- Voer bovenaan de pagina een naam in voor de aangepaste JavaScript-variabele.
- Voer in het tekstvak Aangepast JavaScript het codefragment in. Meer informatie.
- Sla de nieuwe variabelen op en sla de gebeurtenistag op.
- Klik rechtsboven op Sturen om de wijzigingen te publiceren.
Het codefragment maken om door gebruikers verstrekte gegevens te verzamelen
U kunt de volgende code gebruiken als u in stap 10 de aangepaste JavaScript-variabele instelt:
function () {
return {
"email": uwE-mailVariabele , // vervang uwE-mailVariabele door een variabelenaam die het e-mailadres van uw gebruiker vastlegt
"phone_number": uwTelefoonnummerVariabele , // herhaal dit voor uwTelefoonnummerVariabele en de variabelen hieronder
"address": {
"first_name": uwVoornaamVariabele ,
"last_name": uwAchternaamVariabele ,
"street": uwAdresVariabele ,
"city": uwPlaatsVariabele ,
"region": uwRegioVariabele ,
"postal_code": uwPostcodeVariabele ,
"country": uwLandVariabele
}
}
}
U kunt het veld ook hardcoderen met een tekenreeks of een functie gebruiken in plaats van variabelen.
// Implement
<script>
gtag('set', 'user_data', {
"sha256_email_address"
: uwGenormalieerdeEnGehashteEmailVariabele"sha256_phone_number"
: uwGenormalieerdeEnGehashteTelefoonVariabele,"address": {
"address.sha256_first_name"
: uwGenormalieerdeEnGehashteVoornaamVariabele,"address.sha256_last_name"
: uwGenormalieerdeEnGehashteAchternaamVariabele,"city"
: uwPlaatsVariabele,"region"
: uwRegioVariabele,"postal_code"
: uwPostcodeVariabele,"country"
: uwLandVariabele}
});
</script>
Als u gehashte waarden van gebruikersgegevens wilt verstrekken, kunt u dit voorbeeldfragment gebruiken:
async function processUserData() {
const userData = {
'sha256_email_address'
: await hashEmail(email.trim()),'sha256_phone_number'
: await hashPhoneNumber(phoneNumber),'address': {
'address.sha256_first_name'
: await hashName(firstName),'address.sha256_last_name'
: await hashName(lastName),'city'
: city,'region'
: region,'postal_code'
: postalCode,'country'
: country,},
};
return userData;
Het telefoonnummer moet de E.164-indeling hebben, oftewel 11 tot 15 cijfers, inclusief een plusteken (+) als voorvoegsel en een landcode, zonder streepjes, haakjes of spaties.
Next steps
Validate that user-provided data collection is set up correctly. Show me how.