Skip to main content
Toollyz

Search tools

Search for a command to run...

Cron Job Expression Generator

Pick every / list / range / step for each cron field from a friendly UI — get a valid expression back, plus the next 5 firing times in your local timezone. 100% client-side.

What is the Cron Job Expression Generator?

Cron Job Expression Generator is a visual builder for cron expressions. For each of the five fields (minute, hour, day-of-month, month, day-of-week) you pick one of four modes: 'every' (the `*` wildcard), 'list' (specific values, e.g. `0,15,30,45`), 'range' (`9-17`) or 'step' (`*/5`). For month and day-of-week the list mode shows a clickable button grid (Mon Tue Wed Thu Fri Sat Sun / Jan Feb Mar … Dec) so you don't have to remember the numbers. The composed expression updates live in the hero, alongside a plain-English description (re-using the Cron Time Translator's parser) and the next 5 firing times in your local timezone. Round-trips through the parser ensure that what you see is what you get — any invalid combination shows up immediately. Pure functions, no network.

How to use it

  1. For each of the 5 fields, pick a mode: every, list, range, or step.
  2. Toggle values (clickable buttons for months and weekdays) or type ranges and steps.
  3. Watch the cron expression and English description update live in the hero.
  4. Browse the next 5 firing times in your local timezone, then copy the expression.

Benefits

  • Per-field mode picker — every / list / range / step covers every standard cron pattern.
  • Clickable button grids for months (Jan-Dec) and weekdays (Sun-Sat) so you don't have to memorise the numbers.
  • Live English description re-uses the Cron Time Translator's parser — see exactly what you built.
  • Next 5 firing times computed forward from now in your local timezone.
  • Round-trips through the parser so invalid combinations are caught immediately.
  • Persists the builder state in localStorage for one-click resume.
  • Visual feedback — selected weekdays light up so you can sanity-check at a glance.
  • Runs 100% in your browser — no server, no API.

Frequently asked questions

What's the difference between this and the Cron Time Translator?

Translator goes English ← expression — paste cron, read the breakdown. Generator goes expression ← visual — pick UI options, get cron. They share the same parser so the round-trip is consistent.

Which cron flavour does this build?

Standard 5-field POSIX cron (`minute hour day-of-month month day-of-week`). Compatible with Linux crontab, Vixie cron, GitHub Actions cron, GitLab CI cron, Render and most other schedulers.

How do I pick 'every weekday at 9 AM'?

Minute: list with '0'. Hour: list with '9'. Day-of-month: every. Month: every. Day-of-week: list with Mon-Fri selected. The result is `0 9 * * 1-5` (or `0 9 * * 1,2,3,4,5` depending on selection — both work).

How do I pick 'every 5 minutes'?

Minute: step → 5. Everything else: every. The result is `*/5 * * * *`.

What's a 'range'?

An inclusive range of values, e.g. hours 9-17 means 9 AM through 5 PM. Useful for office hours.

Can I have a step inside a range?

Not in this UI — pick 'list' and type the comma-separated values manually for arbitrary patterns. Or use the Cron Time Translator to validate any expression you craft.

Will the day-of-month and day-of-week interact the way I expect?

Standard cron: when both are non-`*`, EITHER match fires (union). So 'day-of-month=13 AND day-of-week=Fri' fires on every Friday OR every 13th. The preview makes this obvious.

Does the preview match what Linux crontab will do?

Yes for the standard cases. We follow POSIX semantics including the DOM/DOW union rule. Quartz-style schedulers (which use intersection) may differ — though most do follow POSIX.

What timezone are the next runs?

Your local browser timezone. Most cron daemons run in the server's timezone — check before relying on the preview for production scheduling.

Is anything uploaded?

No. Building the expression and computing next runs are pure browser functions.

Can I save my schedule?

Your builder state persists in localStorage on this device. To share with a teammate, just copy the cron expression itself.