Cron Expression Parser
?
About cron expressions
- What do the five fields mean?
- In order: minute (0–59), hour (0–23), day of month (1–31), month (1–12 or JAN–DEC), and day of week (0–6 or SUN–SAT, where both 0 and 7 mean Sunday). "0 3 * * 1-5" reads as minute 0, hour 3, every day of month, every month, Monday through Friday — 3:00 AM on weekdays.
- What do *, comma, dash, and slash mean?
- `*` matches every value in the field. A comma lists specific values (`1,15,30`). A dash is an inclusive range (`9-17`). A slash is a step, usually combined with `*` or a range (`*/15` = every 15 units, `1-31/2` = every other day starting at 1). These combine freely: `0,30 9-17 * * 1-5` means the top and bottom of every hour, 9am–5pm, on weekdays.
- Why does my expression fire on day-of-month OR day-of-week, not both?
- This is a well-known cron quirk, not a bug: if both the day-of-month and day-of-week fields are restricted (neither is `*`), a day matches when *either* condition is true, not when both are. `0 0 1 * 1` runs at midnight on the 1st of the month **or** every Monday — not only on Mondays that happen to be the 1st. If you only restrict one of the two fields, that field alone controls the day as you'd expect.
- What timezone are these times interpreted in?
- Whatever you pick in the timezone selector — it defaults to your browser's local zone. Cron itself has no timezone of its own; a real crontab runs in whatever zone its host (or scheduler config) is set to, which for servers and cloud schedulers is very often UTC rather than your local time. Switch the selector to match where the job actually runs to see accurate results.
- What are @daily, @hourly, and the other @ shortcuts?
- Common non-standard shorthands supported by cron, systemd timers, and many task schedulers: @yearly/@annually (`0 0 1 1 *`), @monthly (`0 0 1 * *`), @weekly (`0 0 * * 0`), @daily/@midnight (`0 0 * * *`), @hourly (`0 * * * *`). @reboot is also accepted, but it means "once at startup" rather than a fixed schedule, so no upcoming run times can be computed for it.
- Does this tool upload my data anywhere?
- No. Parsing and every upcoming run time are computed entirely in your browser using standard Web APIs (Intl for timezone-aware date handling). Nothing you type ever leaves your device.
Translate a cron expression into plain English and see its next upcoming run times.
- runs found
- 0
- next run
- —
- status
- idle