Five-field cron format

* * * * *
| | | | |
| | | | +-- Day of week: 0-7, where 0 or 7 is Sunday
| | | +---- Month: 1-12
| | +------ Day of month: 1-31
| +-------- Hour: 0-23
+---------- Minute: 0-59

Operators

OperatorExampleMeaning
** * * * *Every valid value for that field.
,0 9 * * 1,5A list of specific values.
-0 9-17 * * 1-5A continuous range.
/*/15 * * * *A step interval from the base range.

Every 5 minutes

*/5 * * * *

Weekdays at 8 AM

0 8 * * 1-5

First day of each month

0 0 1 * *

Every Monday and Friday

0 9 * * 1,5

Every 30 minutes from 8 AM to 8 PM

*/30 8-20 * * *

Platform differences

Linux crontab normally uses five fields. Quartz, AWS EventBridge, and some enterprise schedulers add seconds or year fields. GitHub Actions evaluates schedules in UTC. Kubernetes CronJob follows cron syntax through the controller and can use a configured timezone on newer clusters.

When day-of-month and day-of-week are both restricted, scheduler behavior can differ by platform. For production jobs, keep one of those fields as * unless the scheduler documentation explicitly says how the two fields combine.