Send Time Optimization (STO) is an advanced scheduling feature in Optimove that delivers marketing campaigns to each customer at their optimal engagement time. By analyzing customer engagement data, Optimove’s machine learning algorithm identifies the best time to send messages, increasing the likelihood of interaction.
Supported Channels
- Mobile Push
How It Works
Send Time Optimization leverages customer engagement data to determine the best time to send messages. Here’s how it operates:
- Analyzes engagement data, including opens (excluding machine opens), clicks, and web/app activity.
- A machine learning algorithm assigns priority scores for each hour of the day for every customer and channel.
- Messages are sent at the highest-priority time within the campaign’s defined send time window.
- If a customer’s optimal time has passed before the campaign starts, they receive the message at their next best time.
Customers with insufficient data are assigned a randomly distributed time, helping train the model.
- Optimal send time priorities are recalculated twice daily (00:00 and 12:00 UTC).
How to Enable Send Time Optimization
To enable Send Time Optimization for a scheduled campaign:
- Under “Execution Details,” select a supported channel (Email or Mobile Push).
- In the “Send Time” field, choose the “Agentic Decisioning” option.
- Configure the start and end times to define the send time window.
- A 24-hour window is recommended to maximize effectiveness, as it covers more customers’ optimal send times.
- If multiple templates are selected, the send time window applies to all templates for the channel.
- Save or update your campaign.
Considerations & Limitations
- Requires Campaign Execution 2.0 to be enabled.
- The “Send by Customer Local Time Zone” option is disabled for STO campaigns, as the algorithm determines the best time regardless of time zone.
- Not recommended for time-sensitive campaigns requiring immediate delivery.
- During the first month of a new activation, messages are sent at randomized times (exploration period).
Frequently Asked Questions
How does STO work with Conditional Campaign Execution?
The behavior depends on which version of Conditional Campaign Execution the client uses.
Conditional Campaign Execution V1
The complete list of eligible customers (for all hours) is shared once, just before the campaign starts. Optimove executes the campaign separately for each hour of the send time window, using the pre-validated list to ensure ineligible customers do not receive the campaign.
Conditional Campaign Execution V2
A separate list of eligible customers is shared for each hour of the send window, as close as possible to the send time. Optimove executes the campaign hourly using the relevant list to ensure ineligible customers do not receive the campaign.
How does STO work with Run Anyway?
If Run Anyway is enabled for an STO campaign, the campaign starts at the defined start time, regardless of the batch-data process status.
How does STO work with Force Run?
If the batch-data process is delayed and Force Run is enabled, the campaign executes once the batch-data process completes, provided the force run time limit has not passed.
The execution time becomes the new start time, and customers whose optimal send time has passed are assigned their next best send time.
What time range of historical data is used?
Optimove uses up to 150 days of historical data, with the exact range varying depending on the machine learning model.
Does the algorithm account for day of the week?
Yes, the machine learning algorithm considers the day of the week. A customer’s optimal send time may differ between weekdays and weekends.
How can I test Send Time Optimization?
The effectiveness of Send Time Optimization varies by campaign, depending on factors like the send time window and campaign content.
To test its impact, run an A/B test comparing a campaign sent at a specific time versus one using Send Time Optimization. Use identical channels, templates, and promotions to avoid skewing results.