Cron Expression Generator
Build a cron expression field by field, see what it means in plain language and check the next times it will run.
0–59
0–23
1–31
1–12 or JAN–DEC
0–7 or SUN–SAT
Ready-made schedules
Expression
0 9 * * 1-5
In plain language
At 09:00 AM, Monday through Friday
Next runs
- Tuesday, September 22, 2026 at 9:00 AM
- Wednesday, September 23, 2026 at 9:00 AM
- Thursday, September 24, 2026 at 9:00 AM
- Friday, September 25, 2026 at 9:00 AM
- Monday, September 28, 2026 at 9:00 AM
Paste five fields to fill the boxes above.
What each field accepts
- *Every value
- 5Exactly that value
- 1,15Either value
- 1-5A range, both ends included
- */10Every tenth value
- 9-18/2Every second value inside the range
Files are processed in your browser and are never uploaded to a server.
How to use
Free to use with no sign-up, no install and no usage limit.
Fill the five fields — minute, hour, day of month, month, day of week — and the expression is assembled as you type. A plain-language reading and the next run times appear alongside, so a wrong field is obvious before it reaches a server.
Start from one of the ready-made schedules if the shape is close to what you want, then adjust a single field. That is usually faster than writing all five from scratch.
Every field accepts the same shapes: a star for all values, a number, a comma-separated list, a range with a dash, and a step with a slash. The reference table below spells each one out.
A backwards range such as 18-9 is rejected instead of being reinterpreted. Most cron implementations refuse it too, and the ones that do not behave in ways nobody expects.
Sunday can be written as 0 or 7, and months and weekdays can be written by name — JAN, MON and so on. Both are accepted because both appear in crontabs in the wild.
The times shown are in your own timezone. A server usually runs in UTC, so check which one the schedule will actually live in before relying on the hour.
Nothing you type is sent to a server. Everything is calculated inside your browser.