The five fields
A traditional five-field cron expression represents minute, hour, day of month, month, and day of week. An asterisk means every allowed value; commas select several values; hyphens describe ranges; and slashes describe steps.
For example, “0 9 * * 1-5” means minute zero of hour nine on weekdays. Exact day-of-week numbering and extended syntax can vary between cron implementations, so check the scheduler you actually use.
Timezone and daylight saving
A schedule is interpreted in a timezone chosen by the host or scheduler. A daily job can run at an unexpected local hour after migration, and daylight-saving transitions can skip or repeat wall-clock times. Define the timezone explicitly when the platform allows it.
Day fields can surprise you
Some cron implementations treat day-of-month and day-of-week as alternatives when both are restricted. This can produce more runs than a reader expects. Avoid combining them unless you have verified the platform’s behavior.
Production checklist
Translate the expression into plain language, calculate several upcoming run times with the target scheduler, confirm timezone, make the job idempotent, prevent unwanted overlap, and monitor both failures and missing executions. A correct expression does not guarantee a reliable job.
Turn the concepts in this guide into a practical estimate with DevCalc’s free browser-based tools.
Open related tools →