0 9 * * *
| Symbol | Meaning | Example |
|---|---|---|
* |
Any value | * * * * * |
, |
List of values | 1,15 * * * * |
- |
Range | 0 9-17 * * * |
/ |
Step / every N | */15 * * * * |
MIN HOUR DOM MON DOW
Cron Expression Generator & Parser
What is a cron expression?
Cron is a Unix job scheduler that runs commands on a fixed schedule. Each expression has five fields: minute (0–59), hour (0–23), day of month (1–31), month (1–12), and day of week (0–6, Sunday = 0). The asterisk * matches any value. */n runs every nth step. n-m defines a range. n,m lists specific values.
Common patterns
*/15 * * * *— every 15 minutes0 9 * * 1-5— weekdays at 9:00 AM0 0 1 * *— first of every month at midnight0 0 * * 0— every Sunday at midnight30 8 * * 1— every Monday at 8:30 AM
Frequently Asked Questions
What is the minimum cron interval?
One minute. For sub-minute scheduling, use a dedicated scheduler such as APScheduler or node-cron, or a platform that supports second-level precision like systemd timers.
How do I run a job on weekdays at 9 AM?
Use <code>0 9 * * 1-5</code>. The fifth field is day of week: 1 = Monday, 5 = Friday.
When both day-of-month and day-of-week are set, which takes precedence?
In Vixie cron (the most common implementation), the job runs when either condition is true. <code>0 0 1 * 5</code> fires at midnight on the 1st of every month and on every Friday.
Why does month start at 1 but day-of-week start at 0?
Month (1–12) follows calendar convention. Day of week (0–6) reflects the original POSIX design where Sunday = 0. Some systems also accept 7 as Sunday.
What is the difference between */5 and 0/5 in the minute field?
<code>*/5</code> runs at :00, :05, :10 ... :55. <code>0/5</code> does the same because 0 is the starting offset. Use <code>15/5</code> to start at :15 instead.