> This page is part of the [Customer.io documentation](https://docs.customer.io). For the complete index, see [llms.txt](https://docs.customer.io/llms.txt).
> Last updated: July 15, 2026

# Grace periods

A **grace period** is a period of time profiles may wait to enter your automation. Historically, it was also a period of time profiles might wait to *exit* your automation. This article explains how grace periods work now and how they used to work in case you’re troubleshooting historical journeys through automations.

## Overview

You may notice a **grace period** when viewing a profile’s journey. A grace period is a period of time profiles may wait to *enter* an automation.

[![A profile's page. The Journeys tab is selected at the top. The tab shows a journey through an automation titled Onboarding. The second step says Waiting in grace period for a day.](https://docs.customer.io/images/waited-in-grace-period-to-enter.png)](#4d18e990a1bfa1b0e70862603ed106d4-lightbox)

Historically, a grace period was also a period of time profiles might wait to *exit* your automation. Grace periods were available across multiple automation types and could impact profiles entering or exiting an automation.

Now, they only impact profiles that enter automations with our legacy segment trigger. We’re phasing grace periods out so entrance and exit behaviors are more straightforward.

This article explains two things:

1.  **How grace periods currently work:**
    
     As of November 17, 2025, only legacy segment-triggered automations have grace periods.
    
    No other automation type will hold profiles in grace periods moving forward.
    
    You know you’re using a **legacy segment trigger** if the trigger panel has these two options:
    
    *   You can *only specify in/not in segments*; with our latest segment trigger, you can also add attributes directly.
    *   You can add *Filters*. Filters are not available on our latest segment trigger.
2.  **How grace periods used to work:** This is helpful if you’re viewing a historical journey with grace periods and want to understand what that meant. This includes when a grace period happened after profiles met your exit conditions, including in legacy segment-triggered automations.
    

## How grace periods currently work

Profiles may wait in grace periods only if they have journeys in a legacy segment-triggered automation. All other automation types do not have grace periods.

If you’re viewing a historical journey and see the profile waiting in a grace period for any other automation type, see [How grace periods used to work](#how-grace-periods-used-to-work). That section also explains how profiles would wait in grace periods based on exit conditions for legacy-segment-triggered automations.

### How to identify our legacy vs latest segment trigger

You know you’re using a **legacy segment trigger** if the trigger panel has these two options:

*   You can *only specify in/not in segments*.
*   You can add *Filters*.

Legacy segment trigger

Latest segment trigger

[![Outlines what differentiates a legacy segment trigger from the latest segment trigger.](https://docs.customer.io/images/legacy-segment-trigger-comparison.png)](#d0eeedf63cef35bb6836fc31b106fa91-lightbox)

[![Outlines what differentiates the latest segment trigger from the legacy segment trigger.](https://docs.customer.io/images/latest-segment-trigger-comparison.png)](#ecc08a60e4d2a7956072fbc9599e04ef-lightbox)

If you’re creating an automation from scratch and choose “Attribute or Segement” as the trigger type, you are using the latest segment trigger. There is no way to create an automation from scratch using the legacy trigger.

However, if you duplicate a legacy segment-triggered automation, it will continue to use the legacy trigger type, and profiles could have grace periods when they enter the automation.

### When we hold profiles in entrance grace periods

Profiles might only wait in grace periods after *entering* an automation with a legacy segment trigger. This happens when profiles match the automation’s *trigger conditions*, but not the *filter conditions*. If they don’t meet the *filter conditions* by the time they reach an action that impacts a profile, they enter into a grace period.

[![A profile's page. The Journeys tab is selected at the top. The tab shows a journey through an automation titled Onboarding. The second step says Waiting in grace period for a day.](https://docs.customer.io/images/waited-in-grace-period-to-enter.png)](#4d18e990a1bfa1b0e70862603ed106d4-lightbox)

An action that impacts a profile is a message delivery, attribute update, manual segment update, collection query, create event action, or batch update. A profile would move through a delay before we re-evaluate filters.

If they match the filter conditions by the end of the grace period, they will move forward. Otherwise, they’ll exit the automation.

### Prevent grace periods

If you only want profiles to trigger legacy segment automations when they meet all of your entrance criteria, you have a couple options:

*   Incorporate your segment filters into your trigger conditions.
    
*   Create a new segment-triggered automation with the conditions you want. Profiles never have grace periods in these automations.
    
    Note, you can’t simply duplicate a legacy segment-triggered automation because that creates a new automation with the old trigger. Creating a segment-triggered automation from scratch will use the latest trigger with no grace periods.
    

With both options, profiles must meet all your trigger conditions before starting a journey in your automation and won’t wait in a grace period.

If you create a new segment-triggered automation, check out more of the [differences between the old and new triggers](/messaging/send/automations/triggers/#differences-between-triggers-attribute-or-segment-vs-segment-change). You may want to add time-based logic to ensure you’re targeting the right profiles.

## How grace periods used to work

We’re phasing out grace periods so entrance and exit behaviors are more straightforward. Historically, a grace period was a period of time profiles might wait to enter or exit your automation. This was meant to ensure that profiles that suddenly stopped/started matching your entrance or exit conditions would continue through your automation, but this has proven more confusing than helpful over time.

Grace periods were available across multiple automation types and could impact profiles entering or exiting your automation:

Trigger type

Possible grace period after *entering* an automation

Possible grace period before *exiting* an automation

[Legacy segment trigger](#how-to-identify-a-legacy-segment-trigger)

yes

yes

[Latest segment trigger](#how-to-identify-a-legacy-segment-trigger)

no

no

Object updated

no

yes

Profile added to object

no

yes

Relationship changed with object

no

yes

Important date

no

yes

Event

no

no

Form submission

no

no

Webhook

no

no

[Now, profiles may only wait in a grace period when they enter an automation with a legacy segment trigger](#how-grace-periods-currently-work). But since this is our *legacy* segment trigger, and our latest segment trigger doesn’t have grace periods, eventally grace periods will be completely phased out of automations.

### When we used to hold profiles in exit grace periods

Automations used to have exit grace periods, but we’ve deprecated this functionality across all automation types to make exit behavior more predictable.

You may come across exit grace periods when looking at a historical journey. It may say “Waited in a grace period” before they officially left the automation. This would happen if the automation let profiles exit early. When someone matched the conditions to exit, we’d first hold them in a grace period.

[![A profile's page. The Journeys tab is selected at the top. The tab shows a journey through an automation titled Onboarding. The third step says Waited in grace period for a day.](https://docs.customer.io/images/waited-in-grace-period.png)](#9069617bd3e8f1ee15dfd0b81f31b326-lightbox)

Specifically, if profiles could exit your automation early ***when they no longer matched filter conditions***, we would first hold them in a grace period before ending their journey.

[![campaign-exit-criteria-filters-only.png](https://docs.customer.io/images/campaign-exit-criteria-filters-only.png)](#24fb4df82c0858b4f5a2b133f76f977a-lightbox)

We did this to ensure profiles met your conditions for a period of time and should actually exit. If they rematched filters within that timeframe, they’d move forward; otherwise, they’d exit.

For legacy segment-triggered automations, the early exit condition checked when they no longer matched filter *or* trigger conditions. So if you’re troubleshooting a historical journey in this type of automation, keep in mind they only had to stop matching trigger OR filter conditions, not both, to wait in a grace period then exit.

*   *   [Overview](#overview)
    *   [How grace periods currently work](#how-grace-periods-currently-work)
        *   [How to identify our legacy vs latest segment trigger](#how-to-identify-our-legacy-vs-latest-segment-trigger)
        *   [When we hold profiles in entrance grace periods](#when-we-hold-profiles-in-entrance-grace-periods)
        *   [Prevent grace periods](#prevent-grace-periods)
    *   [How grace periods used to work](#how-grace-periods-used-to-work)
        *   [When we used to hold profiles in exit grace periods](#grace-periods-when-exiting-a-campaign)

Copy page

Copy page [Download .md](/messaging/send/automations/grace-periods.md)

Is this page helpful?

![](https://docs.customer.io/images/export-success.png) ![](https://docs.customer.io/images/export-failure.png)

# How can we make it better?

Close

Do you need help from Customer.io support?  No  
 Yes

What part of Customer.io do you need help with? 

How can we improve this page?

Email (optional):  Please provide a valid email address

 I am not a bot

 

We appreciate your feedback!

Our support team will contact you as soon as possible
