While Dynamic Yield segmentation capabilities are extensive, you can enrich it even further by onboarding additional user data (e.g. CRM). This allows you to target experiences and segment users by attributes that are unique to your business (e.g. a VIP status that is unique to your business).
How Does it Work?
- A user data file is uploaded on a daily basis, which includes a list of users (with an identifier) and their attributes (e.g. age group).
- Once the user data file is uploaded, you will see new audience conditions based on the attributes in the file.
- When a user visits your site and identify (even once, and even before the user data file was onboarded) - Dynamic Yield connects the user identity of the user in the file to the device they are browsing. If they match audience conditions that are based on these attributes - they will be included in the audience.
The data onboarding process is done by your Customer Success Manager, but it requires data preparation on your side. This is the process:
Step 1: Choose the Attributes to Onboard
We recommend starting with 5 top attributes (you can always increase this number). Focus on the attributes that are relevant for segmentation and are not supported natively in the Dynamic Yield platform. For example:
- Demographic: Gender, Age group, Marital status, #of children, Education, Industry, Job Title
- Geographic: Billing country, Shipping country
- Interests and preferences: Favorite category, Language
- Purchasing habits: Average order value, Items per order, Days since last order, Average inter-purchase time, Lifetime Orders, Lifetime Net Revenue, Recency, Number of Orders, Net Merchandize Value
Step 2: Prepare a Metadata Attribute File
This file will instruct Dynamic Yield on how to transform your attributes into a user friendly audience conditions. For example, which condition requires a date UI, and which requires a number (with "more than" or "less than" capabilities). This step is quite technical, and your Customer Success Manager will assist you in creating this file.
This is the file structure:
- Field_Name: The technical attribute name. This will not appear in the Dynamic Yield UI.
- Display_Field_Name: The name that will be used as the condition name in the Dynamic Yield UI.
- Type: The type of UI that the condition will have.
- Int/double/long: A number (with "more than", "less than", "exactly" capabilities)
- String: A string of text
- Enum: A dropdown option
- Boolean: A value that is either true or false
- Date: A value that represents a specific date
- Dropdown_Source_Value: The technical value name. This will not appear in the Dynamic Yield UI.
- Dropdow_Display_Name: The name that will be used as the condition value in the Dynamic Yield UI.
Step 3: Determine a Common Identifier
Each record of user data should include a unique identifier, in order to match between a first-party data user and an online user. The recommended unique identifier is the email address (SHA256 hash of the lowercase email address). For privacy reasons, do not use a PII (e.g. name, phone number, email address) as the identifier.
Make sure that the Login, Signup, and Newsletter Subscription events use the same identifier.
Optional: Any additional identification instance by the visitor (e.g. arriving from a newsletter) can be reported to Dynamic Yield with the Script Utilities.
Step 4: Provide a Sample File and
Provide your Customer Success Manager with a representative sample of your first-party data in CSV format. For example:
Step 4: Initiate a Daily Upload Process
Note: if your file exceeds 40 attributes or 100MB - you will need to split it into multiple files. See below instructions for large file handling.
- You will be provided with credentials to an AWS S3 bucket by your Customer Success Manager. This will grant you access to a dedicated folder to upload your first-party user data.
- Set up an upload process that will sync the data in your dedicated folder to guarantee your data is up to date. Initiate an upload process using the following guidelines:
- File type: CSV.
- Filename: CRM_data.csv
- Upload Frequency: Daily.
- Each daily upload should be added to a folder that has the following name format: “upload_YYYY-MM-DD_HH-mm” (upload_2021-02-28_00-03).
- Your data dump may only include one file.
- The daily data dump may only include a full snapshot of your first-party data. Python Example:
id = "replace this with your access key" secret = "replace with your secret key" if __name__ == '__main__': import boto s3_connection = boto.connect_s3(aws_access_key_id=id, aws_secret_access_key=secret, is_secure=False) bucket = s3_connection.get_bucket('com.dynamicyield.crm', validate=False) key = bucket.get_key('/test', validate=False) key.set_contents_from_string('test content') print key.get_contents_as_string() rs = bucket.list(prefix='/') for i in rs: print i
- Once the above steps have been completed, the data will be processed by Dynamic Yield’s batch processes and upon completion, the relevant conditions will appear in your account’s UI. Data processing time may vary – please follow up with your Customer Success Manager for an ETA as to when your 'CRM Data' conditions will be available.
Large Files Handling
The maximum supported file size is 100MB. FIles bigger than that should be split into multiple files, each around 40MB. The structure of the files must be identical, uploaded to the same daily folder but each file should contain information about different users.
When working with one file, the name should be CRM_data.csv.
When working with multiple files, add a number to the beginning of the name as follows:
All file names should end with CRM_data.csv.
For more information, speak to your Customer Success Manager.
Once your data has been onboarded, you will be able to use the Audience Explorer to immediately explore these valuable segments and analyze their performance vs. your entire online userbase, complemented with the users’ behavioral data captured by Dynamic Yield. These conditions can be coupled with any other Dynamic Yield condition available in your account and used to create and save micro-targetable segments (“Audiences”) that can be incorporated into your Dynamic Yield Site Personalization experiences and Recommendations.