Cron Expression Explainer
Paste a cron expression to read it in plain English, check every field, and see the next run times in the timezone you pick. Supports 5- and 6-field crontabs, steps, ranges, names, and the @daily-style shortcuts. This explains a schedule; it does not run one.
How cron expressions work
The five fields
A standard cron line has five fields, in order: minute (0 to 59), hour (0 to 23), day of month (1 to 31), month (1 to 12), and day of week (0 to 7, where both 0 and 7 mean Sunday). Some systems add a leading sixth field for seconds. A * means every value, so * * * * * runs every minute.
Lists, ranges, and steps
Each field can be more than a single number. 1,15 is a list. 1-5 is a range (Monday to Friday in the weekday field). */15 is a step that means every 15th value, and 0-30/10 steps within a range. Month and weekday also accept names like JAN or MON. Shortcuts like @daily, @hourly, and @weekly stand in for common patterns.
The day-of-month and day-of-week quirk
When both the day-of-month and the day-of-week fields are restricted (neither is *), most cron implementations run the job if either one matches, not both. So 0 0 13 * 5 fires on the 13th of the month and on every Friday. This surprises people, so this tool follows that rule and points it out.
Timezone matters
A cron job runs in whatever timezone its system or scheduler is set to, which is often UTC on servers. The next-run times below use the timezone you select here so you can sanity-check, but always confirm where the job actually runs before trusting a local time.