$ exec cron
Cron Expression Explainer & Builder
Paste a cron expression to see what it means and the next five run times — or describe a schedule in plain English and get the cron expression back.
output will appear here.
$ cat about.md
Cron is the venerable Unix scheduler that has powered nightly backups, cleanup jobs, and metric rollups since 1975. Its syntax — five space-separated fields for minute, hour, day-of-month, month, and day-of-week — is dense but expressive. Step values (*/15), ranges (1-5), lists (1,3,5), and named tokens (MON-FRI, JAN-DEC) compose into surprisingly powerful schedules in only a few characters.
This tool runs in two directions. Forward: paste any cron expression and see a plain-English description (“At every 15th minute”) plus the next five execution times in your local timezone. Backward: type an English description like “every weekday at 9am” or “first day of every month at midnight” and get the matching cron back. Forward parsing uses cronstrue (the same library that powers Hangfire’s UI) and cron-parser for the next-run calculation; backward translation is a curated set of common patterns.
Standard cron has five fields. Quartz and many cloud schedulers (AWS EventBridge, Spring @Scheduled) use six fields with seconds prepended, and some use seven with year appended. This tool detects the field count automatically. Note that day-of-month and day-of-week are OR-combined, not AND — “1 1 1 * MON” fires at 01:01 on the 1st of any month AND on every Monday, not just on Mondays that fall on the 1st.
$ ls examples/
*/15 * * * *Step value — the most common cron pattern.
0 9 * * 1-5Range syntax for Monday through Friday.
0 0 1 * *Monthly batch job pattern.
every weekday at 9amReturns 0 9 * * 1-5 plus the next runs.
$ man --faq
Q.What is the difference between 5-field and 6-field cron?
A.Standard Unix cron uses 5 fields (min hr dom mon dow). Quartz, AWS EventBridge, and Spring @Scheduled add a seconds field at the front, giving 6 fields. The tool auto-detects the format.
Q.What does */15 mean?
A.Step value — “every 15 units of this field starting at 0”. So */15 in the minute field means 0, 15, 30, and 45 past the hour.
Q.Does day-of-month AND day-of-week need to match?
A.No, they are OR-combined. “0 0 1 * MON” fires on the 1st of every month and every Monday. To require both, use a tool like systemd timers or compute it in your job.
Q.What timezone are the next-run times in?
A.The browser’s local timezone. Cron itself runs in whatever timezone the host (or scheduler config) specifies — be careful when porting across regions, especially around DST.
Q.Why does my cron run at unexpected times?
A.Common causes: server timezone differs from yours, you confused day-of-month with day-of-week, or you used an OR-combined day rule by accident. Use the next-run preview to sanity-check before deploying.