Developer

Encoders, converters & dev utilities

12 tools
Developer · Cron Expression Generator & Explainer

Cron Expression Explainer — Translate Cron to Plain English

Paste any cron expression and get a plain-English description plus the next run times. The tool parses each field — minute, hour, day-of-month, month, day-of-week — and describes what it schedules. Worked example: 0 9 * * 1-5 is explained as "at 09:00, Monday through Friday", and */15 * * * * as "every 15 minutes". It also honours the Vixie/POSIX day-of-month / day-of-week union: 0 0 1 * MON is described as "at 00:00 on the 1st of the month AND on every Monday" (either match fires, not both required together), so the explanation and next-run preview never mislead you. Choose a timezone for the preview. Free, no login, 100% client-side.

Quick answer

Explain = parse each field and describe the schedule in plain English + list the next N run times

  • Worked example: 0 9 * * 1-5 → "at 09:00, Monday through Friday"; */15 * * * * → "every 15 minutes"
  • Honours the DOM/DOW OR-union: 0 0 1 * MON → "at 00:00 on the 1st of the month OR any Monday" (either match, not both)
  • Next-run preview computed in a timezone you pick (Unix cron uses the server tz; EventBridge is UTC)
  • 100% client-side — the expression is parsed in your browser, nothing is uploaded
Open the full Cron Expression Generator & Explainer

Frequently asked questions

How do I read a cron expression?

A standard Unix cron expression has five fields in order: minute, hour, day-of-month, month, day-of-week. Each can be * (any), a number, a range (1-5), a list (1,3,5), or a step (*/15). So 0 9 * * 1-5 reads as minute 0, hour 9, any day-of-month, any month, days 1–5 (Mon–Fri) — "09:00 on weekdays". This explainer turns any expression into that plain-English sentence and shows when it will next run.

What does */15 * * * * mean?

It means "every 15 minutes". The */15 in the minute field is a step: it matches minute 0, 15, 30, and 45 of every hour. The remaining * fields mean every hour, every day-of-month, every month, and every day-of-week, so the job runs four times an hour, around the clock.

How does the explainer handle 0 0 1 * MON?

It applies the correct Vixie/POSIX union rule. Because both the day-of-month (1) and day-of-week (MON) fields are restricted, the job runs when EITHER matches — so 0 0 1 * MON is described as "at 00:00 on the 1st of the month OR on any Monday", and the next-run list includes both. It is not "the 1st only when it is a Monday", which is the common misreading this explainer is careful to avoid.

Related Cron Expression Generator & Explainer pages