cronuru
Reference

Cron Cheat Sheet

The five fields, special characters, shortcuts, common patterns, and a dialect comparison — everything on one page. Bookmark it or print it.

Anatomy of a cron expression

* * * * *
│ │ │ │ │
│ │ │ │ └── day of week  (0–6, Sun=0)
│ │ │ └──── month        (1–12)
│ │ └────── day of month (1–31)
│ └──────── hour         (0–23)
└────────── minute       (0–59)

The five fields

Field Range Example Meaning
Minute 0–59 30 At minute 30
Hour 0–23 14 At 2 PM (24-hour clock)
Day of month 1–31 1 On the 1st
Month 1–12 or JAN–DEC 3 In March
Day of week 0–6 or SUN–SAT 1 On Monday (Sun=0)

Special characters

Char Name Meaning
* Any value Every valid value for the field
, List 1,15 → the 1st and the 15th
- Range 1-5 → Monday through Friday
/ Step */15 → every 15th value, starting from 0
? No specific value Quartz / EventBridge placeholder for an unused day field
L Last Last day of month / week (Quartz, EventBridge, Spring)
W Nearest weekday 15W → nearest weekday to the 15th (Quartz, EventBridge)
# Nth weekday MON#1 → first Monday of the month (Quartz, EventBridge)

Shortcuts

Shortcut Equivalent Note
@yearly 0 0 1 1 * Also @annually
@monthly 0 0 1 * *
@weekly 0 0 * * 0 Sunday at midnight
@daily 0 0 * * * Also @midnight
@hourly 0 * * * *
@reboot Once at startup (Linux crontab only)

Supported by Linux crontab. Kubernetes accepts the macros but not @reboot. GitHub Actions, AWS EventBridge, and Quartz don't support shortcuts.

Common patterns

Seconds

Minutes

*/5 * * * * Every 5 Minutes
*/15 * * * * Every 15 Minutes
*/10 * * * * Every 10 Minutes
* * * * * Every Minute
*/30 * * * * Every 30 Minutes
*/2 * * * * Every 2 Minutes

Hours

0 * * * * Every Hour
0 */2 * * * Every 2 Hours
0 */3 * * * Every 3 Hours
0 */6 * * * Every 6 Hours
0 9-17 * * 1-5 Business Hours
0 */12 * * * Every 12 Hours

Daily

0 0 * * * Daily at Midnight
0 9 * * * Daily at 9 AM
0 12 * * * Daily at Noon
0 0,12 * * * Twice Daily

Weekly

0 9 * * 1-5 Weekdays at 9 AM
0 0 * * 1 Every Monday
0 0 * * 5 Every Friday
0 0 * * 6,0 Weekends
0 0 * * 0 Every Sunday
0 17 * * 1-5 Weekdays at 5 PM
0 0 * * 2 Every Tuesday
0 0 * * 3 Every Wednesday
0 0 * * 4 Every Thursday
0 0 * * 6 Every Saturday

Calendar

0 0 1 * * First of Month
0 0 28-31 * * Last Day of Month
0 0 1,15 * * 1st and 15th
0 0 1 1 * Yearly
0 0 1 */3 * Quarterly
0 0 15 * * 15th of Month

Dialect comparison

Dialect Fields Seconds Year Sunday
Unix cron 5 0
Quartz Scheduler 7 Yes Yes 1
Kubernetes CronJob 5 0
AWS EventBridge 6 Yes 1
Spring @Scheduled 6 Yes 0
GitHub Actions 5 0

Day-of-week: Unix-family dialects number Sunday as 0; Quartz and AWS EventBridge use 1. Prefer name forms (MON, SUN) to avoid off-by-one bugs when porting.

Need to check a specific expression? Try the parser, the validator, or the converter.