Skip to main content

Cron Expression Explainer

Translate a cron expression into a plain-English description, a labeled field breakdown, and a short preview of upcoming run times. Supports 5/6/7-field expressions and common nicknames like @daily.

Input

5 fields, 6 fields (leading seconds or trailing year), 7 fields (seconds + year), or a nickname like @daily.

Only affects the next-run preview below. Leave blank to use the current time (UTC).

Output

Plain-English Description
Field Breakdown
FieldValue
No data yet
Next 5 Run Times (UTC)
#Date & TimeDay
No data yet
Was this helpful?

Guides

What this tool does

Paste a cron expression and get back three things at once: a plain-English description of when it runs, a labeled breakdown of each field, and a short preview of the next few times it actually fires.

Cron syntax is compact but easy to misread — is 1 * * * * "the 1st minute of every hour" or "1 AM every day"? This tool removes the guesswork instead of asking you to mentally re-derive it.

How to use it

  1. Enter a cron expression, e.g. 0 9 * * 1-5 (9:00 AM on weekdays), or a nickname like @daily.
  2. Read the plain-English description and the field-by-field breakdown.
  3. Optionally set a Reference Time to preview run times from a specific moment — leave it blank to use the current time (UTC).

Supported formats

  • 5-field standard: minute, hour, day-of-month, month, day-of-week.
  • 6-field: either a leading seconds field, or a trailing year — this tool detects which from the expression itself, the same way it's detected in the description.
  • 7-field: seconds, then the standard five, then a trailing year.
  • Nicknames: @yearly / @annually, @monthly, @weekly, @daily, @hourly.

All accept *, comma lists (1,15,30), ranges (9-17), and step values (*/15).

FAQ

Why doesn't the next-run preview show up for some expressions?

The next-run calculation can't handle a year field (only the description can) — a 7-field expression, or the year variant of 6-field, shows a note there instead of run times. Drop the year field if you need the run list too.

What time zone are the run times in?

UTC, always — there's no time zone conversion. If you leave Reference Time blank, it uses your browser's local time to seed the search, but the results themselves are UTC.

I need more than 5 upcoming run times, or a CSV download.

Use the Cron Next Run Calculator — it lists up to 10 run times for a standard 5-field expression with a downloadable CSV.

I need to build a cron expression from scratch, not explain one.

Use the Cron Expression Generator — pick your schedule from a form and it writes the expression for you.

Privacy

This tool runs entirely in your browser. Your cron expression and reference time are never uploaded to a server.

crontabcron jobcron to englishreadable cronquartz croncron syntaxdevopsscheduler

More ways to use this tool

REST API

curl -X POST https://api.iotools.cloud/v1/tool/cron-expression-explainer \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "cronExpression": "0 9 * * 1-5",
    "referenceTime": "2024-01-01T08:00"
  }'

Swap in your own key from your account. The tool's fields are the body — no wrapper.

Ask an AI agent

Use the IOTools `cron-expression-explainer` tool (Cron Expression Explainer) on this input:

YOUR_INPUT_HERE

Paste this at any agent connected to the IOTools MCP server, then add your input.

Embed widget

<iframe
  src="https://iotools.cloud/embed/cron-expression-explainer/"
  width="100%" height="520" frameborder="0" scrolling="no" loading="lazy"
  title="Cron Expression Explainer — iotools.cloud"
  sandbox="allow-scripts allow-forms allow-same-origin allow-downloads allow-popups allow-popups-to-escape-sandbox"
  allow="clipboard-write"
  style="width:100%;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden"></iframe>
<script src="https://iotools.cloud/embed.js" async></script>

Drop this into your own page — free, no key required, just a link back.

Cost per callFrom 5 credits

Also available with

Love the tools? Lose the ads.

One payment clears every ad from your account, for good. No subscription, no tracking.