Cron Expression Parser
Parse and explain cron expressions. See next 10 scheduled run times instantly.
*
MIN
Minute
0–59
*
HRS
Hour
0–23
*
DOM
Day
1–31
*
MON
Month
1–12
*
DOW
Weekday
0–6
Quick Examples
What Is a Cron Expression?
A cron expression is a string of five (or six) fields separated by spaces that specifies a schedule for a recurring task. Cron is the time-based job scheduler in Unix-like operating systems. It is used to schedule scripts, backups, data processing jobs, notifications, and any other automated task that needs to run on a schedule.
Cron Field Reference
| Position | Field | Allowed Values | Special Characters |
|---|---|---|---|
| 1 | Minute | 0 – 59 | * , - / |
| 2 | Hour | 0 – 23 | * , - / |
| 3 | Day of Month | 1 – 31 | * , - / ? L W |
| 4 | Month | 1 – 12 | * , - / (Jan–Dec) |
| 5 | Day of Week | 0 – 6 | * , - / ? L # (0,7=Sun) |
Special Characters
| Character | Meaning | Example | Description |
|---|---|---|---|
| * | Any value | * in minute | Match every minute |
| , | Value list | 1,15,30 | At minutes 1, 15, and 30 |
| - | Range | 9-17 | Every hour from 9 to 17 |
| / | Step | */5 | Every 5 units (every 5 minutes) |
| ? | No specific | ? in dom | Used in dom or dow when the other is specified |
| L | Last | L in dom | Last day of the month or last weekday |
| W | Weekday | 15W | Nearest weekday to the 15th |
| # | Nth weekday | 5#3 | 3rd Friday of the month |
Common Cron Patterns
| Expression | Description |
|---|---|
| * * * * * | Every minute |
| */5 * * * * | Every 5 minutes |
| */15 * * * * | Every 15 minutes |
| 0 * * * * | Every hour at minute 0 |
| 0 9 * * * | Every day at 9:00 AM |
| 0 9 * * 1-5 | Every weekday at 9:00 AM |
| 0 9,17 * * 1-5 | At 9 AM and 5 PM on weekdays |
| 0 0 * * 0 | Every Sunday at midnight |
| 0 0 1 * * | First day of every month at midnight |
| 0 0 1 1 * | January 1st at midnight every year |
| */15 9-17 * * 1-5 | Every 15 min during business hours on weekdays |
| 0 0 * * 1 | Every Monday at midnight |
| 30 6 * * 1,3,5 | 6:30 AM on Monday, Wednesday, Friday |
| 0 12 15 * * | Noon on the 15th of every month |
| 0 2 * * * | Every day at 2:00 AM |
@Alias Shortcuts
| Alias | Equivalent | Description |
|---|---|---|
| @yearly / @annually | 0 0 1 1 * | Run once a year on Jan 1st at midnight |
| @monthly | 0 0 1 * * | Run once a month on the 1st at midnight |
| @weekly | 0 0 * * 0 | Run once a week on Sunday at midnight |
| @daily / @midnight | 0 0 * * * | Run once a day at midnight |
| @hourly | 0 * * * * | Run once an hour at the beginning of the hour |
Common Mistakes
- Day-of-week is 0-indexed (0 = Sunday). Many people assume 1 = Monday, but in standard cron, 0 and 7 both mean Sunday, and 1–6 are Monday through Saturday.
- Month is 1-indexed (1 = January). Unlike day-of-week, months start at 1. Some systems also accept Jan, Feb, ... abbreviations.
- DOM and DOW interact with OR logic. If you specify both a day-of-month and a day-of-week restriction, most cron implementations fire if EITHER condition is true, not only when both are true.
- Minute granularity. Standard cron has a minimum resolution of 1 minute. For sub-minute scheduling, use a different scheduler.
- Timezone.Cron runs in the server's local timezone by default. If your server is in UTC but you expect local times, set the timezone explicitly (e.g., in systemd timers or Kubernetes CronJobs).