Tool
Cron Expression Generator
Validate a five-field cron expression, describe it, and list its next run times.
Try it
This tool runs entirely in your browser. Nothing you type or paste is sent anywhere.
*/15 9-17 * * MON-FRI runs next at 2026-01-05T09:00:00.000Z.
How it works
- Split the expression into the five standard fields.
- Expanded ranges, lists, steps, and month/day names into value sets.
- Scanned forward minute by minute (bounded to one year) for matching UTC instants.
- Cron uses UTC and runs the day-of-month and day-of-week rules with OR semantics when both are restricted.
Usage
- Enter a five-field cron expression (minute hour day-of-month month day-of-week).
- Choose how many upcoming runs to list.
- Read the description and the next run times.
Examples
Every 15 minutes on weekday business hours
{
"expression": "*/15 9-17 * * MON-FRI",
"count": 3,
"reference": "2026-01-05T08:00:00.000Z"
}First of each month at midnight
{
"expression": "0 0 1 * *",
"count": 2,
"reference": "2026-01-15T00:00:00.000Z"
}Limitations
Reading a cron field
A field is a comma list of items. Each item is a single value, a range (1-5), a step (*/15 or 1-30/5), or a wildcard. Month and day-of-week accept three-letter names.
Why UTC matters
Many schedulers interpret cron in the server's local time. This tool uses UTC explicitly so that the listed run times are unambiguous.
Frequently asked questions
- When do day-of-month and day-of-week combine?
- When both fields are restricted, cron matches if either matches (OR). When only one is restricted, that one must match.
- Why is there no result for 31 February?
- If no instant matches within a year the tool reports an empty run list rather than looping forever.
Sources
- POSIX crontab specification — The Open Group