Cron Expression Parser
See a plain-English description and the next run times for any cron expression.
Next 5 run times (your local time)
- 9/7/2026, 9:00:00 AM
- 9/7/2026, 9:15:00 AM
- 9/7/2026, 9:30:00 AM
- 9/7/2026, 9:45:00 AM
- 9/7/2026, 10:00:00 AM
What Is the Cron Expression Parser?
Cron Expression Parser Formula
minute hour day-of-month month day-of-week
How Is the Cron Expression Parser Calculated?
Each of the five fields accepts a specific value, a wildcard (*) meaning "every", a range (like 1-5), a list (like 1,3,5), or a step (like */15 for "every 15 units"). If both the day-of-month and day-of-week fields are restricted at the same time, cron treats them as an OR — a run happens if either condition matches, not only when both do, which is a common source of confusion when reading cron schedules.
Cron Expression Parser Example
*/15 9-17 * * 1-5 means "every 15 minutes, between 9 AM and 5 PM, Monday through Friday" — a typical business-hours polling schedule.
How to Use the Cron Expression Parser
Step 1
Paste or type a 5-field cron expression into the input.
Step 2
Read the plain-English description of what it means.
Step 3
Check the next 5 upcoming run times, calculated from right now in your local time zone.
Benefits
- Translates cryptic cron syntax into a plain-English sentence instantly.
- Shows real upcoming run times instead of making you mentally simulate the schedule.
- Runs entirely in your browser — no expression is ever sent anywhere.
Common Cron Expression Parser Scenarios
Scenario 1
Double-checking a cron schedule before deploying it to a production server.
Scenario 2
Understanding an unfamiliar cron expression found in someone else's codebase.
Scenario 3
Verifying that a scheduled job will actually run when you expect it to.
Understanding Your Result
The description explains the schedule's intent in words, while the next-run-times list shows exactly when it will next fire based on the current date and time in your browser's local time zone — useful for confirming a schedule behaves as intended before relying on it.
Tips
- Remember that most servers run cron in UTC or the server's local time zone, not necessarily your browser's time zone — check your server's configured time zone too.
- When both day-of-month and day-of-week are restricted, the schedule runs on either match, not both simultaneously — this trips up many people.
- Use */N syntax for evenly spaced intervals rather than listing every individual value.
Common Mistakes
- Assuming day-of-month and day-of-week combine with AND instead of OR when both are restricted.
- Forgetting that cron's day-of-week uses 0 for Sunday, not Monday.
- Entering more or fewer than 5 fields, which some cron implementations (like some that add a seconds field) support but standard cron does not.
Frequently Asked Questions
Is my cron expression sent anywhere?
No — parsing, description, and next-run calculation all happen locally in your browser using plain JavaScript.
Does this support 6-field cron expressions with seconds?
No — this tool supports the standard 5-field cron format (minute, hour, day, month, weekday). Some non-standard schedulers add a seconds or year field, which isn't parsed here.
What does day-of-week 0 mean?
0 represents Sunday in standard cron — the days are numbered 0 (Sunday) through 6 (Saturday).
Why does my job seem to run on a day I didn't expect?
This is usually the day-of-month/day-of-week OR behavior — if both fields are restricted, the job runs whenever either condition is true, not only when both match.
Can I use named months or weekdays, like JAN or MON?
No — this tool expects numeric values only (1-12 for months, 0-6 for weekdays); some cron implementations accept names, but the standard numeric format works everywhere.
What time zone are the next-run times shown in?
They're calculated and displayed in your browser's local time zone — if your actual server runs in a different time zone (often UTC), the real run times will differ accordingly.
What does a step value like */5 mean?
It means 'every 5 units starting from the field's minimum' — for the minute field, */5 matches minutes 0, 5, 10, 15, and so on.
Can I combine a range and a step, like 0-30/10?
Yes — this tool supports combining a range with a step, matching values starting at the range's beginning and incrementing by the step until the range's end.
Why does the tool show an error for my expression?
Common causes are having more or fewer than 5 space-separated fields, or a value outside that field's valid range (like 61 in the minute field, which only allows 0-59).
Important Information
This tool interprets standard 5-field cron syntax for reference and planning — always verify against your actual scheduler's documentation, since some systems support extensions to standard cron syntax.
Last updated: August 9, 2026