Cron expression explainer and builder
This tool translates any 5-field cron expression into a plain-English sentence and breaks each field down so you can spot mistakes at a glance. It’s for anyone scheduling a job in crontab, GitHub Actions, Railway, AWS EventBridge, or a CI pipeline who wants to confirm a schedule reads the way they intended before shipping it.
How it works
A cron expression has five space-separated fields: minute, hour, day-of-month,
month, day-of-week. The tool splits on whitespace, validates each field against
its allowed range, and translates it. It understands * (every value), */n
steps (every nth value), x/n (every nth value starting at x), a-b ranges, and
a,b,c comma lists. It then assembles the parsed parts into one sentence — taking
care with the cron rule that when both day-of-month and day-of-week are set, the
job runs when either matches. Eight presets seed common schedules.
Example
The expression:
30 8 * * 1-5
explains as: at 08:30, Monday through Friday. Field by field — minute 30, hour 8, every day of the month, every month, days Monday–Friday.
Field reference
| Field | Position | Range | * means |
|---|---|---|---|
| Minute | 1 | 0–59 | every minute |
| Hour | 2 | 0–23 | every hour |
| Day of month | 3 | 1–31 | every day |
| Month | 4 | 1–12 | every month |
| Day of week | 5 | 0–6 (0 = Sun) | every weekday |
All parsing runs locally in your browser — nothing is sent to any server.