consolelog.tools

Cron Expression Generator

Build and decode cron expressions live — edit the raw expression or each field, get a plain-English description, and see the next run times computed right in your browser. Supports @macros (@daily, @hourly…), ranges, steps and lists, and pipes the schedule out as JSON.

About this ToolHow it works, benefits & use cases

Cron syntax is dense and easy to get wrong, so this generator works in both directions at once. Type a raw five-field expression and it validates it instantly, translates it into a plain-English description, and computes the next six run times right in your browser — shown in both UTC (ISO) and your local time. Prefer to build it up? Edit each field — minute, hour, day of month, month, day of week — in its own box and the expression rewrites itself. It understands ranges (1-5), lists (1,3,5), steps (*/5) and named values like JAN or MON, plus the @daily, @hourly, @weekly and other @macros, expanding each macro so you can see the standard expression it stands for. One-click presets cover common schedules, and the whole analysis pipes out as JSON.

How to Use

  1. 1Type a cron expression into the Expression box — five fields or an @macro like @daily — and read the green plain-English description that confirms what it means.
  2. 2Or build it field by field under "Build by field", setting minute, hour, day of month, month, and day of week separately.
  3. 3Check the "Next runs" panel to see the upcoming six fire times in both UTC and your local timezone.
  4. 4Click a macro chip or a common preset to drop in a ready-made schedule.
  5. 5Copy the expression with the copy button, or copy, download, or pipe the full schedule as JSON.

Key Benefits

  • Live validation with a precise error message when a field is out of range or malformed
  • Plain-English description of what any valid expression actually does
  • Computes the next six run times in both UTC and local time
  • Two-way editing: type the raw expression or build each field separately
  • Supports ranges, lists, steps, and named values (JAN, MON, etc.)
  • Expands @macros (@daily, @hourly, @weekly…) to their standard form
  • One-click presets and JSON export for the full schedule

Common Use Cases

  • Writing a schedule for a Linux crontab, CI pipeline, or Kubernetes CronJob
  • Decoding an unfamiliar cron expression you inherited in a config file
  • Verifying that a schedule fires when you expect before deploying it
  • Translating a vague requirement like "every weekday at 9am" into exact syntax
  • Teaching or learning how the five cron fields and step/range operators combine

Expression

Run at minute 0 at 9:00 on Monday-Friday

Build by field

0–59

0–23

1–31

1–12

0–6, Sun=0

Next runs

Calculating…

Run times shown in UTC (ISO) and your local time.

Macros

Common presets

Copy, download, or pipe to JSON Formatter / Unix Timestamp Converter.

Output will appear here.

Field reference

┌ minute ┌ hour ┌ day(month) ┌ month ┌ day(week)

* any · , list (1,3,5) · - range (1-5) · / step (*/5) · names ok (JAN, MON)

Was this tool helpful?

Share Your Experience

Help others discover this tool!

Related tools