sending time optimization

Emarsys in numbers

2.5B contacts


1.2B unique contacts

first idea

every day usage

~ 1 year

1. what & why

2. how

3. how much

truly personal

optimize within a day


available data?

  • historical sends

  • opens, clicks

  • mobile / desktop

can we optimize
based on past data?

opportunity for improvement?

differences in open rate
for one contact

systematic differences between campaigns by send hour?

differences in open rate for all contacts in reality

06:00 16:00 20:00 SD
contact_A 0.5 0.33 0.4 0.085
contact_B 0 0.25 0.25 0.144

reality vs simulation

how to choose personal sending times?

agile data

at time of last open


bandit learning algorithm


algo trained for 3 years

bandit algorithm

bandit algorithm

  • arms:       possible send times

  • winning: open of sent message

personal send hour for one contact over time

exploration ...

... exploitation

algo adaptation

  • priors

  • history of 12 months

  • 2 hour intervals

piloting starts!

what to measure?

present performance


future potential




uplift in first 2 hours

uplift in open rate

uplift in click rate

in customer engagement

2-12% increase

handle recent campaigns

distorting priors

priors from STO emails

more piloting

non-random A/B testing

weekend effect with shifted sending for control group

  1. send time opt. worth it

  2. bayesian bandit algo

  3. algo is only one component of success

Made with