Cron Expression Builder
Build and validate cron expressions visually. Get a human-readable description of your schedule and preview the next 5 run times. Runs entirely in your browser.
How to use the Cron Expression Builder
- Pick a preset such as "Every weekday" to start from a common schedule, or type into the five fields.
- Fill in Minute (0–59), Hour (0–23), Day of month (1–31), Month (1–12) and Weekday (0–6, where 0 is Sunday). Leave a field as * to mean "every".
- Read the plain-English description under the fields to confirm the schedule means what you intended.
- Check the next five run times, shown in your browser's local time zone.
- Click Copy and paste the expression into crontab, a CI schedule, or your job scheduler.
Examples
Each expression below is followed by the description the builder shows for it.
| 30 2 * * 1-5 | At 02:30 AM, Monday through Friday |
| */15 * * * * | Every 15 minutes |
| 0 9 1,15 * * | At 09:00 AM, on day 1 and 15 of the month |
| 0 */6 * * * | On the hour, every 6 hours |
| 0 0 * * 0 | At 12:00 AM, only on Sunday |
Things to know
A field can hold a single value (5), a list (1,15), a range (1-5) or a step (*/15, which means every 15th value starting from the lowest). Ranges and steps combine: 0-30/10 in the minute field runs at 0, 10, 20 and 30 past the hour.
When both Day of month and Weekday are set, standard cron runs the job when either one matches, not only when both do. So 0 9 1 * 1 runs at 9:00 on the 1st of every month and on every Monday. To run only on a Monday that is the 1st, schedule it on the 1st and check the weekday inside the job.
Cron runs in the time zone of the machine or service that executes it. Many hosted schedulers, including GitHub Actions, use UTC. The next-run preview here uses your local time, so convert if your scheduler runs in UTC. Around daylight-saving changes, a job scheduled between 1:00 and 3:00 AM can be skipped or run twice depending on the scheduler.
Frequently Asked Questions
What is a cron expression?
A cron expression is a string of five fields (minute, hour, day of month, month, day of week) that define a recurring schedule. For example, "0 9 * * 1-5" means "9:00 AM every weekday".
Are the next run times shown in UTC or local time?
Run times are shown in your local browser timezone.
Does this support non-standard fields like seconds or years?
No — this tool uses the standard five-field Unix cron format. Seconds and year fields used by some schedulers (like Spring or AWS EventBridge) are not supported here.
Is my data private?
Yes — completely. Everything runs locally in your browser. Nothing is sent to any server, and nothing is retained after you close the tab.