Pre-Computing the segments allows you to send highly time-sensitive campaigns at the right time. It ensures that segmentation is done in advance so that you can send campaigns immediately at the scheduled time.
It is highly useful when you have to send a broadcast/multicast, say for a Flash Sale, which starts at 2:00 pm, and you want users to start receiving messages at 2:00 pm itself without spending even a few seconds on segmentation.
On the Scheduling page (Step 3) of campaign creation, select the check box Compute target audience in advance to ensure that campaigns are sent faster and at the right time. This is beneficial for cases when you are using a complex segmentation query that usually takes some time to run.
How does it work?
Generally, while running a campaign, segmentation starts at the campaign's scheduled time and fetches users from the segmentation at the time of sending the campaign so that no potential customer is missed.
But in cases where the timing of the message is of greater essence, and marketers don't want campaigns to be delayed by even a few minutes taken to calculate segments, pre-compute helps ensure timely delivery.
Pre-Compute solves this problem by running the segmentation query in advance anytime between 30 mins to 2 hours. Hence, at the campaign send time, the target users are already available, and campaign sending starts right away at the scheduled time without any delays.
Note: The trade-off here is that users who qualify for the Segment during advance computation and actual send time will not be sent the campaign. For example, let's say you want to target users who added the product to the cart in the last 24 hours, and there are 5K users who qualify for this criteria when the campaign was picked for pre-compute. However, if 10 more users have added the product to the cart after that, these users won't be targeted by this campaign.
So, it really involves the trade-off between the timely delivery of a campaign vs capturing all the intended users.
Editing a campaign when pre-compute is ON
If the segmentation query of the campaign was edited 30 mins prior to the campaign sending time, then the list of users computed in advance will be dropped, and the target users will be fetched at the campaign sending time. In this case, the pre-computed segment will not be honored, and the campaign will be sent in the usual flow.