Cron Expression Parser

Parse cron expressions and see the next 10 fire times. Standard 5-field crontab.

Enter input above to see the result.

Decoding an existing crontab

Cron expressions are powerful and easy to mis-write. A single typo or misremembered syntax rule can cause a job to run at the wrong time, not at all, or far more often than intended. This tool validates 5-field crontab syntax, translates the expression into plain English, and previews the next 10 scheduled fire times so you can confirm the schedule before deploying to production.

Validation, translation, and schedule debugging

Reading fire times from an expression

Field ranges and allowed syntax

FieldRangeWildcards
Minute0-59* · */5 · 0,30 · 0-29
Hour0-23same
Day of month1-31same
Month1-12same
Day of week0-6 (0 = Sunday, 7 also = Sunday)same

OR logic, step resets, and timezone drift

Spotting the */15 trap in a live schedule

Enter 0 9 * * 1-5. The tool reads it as "at 09:00, Monday through Friday" and lists the next 10 fire times in your local zone so you can eyeball them. Change it to */15 9-17 * * * and it becomes "every 15 minutes, between 09:00 and 17:59, every day" — a fast way to catch the classic mistake of thinking */15 means "15 past the hour" when it actually fires at :00, :15, :30 and :45.

Field counts, step phases, and day-field surprises

Five fields or six? This parses standard 5-field crontab (minute, hour, day-of-month, month, day-of-week). The 6-field variant with a leading seconds column is a Quartz/Kubernetes extension — drop the seconds field before pasting here.

Does */N mean "every N"? Not exactly — it means "every N starting from the field's minimum." */20 in minutes fires at :00, :20, :40, then :00 again, so the gap from :40 back to :00 is 20 minutes but the pattern resets each hour rather than running a true rolling interval.

What happens if I set both day-of-month and day-of-week? Most cron implementations OR them — 0 0 15 * 1 runs on the 15th or any Monday, not only Mondays that fall on the 15th. This tool follows that convention; it trips up almost everyone.

Which timezone are the fire times in? Your browser's local zone. The cron daemon on a server uses that machine's timezone (often UTC), so verify the server's TZ before trusting a schedule copied from here.

DST transitions and month-boundary gotchas