Cron Expression Parser
Parse and explain cron expressions in plain English. Validate cron syntax and see next run times.
Quick Builder
About this calculator
Paste a cron expression such as 0 9 * * 1-5 and get an explanation in plain English, a validity check and the next run times. Or build one from the five fields.
Parsing an expression you inherited is the safest way to find out what it really does.
How to use it
- Paste the cron expression and press Parse Expression.
- Or enter the fields and press Build Expression.
- Read the description and next run times.
Syntax
A cron expression has five fields: minute (0-59) hour (0-23) day-of-month (1-31) month (1-12) day-of-week (0-7, Sunday is 0 or 7). * means every value, */15 every 15th, 1-5 a range and 1,15 a list. Examples: 0 9 * * 1-5 is 9:00 on weekdays, */15 * * * * every 15 minutes, 0 0 1 * * midnight on the 1st of each month. If both day-of-month and day-of-week are restricted, standard cron runs when either matches.
Worked example
Common schedules
| * * * * * | Every minute |
| */5 * * * * | Every 5 minutes |
| 0 * * * * | Every hour |
| 0 0 * * * | Every day at midnight |
| 0 9 * * 1-5 | 9:00 AM on weekdays |
| 0 0 1 * * | Midnight on the 1st of each month |
Tips and common mistakes
- Cron uses the server's time zone, usually UTC. Check before scheduling.
- Redirect output (>> log 2>&1) so you can see errors.
- Use absolute paths in cron commands.
- Avoid scheduling many jobs at minute 0.
- Test the command by hand before adding it to cron.
Frequently asked questions
What is a cron expression?
Five fields describing when a scheduled job runs.
What does */5 mean?
Every 5 units, so every 5 minutes in the minute field.
Is Sunday 0 or 7?
Both are accepted in most cron implementations.
What does 0 9 * * 1-5 do?
Runs at 09:00 Monday to Friday.
What if I set both day-of-month and day-of-week?
Standard cron runs on either match.
Do all systems use five fields?
Some, like Quartz and AWS, add seconds or a year field.