Send Time Optimization models
The Send Time Optimization model is a ready-to-use data science model.
The Send Time Optimization model explained
The Send Time Optimization model determines the optimal time to send campaign emails to customers. The purpose of the model is to send messages when they're most likely to be seen, opened, read, or acknowledged.
Example: The model would trigger to send campaign emails right before a customer typically checks their inbox. As a result, the message would appear at the top of the customer's inbox, ensuring that the email is most likely to be seen and opened.
The model only tracks recurring campaigns. One-time campaigns are not tracked.
-
Recurring campaigns: All events for the campaign have data for that particular week (from the start date) and the following week.
-
One-time campaigns: Events are recorded for a period of seven days from start date of campaign. If a campaign has any event associated for eight days or longer, it is no longer considered a one-time campaign.
Parameters of the model
When creating the model, you will need to define the following parameters for the model:
-
Algorithm: The algorithm is the piece of code that runs the model. When you select the Send Time Optimization algorithm, you will need to define the lookback window parameter.
-
Lookback window: Defines the historical analysis window for a customer across campaigns (30, 60, 90, 120, 180, or 365 days).
-
-
Queries: The queries selected for the model generate a dataset for model training and scoring.
-
Inputs: The inputs are query attributes from the Unity data model that are used for model training and scoring. You can't make changes to model inputs.
-
Outputs: The outputs are data objects and attributes from the Unity data model that are used to store the output values of the model. You can make updates to the default mapping of model outputs.
Model inputs
To generate values, the Send Time Optimization model uses the following data.
For the model to run successfully:
-
The Medium attribute from Event must have a value of Email.
-
The Type attribute from Event must have a value of Email Click or Email Open.
Data object | Attribute | Data type | Description |
---|---|---|---|
Customer | SourceCustomerID | String | The unique identifier for the customer. |
Customer | SourceID | String | Unique identifier for the source. |
Event | Type | String |
The specific event type, such as Email Click. The Send Time Optimization model only considers the event types Email Click and Email Open. |
Event | EventTS | Timestamp | The date and time when the event was captured. |
Event | Medium | String |
The channel for the event, such as Email, SMS, and Push. The Send Time Optimization model only considers the event medium Email. |
Event | SourceEventID | String | Unique identifier for the event. |
Campaign | CampaignID | String | Unique identifier for the campaign. |
Campaign | Campaign_Type | String | The type of campaign, such as Promotional, Transactional, and Push. |
Campaign | StartDate | Timestamp | The date the campaign begins. |
Campaign | EndDate | Timestamp | The date the campaign ends. |
Campaign | Source | String | The source of the campaign. |
Campaign | Campaign_Medium | String | The channel for the campaign, such as Email, SMS, and Push. |
Model outputs
You can review values for the following output attributes in the Customer _STOdata object. Attributes represent optimal days of the week and hours of the day.
Attribute | Description | Data Type | Is Key attribute? | ||
---|---|---|---|---|---|
SourceCustomer_STOID | The unique ID for the data object, which is the same as the CustomerID. | String | Yes | ||
CampaignID | The unique identifier for the campaign. | String | Yes | ||
SourceCustomerID | The source attribute value for the Customer ID. | String | Yes | ||
SourceID | The unique identifier for the source. | String | Yes | ||
STO_Best_Day_In_Week |
Number values represent days of the week.
|
Integer | No | ||
STO_Best_Hour_In_Day |
Number values (0 to 23) represent hours in a day. The number 0 represents 12 a.m., and succeeding numbers represent corresponding hours of the day until the number 23 represents 11 p.m.
|
Integer | No |
Create and use a Send Time Optimization model
To create and use a Send Time Optimization model, you will need to do the following:
-
Follow the steps for Creating Send Time Optimization models.
-
After creating the model, follow the steps for Running training and scoring jobs.
After the model runs and creates output values, you can do the following:
-
Access Send Time Optimization data to review the values in the output attributes.
-
Learn more about Using data science data for the specific needs of your organization.
-
If needed, you can review the data science model details.