Cron Expression Explainer
This tool translates a cron expression into plain English so you can tell exactl
This tool translates a cron expression into plain English so you can tell exactl
How to use Cron Expression Explainer
- Paste or type your cron expression into the field, or click an example to load one.
- Read the plain-English sentence and the field-by-field breakdown to confirm the schedule.
- Check the list of next run times in your local timezone to verify it fires when you expect.
About Cron Expression Explainer
This tool translates a cron expression into plain English so you can tell exactly when a scheduled job will run. Paste an expression like `30 8 * * 1-5` and it returns a readable sentence ("At 8:30 AM, on Monday through Friday"), a breakdown of what each field means, and a list of the next five times the schedule will fire in your device's local timezone.
It reads standard Unix cron: five fields in the order minute, hour, day-of-month, month, day-of-week (Sunday is 0 or 7). It also accepts a leading seconds field for six-field expressions used by schedulers like node-cron, plus the common shortcuts (@hourly, @daily, @weekly, @monthly, @yearly). Ranges (1-5), lists (1,3,5), steps (*/15), and month or weekday names (JAN, MON) are all understood, and it applies the real Unix rule that day-of-month and day-of-week combine with OR when both are set.
Everything is computed in your browser with JavaScript โ no expression is uploaded or logged. Quartz-only characters (L, W, #) and the Quartz weekday numbering are not supported; if you paste one, the tool tells you rather than guessing. Next-run times are calculated by stepping through the calendar, so they respect leap years but use your local clock and do not model daylight-saving transitions on the underlying server.
Frequently asked questions
- What cron format does this support?
- Standard Unix cron with five fields (minute, hour, day-of-month, month, day-of-week), plus an optional leading seconds field for six-field expressions used by tools like node-cron. It also handles the @hourly, @daily, @weekly, @monthly and @yearly shortcuts, ranges, lists, steps, and month/weekday names.
- Are the next run times accurate?
- Yes, for the schedule as written. The tool steps through the calendar applying each field, including the Unix rule that day-of-month and day-of-week are OR'd when both are set. Times are shown in your device's local timezone. It does not account for daylight-saving shifts on the server that will actually run the job, so double-check jobs scheduled during a DST changeover.
- Does it support Quartz cron (Spring, Jenkins)?
- Only partially. Basic Quartz-style six-field expressions with seconds work, and the ? character is treated as a wildcard. But Quartz-specific characters (L for last, W for weekday, # for nth weekday) and Quartz weekday numbering (1=Sunday) are not supported. The tool flags these instead of producing a wrong answer.
- Is my cron expression sent anywhere?
- No. All parsing and calculation happen locally in your browser using JavaScript. Nothing is uploaded, stored, or logged, so it is safe to paste expressions from private infrastructure.
- Why do day-of-month and day-of-week both seem to apply?
- That is standard Unix cron behaviour: when both the day-of-month and day-of-week fields are restricted (not *), the job runs when EITHER matches, not only when both do. The tool shows a note whenever this affects your expression.
- 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-7 or SUN-SAT, where both 0 and 7 mean Sunday). A six-field expression adds seconds (0-59) at the very front.