Cron expression parser
Paste a five-field crontab expression and get a plain-English explanation plus the next five times it will fire — calculated in your own timezone.
How to read a cron expression
A crontab line has five fields, left to right:
- minute — 0-59
- hour — 0-23
- day of month — 1-31
- month — 1-12 (JAN-DEC also accepted)
- day of week — 0-6, Sunday is 0 (SUN-SAT also accepted)
Each field can be * (any), a list (1,15), a range (9-17), a step (*/10 or 10-50/5), or a combination.
The day-of-month / day-of-week trap
If both day fields are restricted (neither is *), standard cron runs the job when either matches — not both. So 0 0 13 * 5 fires on every Friday and on the 13th of every month. This tool follows that vixie-cron behavior, and the next-runs table makes it visible.
Timezones matter more than syntax
Cron evaluates in the machine's timezone — usually UTC on servers. The next-runs table here shows both your local time and UTC, because the most common cron bug is a schedule silently firing five hours early or late. Check TZ or CRON_TZ on your system before blaming the expression.
FAQ
Does it support 6-field expressions with seconds?
No — this parses the standard 5-field crontab format used by vixie-cron and most Linux schedulers. Quartz-style 6/7-field expressions (with seconds and a year) are a different dialect.
What about @daily, @hourly and @reboot?
Those shorthand macros are not parsed yet. Their expansions are simple: @daily is 0 0 * * *, @hourly is 0 * * * *, @weekly is 0 0 * * 0, @monthly is 0 0 1 * *.
Why do the next runs differ from my server?
Timezone. This page computes in your browser's timezone; your server may run UTC. Compare the UTC column against the server's clock to isolate the difference.
Is anything uploaded?
No. Parsing and the next-run search run locally in your browser.