What Is a Cron Schedule?
Every automation has a schedule field that determines when it runs automatically. The schedule uses cron syntax -- a compact five-field format that originated in Unix systems and is now the universal standard for expressing recurring schedules.
A cron expression looks like this:
* * * * *
| | | | |
| | | | +--- Day of week (0-6, where 0 = Sunday)
| | | +------ Month (1-12)
| | +--------- Day of month (1-31)
| +------------ Hour (0-23)
+--------------- Minute (0-59)
Each field defines when the automation should trigger. The engine checks the schedule every minute and runs the automation when all five fields match the current time.
Common Schedules
Here are the schedules you will use most often, with plain-English explanations:
| Schedule | Meaning |
|---|---|
0 8 * |
Daily at 8:00 AM UTC |
0 /4 |
Every 4 hours (midnight, 4 AM, 8 AM, noon, 4 PM, 8 PM UTC) |
/30 * |
Every 30 minutes |
/15 * |
Every 15 minutes |
0 8 1-5 |
Weekdays only at 8:00 AM UTC |
0 8 0 |
Sundays at 8:00 AM UTC |
0 0 1 |
First of every month at midnight UTC |
0 6,18 * |
Twice daily at 6:00 AM and 6:00 PM UTC |
30 |
Every hour at the 30-minute mark |
0 0 * |
Daily at midnight UTC |
/3 * |
Every 3 minutes |
0 8 1 |
Every Monday at 8:00 AM UTC |
Special Characters
| Character | Meaning | Example |
|---|---|---|
* |
Every possible value | * = every minute |
*/N |
Every N units | /15 * = every 15 minutes |
N-M |
Range from N to M | 0 8 1-5 = weekdays (Mon-Fri) |
N,M |
Specific values | 0 6,12,18 * = 6 AM, noon, 6 PM |
| A number | That exact value | 0 8 * = at exactly 8:00 |
You can combine these within a single field. For example, 30 16,18,20,22 * runs at 4:30 PM, 6:30 PM, 8:30 PM, and 10:30 PM UTC.
Setting the Schedule
In JSON configuration:
{
"name": "Daily Inventory Sync",
"schedule": "0 8 * * *",
"type": "products",
"action": "import"
}
In the SureDone UI: When editing an automation through the dashboard, there is a schedule field where you can enter the cron expression directly or use the visual schedule builder to select the timing.
Manual Runs
Regardless of the cron schedule, you can always trigger an automation manually. This is useful for:
- Testing a new or modified automation before it runs on schedule
- Running on-demand when you receive an updated file from a vendor outside the normal schedule
- Debugging an automation that did not produce the expected results on its last scheduled run
Manual runs use the same configuration as scheduled runs. The schedule only determines automatic timing -- it does not prevent or limit manual execution.
Timezone Conversion Tips
Since all schedules are in UTC, here is a quick reference for common US and European timezones:
| Local Time | UTC Equivalent (Standard) | UTC Equivalent (Daylight) |
|---|---|---|
| 8:00 AM US Eastern | 0 13 * |
0 12 * |
| 8:00 AM US Central | 0 14 * |
0 13 * |
| 8:00 AM US Pacific | 0 16 * |
0 15 * |
| 9:00 AM UK | 0 9 * |
0 8 * |
| 9:00 AM Central Europe | 0 8 * |
0 7 * |
Recommended Tools
Building and testing cron expressions by hand can be error-prone. Use these tools to verify your schedule:
- crontab.guru -- Paste a cron expression and see a plain-English description of when it will run, plus the next several execution times. This is the single best tool for validating cron schedules.
- crontab-generator.org -- If you prefer a visual approach, select your desired frequency and the tool generates the cron expression for you.