Free cron expression builder and explainer
Type a cron expression to read it in plain English and see when it runs next, or build one from presets. It runs in your browser, nothing is uploaded.
Format: minute hour day-of-month month day-of-week. Shortcuts like @daily also work.
Next 5 runs (time zone: )
Field by field
Build one from a preset
Months without that day are skipped.
Quick picks:
How to use it
- Type or paste an expression such as
*/15 9-17 * * MON-FRI. Click Load example to try that one. - Read the explanation and check the next five run times, shown in your local time zone.
- Or use the builder: pick a preset like “every weekday at 09:00” and the expression is written for you.
How to read and write cron expressions
Cron is the scheduler built into Linux and macOS, and its five-field format is used almost everywhere that runs jobs on a timetable: hosting control panels, CI systems, cloud schedulers and container platforms. Once you know the five fields, you can read and write any schedule in a few seconds, and this page checks your work as you type.
| Field | Allowed values | Example |
|---|---|---|
| Minute | 0–59 | 30 = at minute 30 |
| Hour | 0–23 | 9-17 = from 09:00 to 17:59 |
| Day of month | 1–31 | 1,15 = on the 1st and 15th |
| Month | 1–12 or JAN–DEC | */3 = every 3rd month |
| Day of week | 0–7 or SUN–SAT | MON-FRI = weekdays |
The four special characters
*means every value of that field.,makes a list:MON,WED,FRI.-makes a range:9-17./adds a step:*/10is every 10, and0-30/10is 0, 10, 20 and 30.
Common schedules
Every five minutes is */5 * * * *. Every day at 02:30 is 30 2 * * *. Weekdays at 08:00 is 0 8 * * 1-5. The first of the month at midnight is 0 0 1 * *. Sunday at noon is 0 12 * * 0.
Mistakes that cost people a night’s sleep
Writing * 9 * * * when you meant 09:00 once a day, because the minute field set to * runs the job every minute of that hour. Forgetting that cron uses the server’s time zone, which is often UTC. And scheduling day 31 or day 30 in February, which simply never fires. The preview of upcoming runs is the quickest way to catch all three.
Questions people ask
What are the five fields of a cron expression?
In order: minute (0–59), hour (0–23), day of month (1–31), month (1–12 or JAN–DEC) and day of week (0–6 or SUN–SAT, where 0 and 7 both mean Sunday). An asterisk means every value.
What does */5 mean?
It means every 5th value, starting from the first. In the minute field, */5 runs at minutes 0, 5, 10 and so on. A range with a step, such as 9-17/2 in the hour field, means every second hour from 09:00 to 17:00.
What happens when I set both day of month and day of week?
Standard cron runs the job when either one matches, not both. So 0 0 13 * 5 runs on every 13th and on every Friday. To get only Friday the 13th you need a check inside the script.
Does this support seconds, L, W or # (Quartz and Spring)?
No. This is standard 5-field cron as used by Linux crontab, most hosting panels, GitHub Actions and Kubernetes CronJobs. Six-field expressions with seconds belong to Quartz-style schedulers.
Need a script worth scheduling? We write Python automations that fetch, clean and report on your data, ready to run on a cron job or a server.
See Python automation