If you were looking at a given person's Journey through a segment triggered campaign, you might've seen the term "grace period". For example:
"Waiting in grace period for a day"
"Waited in grace period for 2 hours"
What is a grace period, and how does it work?
Once a user matches your campaign's trigger condition, they start your workflow. They move from action to action, as long as they don’t meet the exit condition. If we notice that the exit condition is met when we try to send them a message, we hit pause on their progress, and put them into an inactive state.
While inactive, there exists a period of time where they can match again, become active, and keep going through the campaign. This is the grace period. If the grace period ends and they're still inactive, they’ll exit the campaign. Note, there are no grace periods when a campaign exit is based on conversion segment match.
Here's an example
Say you have a campaign that looks like this:
- Trigger =
- Wait 5 minutes
- Wait 3 days
Alice enters this campaign by filling in a particular piece of information in her profile within your app, matching the
Power Users segment conditions.
- She enters the first delay.
- While waiting, Alice realises she's made a mistake with her information! She deletes that piece of information in her profile. As a result, she stops matching.
She finishes waiting five minutes. At this point, Customer.io hits pause and she becomes inactive. We don't remove Alice from the campaign; instead, we give her a "grace" period to match again.
Wait, so how long is that grace period?
Well, that depends:
If Alice stopped matching while in a delay, then it's half the length of the delay, but not less than 24 hours, and no more than 31 days. For example, if your delay is 3 days, then the grace period is 1.5 days. If it's twenty minutes, the grace period is 24 hours.
If she became inactive while waiting on a time window, then we'll wait until the end of the second window.
This is much easier with a couple of examples:
Say it's currently Sunday, 12 noon, and Alice is waiting to receive Campaign Email 1. She becomes inactive on Monday at 8AM.
- If the time window is Monday, Wednesday, or Friday between 9AM-5PM, she has until Wednesday at 5PM to rematch.
- If the time window is just Monday, 9AM-5PM, she has until the second Monday (a week later), 5PM to match.
In Journeys, you can see exactly when a user is in a grace period, because they'll have the label "Leaving" on their segment-triggered campaign.
What does that mean for my campaigns?
To understand this, let's return to Alice:
Say that half an hour after becoming inactive, Alice fixes her mistake, and re-fills that information in her profile. We still want her to continue the campaign. When she fixes her info, she'll re-join
Power Users, become active, and receive your next email.
A couple more examples
- If you want to send a transactional email for new users with a user segment filter. You send two calls:
identify(to create the user) and the event call (to trigger the campaign). Without a grace period, the transactional email may not be sent if we we processed the event call before the
- You change your trigger condition and realise a few hours later that no emails are sending. You correct this, and grace periods enable those who were bumped out to continue.
Why is it there?
We originally added grace periods because precise cutoffs and match times sometimes caused people to not receive a campaign or not continue in campaigns unexpectedly. We want to make sure we actually match everyone who should match.
Grace periods also help make sure that your users continue to get messages when we have the occasional operational issue or some planned downtime.
Hopefully, you now know a little more about how matching and re-matching works in Customer.io. If you have any questions about how this works, get in touch!