Cron expression parser
Reading your clock…
Calculated in your browser · nothing is uploaded
Reads a five-field cron expression back in plain English, names each field so you can see which is which, and lists the next six times it will fire in your own time zone.
How to read a cron expression
The rule that catches everyone is the relationship between the two day fields. Day-of-month and day-of-week are **ORed** when both are restricted, not ANDed: `0 0 1 * 1` runs on the 1st of every month **and** on every Monday, not on Mondays that fall on the 1st. Every other field is ANDed, which makes the exception genuinely surprising, and it is why an expression meant to run one Monday a month runs five times instead. If you need both conditions, the standard answer is to check the date in the job itself. Step values have a second surprise. `*/15` is every 15 minutes as expected, but `5/10` means "from 5, then every 10" — so minutes 5, 15, 25, 35, 45, 55 — rather than "just minute 5". A bare number with a step runs to the end of the range. One field is ambiguous by design: day-of-week accepts both 0 and 7 for Sunday, because different implementations chose differently and cron ended up accepting both.
Questions
No. The two day fields are ORed, so it runs on the 1st and on every Monday. That is the POSIX rule.