Cron Expression Builder
Build and understand cron schedule expressions visually
Cron Expression
Common Presets
Quick Reference
| Symbol | Meaning | Example |
|---|---|---|
| * | Every value | * in hour = every hour |
| , | List of values | 1,3,5 in day = 1st, 3rd, 5th |
| – | Range of values | 1-5 in weekday = Mon-Fri |
| / | Step values | */15 in minute = every 15 min |
Frequently Asked Questions
How do I read and understand a cron expression like '0 9 * * 1-5'?
A standard cron expression has five fields in order: minute, hour, day-of-month, month, and day-of-week. The expression ‘0 9 * * 1-5’ means: at minute 0, hour 9, every day of the month, every month, only on weekdays Monday through Friday — i.e., 9:00 AM on weekdays. This tool shows a plain-English explanation as you edit each field.
How do I schedule a cron job to run every 5 minutes?
Use the expression ‘*/5 * * * *’. The ‘*/5’ in the minute field means ‘every 5 minutes’ using the step syntax. You can click the ‘Every 5 minutes’ preset button to load this automatically. The tool will also display the next 10 run times so you can confirm the schedule before deploying.
What is the difference between day-of-month and day-of-week fields in cron?
Day-of-month (field 3) targets a specific calendar date (e.g., the 1st or 15th of each month). Day-of-week (field 5) targets a weekday (0=Sunday through 6=Saturday). When both fields are set to non-wildcard values, most cron implementations run the job when either condition is true, not both simultaneously — a common gotcha that causes unintended extra runs.
Does this cron builder support second-level precision or AWS EventBridge syntax?
This tool implements the standard five-field Unix cron syntax (minute through day-of-week). It does not support a leading seconds field (used by Quartz Scheduler), the @yearly/@weekly shortcuts, or the six-field AWS EventBridge cron format. If you need second-level scheduling, check the documentation for your specific scheduler.
Is my cron expression processed in the browser or sent to a server?
All parsing and next-run calculations happen entirely in your browser with JavaScript. No data is sent to any server, and the tool works offline after the initial page load. The next-run times are computed relative to your local system clock, so they reflect your local time zone.