Two ways to schedule
Both appear in Activity as runs with the source schedule.
Create a schedule
Open Schedules → New schedule.
Changes take effect within about 15 seconds.
Cron expressions
Five space-separated fields:* means every value, */n every n-th, a-b a range, and a,b a list. Because the cron is read in the schedule’s time zone, 0 9 * * * with Europe/London is 09:00 London time all year, including across daylight saving changes.
What the target receives
Read the time from
scheduled_at rather than the current clock so a delayed run still works on the right window.
Overlap
If a run takes longer than the gap between firings, two copies could run at once.- Allow starts a new run regardless. Fine for independent, quick work.
- Skip drops a firing while the previous run is still queued or running. Use it for sweeps, syncs and anything that must not run twice at once. A skipped firing is recorded as skipped in the history.
Catch up
If the schedule’s server was down at a firing time, that run is normally lost. With Catch up on, one missed run is made up once the scheduler is back. It catches up once per schedule, not once per missed slot, so a day of downtime does not cause 288 runs of a five-minute job.Test it: Run now
Use Run now on a schedule to fire it immediately, exactly as the clock would. Then open Activity → Flow runs to see the run and what it received. A manual run ignores the overlap setting.Manage it from code
cron or interval_seconds. An invalid cron expression or time zone is refused with a message saying why.
Limits
Each plan includes a number of scheduled tasks (3 on Free up to 1,000 on Scale). See Plans and limits. Schedules run in the background like any flow, so they also count towards your monthly flow runs.Patterns
Prefer sweeps to delayed jobs
Instead of one delayed job per invoice, run a short schedule that finds whatever is due (due_at passed and reminded false), handles it, and marks it. A missed run only delays things until the next one, and nothing is lost if the process restarts.
Nightly clean-up
0 3 * * * with Skip: delete expired records in a flow with the Delete records block, in batches.
Weekly digest
0 8 * * 1 in the user’s region’s time zone: a flow that gathers last week’s activity and uses Send email with a template.
Poll a partner
interval_seconds: 300 with Skip: a flow that calls the partner’s API and stores what’s new. Make it idempotent (use their ids as unique keys) so repeats are harmless.
Troubleshooting
Background jobs
What a scheduled run becomes.
Flows
What a schedule runs.