Cron Expression Builder

Build a valid cron expression using dropdowns and toggles instead of memorising the syntax. Select the minute, hour, day, month, and weekday fields and the expression updates in real time alongside a plain-English description of the schedule and a list of the next five run times. Paste the finished expression directly into your crontab, CI config, or cloud scheduler.

All processing happens in your browser. No data is sent to any server.

Frequently Asked Questions

What is a cron expression?
A cron expression is a string of five fields that defines a recurring schedule for automated tasks: minute hour day-of-month month day-of-week. For example, "0 9 * * 1" means "at 9:00am every Monday." Special characters like * (any), , (list), - (range), and / (step) give fine-grained control.
Why does my cron job run at the wrong time?
Cron jobs run in the server's local timezone, which may differ from yours. If your server is set to UTC and you're in UTC-5, a job scheduled for 9am UTC runs at 4am your time. Always check the server timezone when scheduling time-sensitive jobs.
What is the difference between day-of-month and day-of-week?
Day-of-month (field 3) targets a specific calendar date — the 1st, 15th, last day, etc. Day-of-week (field 5) targets a weekday — Monday, Friday, etc. If you specify both, most cron implementations run the job when either condition is true, not when both are.
Can I run a job every 5 minutes?
Yes. Use the step syntax: */5 in the minute field means "every 5 minutes." The full expression is */5 * * * *. You can use steps in any field — */2 * * * * runs every 2 minutes, 0 */6 * * * runs every 6 hours.

Related Tools