Cron Expression Parser is a free tool that explains a cron schedule in plain English and lists the next ten times it will run, in the time zone your server uses. It supports the standard five-field format, an optional seconds field, and shortcuts such as @daily. Everything runs in your browser.
How to check a cron expression
- Paste an expression, or click one of the common schedules to start from.
- Read the plain-English description and the breakdown of each field.
- Set the server’s time zone to see the exact upcoming run times, with your local time alongside.
Cron syntax
A standard expression has five fields separated by spaces:
- Minute 0–59 · Hour 0–23 · Day of month 1–31 · Month 1–12 or JAN–DEC · Day of week 0–6 or SUN–SAT (0 and 7 are both Sunday)
*every value ·*/10every 10th ·1-5a range ·1,15a list
Examples
*/15 * * * *: every 15 minutes0 9 * * 1-5: 09:00 on weekdays30 2 * * 0: 02:30 every Sunday0 0 1 */3 *: midnight on the first day of every third month
Building a new schedule
Need to write an expression from scratch? The Cron Expression Generator builds one from plain choices and writes it in the formats used by AWS, Quartz and GitHub Actions.
Common mistakes
- Wrong time zone: servers and cloud schedulers usually run in UTC. Check the next-run list in UTC before deploying.
* 9 * * *instead of0 9 * * *: the first runs every minute from 09:00 to 09:59, not once.- Day of month and day of week together: in standard cron the job runs when either matches, not both.
- Daylight saving time: a job scheduled at a time that is skipped or repeated when clocks change may be skipped or run twice.
Frequently asked questions
What do the five fields mean?
From left to right: minute (0–59), hour (0–23), day of the month (1–31), month (1–12) and day of the week (0–6, where 0 is Sunday). * means “every”, */15 means “every 15th”, 1-5 is a range and 1,15 is a list.
Why does the time zone matter?
Cron runs in the server’s time zone, which is often UTC. A job set for 09:00 on a UTC server runs at a different local time for you, and the difference changes with daylight saving time.
What if I set both day of month and day of week?
In standard cron, the job runs when either matches. For example 0 0 1 * 1 runs on the 1st of each month and on every Monday.
Does it support seconds or AWS and Quartz formats?
A sixth field for seconds at the start is supported, as are ? and macros like @daily. AWS and Quartz expressions have a year as a seventh field; remove it to check the schedule here.
Last updated