Cron Parser
Translate a cron expression into a plain-English description of when it runs.
Cron Expression Parser
Translate cron schedule expressions into English.
Schedule Description
Enter a cron expression above.
What Cron Parser does
Cron syntax is compact and easy to misread. The difference between a job that runs every five minutes and one that runs once an hour at minute five is a single character.
Paste an expression and read back what it actually means before you commit it to a scheduler.
- Describe five-field standard cron expressions
- Handle six- and seven-field expressions including seconds and years
- Support Quartz-style tokens such as L, W, # and ?
- Report the parser's error for an expression it cannot read
How to use Cron Parser
- 1
Paste the expression
Enter the schedule line exactly as your scheduler has it, without the command that follows it.
- 2
Read the description
The English sentence updates as you type. Compare it against what you intended.
- 3
Adjust a field at a time
If the description is wrong, change one field and watch how the sentence changes to identify which field is at fault.
Example
A schedule that is frequently misread
Input
*/15 9-17 * * 1-5Output
Every 15 minutes, between 09:00 and 17:59, Monday through FridayNote that 9-17 covers the whole of the 17th hour, so the last run is at 17:45, not 17:00.
Limits and known behaviour
- It describes the expression; it does not calculate the next run times.
- It does not know your scheduler's time zone. Whether a schedule fires in UTC or local time is a property of the system running it.
- Cron implementations differ. Standard cron, Quartz, Kubernetes and various cloud schedulers each accept slightly different syntax, so an expression that describes cleanly here may still be rejected by your scheduler.
- When both day-of-month and day-of-week are restricted, standard cron runs the job if either matches, which is a well-known source of surprise. Check your scheduler's own documentation for that case.
Privacy and data handling
Runs entirely in your browser
- Your input is processed by JavaScript running in this page. The tool sends no request anywhere, so nothing you paste is transmitted or logged by this site.
- Nothing is saved between visits. Closing or reloading the tab discards whatever is in the fields.
Site-wide data handling, including analytics and advertising, is described in the privacy policy.
Frequently asked questions
What is the difference between */5 and 5 in the minutes field?
*/5 means every fifth minute — 0, 5, 10 and so on. A bare 5 means only at minute 5 of the hour, so once per hour.
Which time zone does my job run in?
Whichever your scheduler is configured to use, which this tool cannot see. Many systems default to UTC while others use the server's local time; that difference is a common cause of jobs firing an hour out after a daylight-saving change.
Why does my expression run more often than expected?
If you have set both a day of the month and a day of the week, standard cron treats them as alternatives rather than as conditions that must both hold.