CronLab

Parse, build and explain cron expressions — with 20 next runs.

Everything runs in your browser — nothing is sent anywhere

Cron expression (interpreted in UTC)

Field by field

Visual builder

Changing a field rewrites the expression above.

Next 20 runs

Runs in the next 30 days

Natural language → cron

Cron syntax reference

*any value — the field never restricts a run
5one exact value
1,15,30a list of values
9-17an inclusive range
*/15a step — every 15th value from the start of the field
9-17/2a step within a range — 9, 11, 13, 15, 17
5/10a step from a value to the end of the field
MON-FRInamed days — SUN MON TUE WED THU FRI SAT
JAN,JULnamed months — JAN…DEC
@dailynickname — also @hourly @weekly @monthly @yearly
@rebootruns once at startup, on no clock schedule
0 and 7both mean Sunday in the day-of-week field
The day-of-month / day-of-week rule that trips everyone up: when both are restricted, cron runs when either matches — not both. So 0 0 1 * MON fires on the 1st of the month and on every Monday, not just on Mondays that fall on the 1st. If only one of the two is restricted, it alone decides.