A cron expression describes when a scheduled task repeats. Here you type it (or build it with clicks) and the tool tells you in plain language when it will run, lists the next 10 occurrences, draws them on a calendar, and generates ready-to-paste config for Kubernetes, Spring or GitHub Actions. All in your browser, no server.
A standard expression has 5 fields separated by spaces, always in this order:
• Minute — 0-59
• Hour — 0-23 (24 h format)
• Day of month — 1-31
• Month — 1-12
• Day of week — 0-7 (0 and 7 = Sunday, 1 = Monday … 6 = Saturday)
Read left to right: 0 9 * * 1-5 = minute 0, hour 9, any day of month, any month, Monday to Friday → «at 09:00, Monday to Friday».
The 6 fields (with seconds) toggle prepends a seconds field (0-59), handy for copying formats that need it (e.g. Spring); the next-runs calculation still works to the minute.
In each field you can combine these symbols:
• * — any value. * * * * * = every minute.
• ? — same as * («any»); accepted for compatibility.
• , — list of individual values. 0 0 1,15 * * = on the 1st and 15th at midnight.
• - — range. 0 9 * * 1-5 = Monday (1) to Friday (5).
• */N — every N from the start of the range. */5 * * * * = every 5 minutes (0, 5, 10…).
• A-B/N — every N within a range. 0-30/10 * * * * = at minutes 0, 10, 20 and 30.
You can mix them in the same field with commas: 0,30 9-18 * * * = on the hour and half past, from 9 to 18 h.
Note: this tool works with numbers only. It does not support names (MON, JAN) nor the advanced wildcards L, W or #: if you use them, the expression is flagged as invalid.
At the top you have preset buttons that fill in the expression with one click (every minute, every 5/15 min, hourly, daily at midnight, Mon–Fri at 9, 1st of the month, Sundays at 3, quarterly).
You can also type an alias with @ instead of the 5 fields:
• @hourly = 0 * * * *
• @daily / @midnight = 0 0 * * *
• @weekly = 0 0 * * 0 (Sundays at midnight)
• @monthly = 0 0 1 * * (1st at midnight)
• @yearly / @annually = 0 0 1 1 * (January 1st)
On validation, the alias is automatically expanded to its 5 fields.
If you don't want to type the syntax, build it with clicks. Each field (minute, hour, day of week, day of month, month) is a grid of cells: click the ones you want to include and the expression updates instantly in the box above.
• A field with nothing selected (or everything selected) equals *, «any value».
• The clear button on each field resets it to *.
• The summary next to each field shows the current value (e.g. 0,30 or the month/day names).
• The 6 fields toggle adds the seconds grid.
It works both ways: if you type the expression by hand, the grid syncs to reflect it.
• Day of month and day of week together: if you restrict both at once (neither is *), this tool only fires when both match. For example 0 0 13 * 5 runs on the 13th only when it also falls on a Friday. Leave one as * if you want the more common behavior.
• Sunday is 0 and 7: * * * * 0 and * * * * 7 are the same.
• Numbers only: no MON, JAN, L, W or # (see «Special characters»).
• Seconds don't change the calculation: the 6th field is kept for export, but next runs are computed to the minute.
• Local time: the dates shown use your machine's time zone; the target where you deploy may use another (e.g. UTC).