Scheduled flag changes

Scheduling feature flag changes enable you to automatically change flag properties at a future point in time. For example, you can schedule an initial release of a flag for internal testing, then enable it to the beta users group 2 days later, and finally, roll it out to 100% of the users in 2 weeks.

This is also useful if your releases fall outside normal working hours. For example, a ticket sale starting at midnight.

How to schedule a change:

  1. Navigate to the relevant feature flag.
  2. Select the Schedule tab.
  3. Under Change type:
    • Select Change status to enable or disable your flag at a scheduled time.
    • Select Add condition to append rollout conditions to your flag at a scheduled time.
    • Select Update variants to update the variant keys, descriptions, payloads, or rollouts.
  4. Select the Date and time of your scheduled change using the date picker.
  5. Optionally, use the Repeats dropdown to set a recurrence interval. You can choose from Daily, Weekly, Monthly, Yearly, or Custom (cron) for flexible scheduling with a cron expression. When the change type is Change status, the dropdown also includes Paired schedules presets (see below). When a repeat option is selected, an Ends date picker appears to set an optional end date for the recurring schedule.
  6. Click Schedule.

Scheduled changes appear below the form, grouped into an Active & upcoming section and a collapsible History section.

Scheduled flag changes

Edit a scheduled change

To edit an existing scheduled change, click the pencil icon on any active schedule card. This opens a modal where you can modify:

  • Date and time or next run for the scheduled change
  • Repeat interval – switch between one-time, daily, weekly, monthly, yearly, or custom cron
  • Cron expression – when using custom cron scheduling
  • End date – for recurring schedules
  • Enable/disable status – for Change status schedules

Only changed fields are saved. Editing a paused schedule does not automatically resume it.

Recurring schedules

Recurring schedules repeat a scheduled change at a regular interval. You can choose from daily, weekly, monthly, or yearly recurrence, or use a custom cron expression for more flexible scheduling. You can optionally set an end date for any recurring schedule.

Recurring schedules are supported for the following change types:

  • Change status – toggle the flag on or off on each recurrence
  • Update variants – replace the variant configuration on each recurrence. Each run overwrites the previous variant setup, so any manual changes made between runs are replaced.

Recurring schedules are not supported for the Add condition change type because it appends a new condition on each run, which creates duplicates.

Paired schedule presets

When the change type is Change status, the Repeats dropdown includes a Paired schedules option group. Selecting a paired preset creates two complementary cron schedules – one to enable the flag and one to disable it – in a single action.

The available presets are:

PresetEnable scheduleDisable schedule
Business hours0 9 * * 1-5 (9:00 AM, Mon–Fri)0 17 * * 1-5 (5:00 PM, Mon–Fri)
Weekdays only0 0 * * 1 (midnight Monday)59 23 * * 5 (11:59 PM Friday)
Custom pairUser-defined cronUser-defined cron

With Custom pair, you provide your own enable and disable cron expressions.

After selecting a preset, click Schedule pair to create both schedules. You can optionally set an Ends date to limit how long the paired schedules run.

Custom cron expressions

For more flexible scheduling, select Custom (cron) from the Repeats dropdown and enter a standard 5-field cron expression. A human-readable preview of the schedule is displayed below the input (e.g., "At 09:00 AM, Monday through Friday").

Cron expressions use the format: minute hour day-of-month month day-of-week

Here are some common examples:

ExpressionDescription
0 9 * * 1-5Every weekday at 9:00 AM
0 0 * * *Every day at midnight
0 9 * * 1Every Monday at 9:00 AM
0 18 * * 5Every Friday at 6:00 PM
0 0 1 * *First day of every month at midnight

Note: Only standard 5-field cron expressions are supported. Six-field expressions (with seconds) are not allowed.

Copy scheduled changes across projects

When copying feature flags across projects, you can optionally include pending scheduled changes. This is useful when you want to replicate your entire flag configuration, including future automated changes, to another project.

When copying schedules:

  • Only pending (unexecuted) scheduled changes are copied
  • All schedule properties are preserved, including timing, recurrence, payload, and end dates
  • Schedules that have already executed are not copied to avoid duplicating completed actions

To copy schedules, check the Copy schedules option in the Projects tab when copying a flag. The checkbox shows the number of pending schedules available to copy.

Community questions

Was this page useful?

Questions about this page? or post a community question.