The User Data Enrichment extension syncs 2 types of data for use in audiences and targeting:
- User profile data: User attributes like age group, loyalty status, or location, synced via API or nightly CSV file upload (as described herein).
- External events: User actions outside of Dynamic Yield, like offline purchases or customer support calls, synced via API.
If you have a large number of users to update, you might decide to sync your user profile data via CSV file upload. To use this method, prepare and maintain a CSV file with unique user IDs and additional data, and upload it nightly (recommended).
When the data is uploaded, it's synced with Experience OS audience conditions according to a JSON schema you'll prepare for this purpose. Later, you can create audiences using these targeting conditions, and when users visit your site and are identified, they are automatically included in the audience if they meet the defined conditions.
Process overview
You'll need to work with a developer to set up this process. However, for the developer to create the necessary items, you must provide the information you want to sync for use in your personalization program. The steps include:
-
Preparation:
- Decide which attributes to sync. These are the column names of the feed. For privacy reasons, do not include any attributes that are considered PII, for example, name, date of birth, or address.
- Decide on an identifier type. We recommend using hashed email addresses.
- Create your JSON schema: A JSON schema is needed so that the information can properly sync to Dynamic Yield. The schema basically determines where and how the information is stored in our system.
- Set up your sync source: Create a new feed and validate it.
- Start syncing your user data.
See our Developer Docs for detailed information and instructions on using the CSV file upload method and creating the JSON schema.
The CSV file
The important things to make sure of in your file are the attributes you want to sync, and the identifier:
- Here's a sample CSV file
-
Determining the common identifier
Each user record must include a unique identifier, to match between an online user and the attributes you defined in your feed. Supported values include Hashed Email, DYID, or Other (you define it). We recommend using hashed email addresses (SHA256 hash of a lowercase email address).
Make sure that all the identification events, including Identify, Login, Signup, and Newsletter Subscription use the same identifier.
Set up your sync source
- Go to Audiences › Extensions › Profile and click Add Source.
- For the Feed Source, select Upload a CSV file.
- Define the identifier type. The default is the SHA256 hashed email address, so you need to change this value only if you want to use a different ID type. Additional supported values include DYID and Other (you define the type).
- Enter additional value settings for the file, including the field value delimiter, array value delimiter, and date format.
- Enter the schema for the feed.
- Set the sites and apps on which to enable targeting based on this data.
- Click Save as Draft.
Upload and validate the data
The data is uploaded outside of Experience OS, via AWS bucket. See technical information in our Developers Docs.
After the data is uploaded, go back to the User Data Enrichment extension in Experience OS, click to edit the and click Validate.
Preview your data, and if everything is as expected, click Save and Activate.
Now, the data is processed by Dynamic Yield. Upon completion, the relevant conditions appear in your Audience Manager. The targeting by audience conditions begins immediately, but reports can take up to 24 hours to process.
Share user data between sections
After you set up the user data feed, you can share it across sections to enable the creation and targeting of Audiences based on user-data properties. This is especially useful when maneuvering between staging and production environments, or if your traffic migrates between multiple properties managed under the same Dynamic Yield account.
To enable data sharing, locate the Allow targeting on option after the data schema settings. By default, it is pre-populated with the name of the current section. If you want to share the data with an additional section, click the field and select the relevant section from the dropdown menu.
Note that after the data is shared, the feed can only be edited from the original section.
Create and review audiences based on user data
In the Audience Explorer, you can explore user segments and analyze their performance in comparison to your entire online user base, complemented by users' behavioral data captured by Dynamic Yield.
In the Audience Manager, the new conditions can be coupled with any other Dynamic Yield condition available in your account to create and save audiences, which in turn can be incorporated into your Dynamic Yield site personalization experiences and recommendations.
Note: When you create an Audience with conditions that rely on data mapped as an array of strings (Text Array), the operators available are "is", "is not", "contains", and "does not contain", where "is" is met when any of the values in the array match the listed value, and "contains" is met when any of the values in the array contain the listed value.