Skip to content

Cron expression builder

Build a five-field UTC cron expression with presets and an interactive map of matching values.

Cron field map
Minute4 matching values
01234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859

Select a field to inspect its expanded values. Day of week:0 or7 is Sunday. All times use UTC.

0–59
0–23
1–31
1–12
0–7

The expression contains the five fields only. Times use UTC.

Processed on your device

How it works & useful details

How it works & supported syntax

Numeric five-field Unix-style cron, interpreted in UTC. Supports *, comma lists, ascending ranges and steps on * or ranges. Names, seconds, years, macros, ?, L, W and # extensions are unsupported.

If both day fields are restricted, either may match. If either starts with *, both must match. A cron expression describes a schedule; this tool does not schedule or run a command.

Local workspace

Your input stays in this page. These tools calculate or process text; they do not run commands, start containers, contact servers or change settings on your device.

Previews pause above 20,000 combined characters. Use the action to process the full supported input. Exports contain the complete result within the tool’s stated limits.

About this tool

Cron expression builder assembles a five-field cron schedule with presets and an interactive map showing which values match. Seeing the matching minutes, hours, and days makes an unfamiliar expression much easier to verify.

Expressions are built for UTC schedules, which is what most servers use. Nothing is scheduled or executed; the tool only writes and explains the expression.

How to use it

  1. Start from a preset or edit each of the five fields.
  2. Watch the matching-value map update as you type.
  3. Check the plain-language summary of the schedule.
  4. Copy the expression into your crontab or scheduler configuration.

Worked example

*/15 9-17 * * 1-5 runs every 15 minutes (at :00, :15, :30, :45) from 09:00 through 17:45, Monday to Friday, in UTC. The builder lists the matching values for each field, so you can confirm that 17 is included in the hour range and that 0 and 6 (Sunday and Saturday) are not in the weekday field.

Field syntax

  • *: every value.
  • 5: one value.
  • 1,15: a list.
  • 9-17: an inclusive range.
  • */15 or 0-30/10: steps, meaning every 15th value, or every 10th value within 0–30.

Fields are minute (0–59), hour (0–23), day of month (1–31), month (1–12), and day of week (0–6, with 0 for Sunday). Named months and days (JAN, MON), seconds fields, @daily macros, and Quartz extensions like L, W, ?, and # are not supported. Those are scheduler-specific, so check your platform's documentation if you need them. Kubernetes CronJobs, GitHub Actions, and Cloudflare Workers cron triggers all accept this standard five-field format.

Frequently asked questions

Which cron dialect does this target?

The standard five-field form: minute, hour, day of month, month, and day of week. Platform-specific extensions are not generated.

What time zone is used?

The schedule is described in UTC, matching common server cron behavior where the system time zone applies.

Why does day-of-month and day-of-week behave unexpectedly?

In cron, when both fields are restricted the schedule matches either one. The tool reports this explicitly so it does not surprise you.

Why UTC?

Most cloud schedulers, including GitHub Actions and Cloudflare Workers, evaluate cron in UTC. Converting your intended local time to UTC avoids surprises when daylight saving time changes.