Schedule Types: Simple, Cron, and On-Demand
The Workflow Scheduler offers three schedule types to match different operational patterns. Each has its own configuration interface and is suited to specific use cases.
Simple Interval
The Simple schedule runs the workflow every N minutes, hours, or days. You enter a number and choose the unit from a dropdown.
Examples:
- Every 24 hours — a daily refresh starting from when the workflow was created.
- Every 6 hours — four times per day, useful for near-real-time deduplication.
- Every 7 days — a weekly run for lower-frequency processes.
- Every 30 minutes — high-frequency refresh for rapidly changing data (note: use only when each pipeline execution is fast enough to complete within the interval).
The simple interval is measured from the last scheduled start time, not from completion. If a run is delayed due to a retry, the next run still fires at the original interval boundary.
Simple intervals do not let you pin runs to specific times of day. If you need the workflow to run at 2am exactly — not just "every 24 hours from whenever it was created" — use a Cron schedule instead.
Cron Expression
The Cron schedule accepts a standard 5-field cron expression for full control over timing. This is the most powerful option and allows you to schedule runs at precise times on specific days.
The cron expression format is:
minute hour day-of-month month day-of-week
Common examples:
0 2 * * *— Daily at 2:00am0 2 * * 1-5— Weekdays (Mon–Fri) at 2:00am0 0 1 * *— First day of each month at midnight*/30 * * * *— Every 30 minutes0 6,18 * * *— Twice daily at 6am and 6pm
The form includes a visual cron builder to help you construct expressions without memorizing the syntax. After entering an expression, the scheduler previews the next 5 upcoming run times so you can verify the schedule before saving. See Building Cron Expressions for a detailed guide.
On-Demand
An On-Demand workflow has no automatic schedule. It only runs when you explicitly click Run Now on the workflow card or detail page.
On-Demand is useful when:
- The pipeline should run in response to a specific event (such as a file landing in a folder) rather than on a fixed clock schedule.
- You want to set up the workflow configuration once and trigger it manually whenever needed, without a recurring timer running in the background.
- You are testing a new workflow and want full control over when it executes.
- A downstream system or operator triggers runs manually based on business conditions.
On-Demand workflows still appear in the scheduler list and accumulate execution history. They benefit from all the same retry, notification, and step configuration as scheduled workflows — the only difference is they do not fire automatically.
Changing the Schedule Type
You can change the schedule type of an existing workflow at any time by editing it. For example, you might create a workflow as On-Demand for initial testing, then switch it to a Cron schedule once you are confident in the configuration. Changes take effect immediately — the next run time updates as soon as you save.
To understand how to act on individual workflow runs regardless of schedule type, see Manually Triggering a Workflow.