My Tool Studio
Developer

Cron Expression Parser

That deploy job that ran at 3 AM instead of 9? A misread schedule string is usually to blame. This cron expression parser takes any five-field schedule, describes it in plain English, and lists the next 10 run times in UTC so you can see exactly when it will fire before you commit it. You get the whole cron expression explained field by field: minute, hour, day of month, month, and day of week, read left to right. Preset chips cover common schedules like every 5 minutes and daily at midnight, and the input works as a crontab syntax checker too, flagging any expression the parser can't turn into a schedule.

Always freeNo sign upRuns in your browser
Plain English
minute 0, hour 9, every day-of-month, every month, day-of-week 1
Next 10 runs (UTC)
12026-07-20T09:00:00.000Z
22026-07-27T09:00:00.000Z
32026-08-03T09:00:00.000Z
42026-08-10T09:00:00.000Z
52026-08-17T09:00:00.000Z
62026-08-24T09:00:00.000Z
72026-08-31T09:00:00.000Z
82026-09-07T09:00:00.000Z
92026-09-14T09:00:00.000Z
102026-09-21T09:00:00.000Z

How to use

01

Type or pick an expression

Enter a five-field cron string in the input, or click a preset chip such as Every Monday at 8 AM to load a known-good schedule instantly.

02

Read the plain English line

The panel under the input translates each field in order, minute first, so a swapped hour and minute jumps out before it ever reaches a server.

03

Scan the next 10 runs

The run list shows upcoming trigger times in UTC with copy buttons. If they look shifted from what you expect, your server's timezone is the difference.

Why Cron Expression Parser

Common questions

What format does this cron expression parser accept?
Standard five-field crontab syntax: minute, hour, day of month, month, and day of week. Ranges, lists, and step values like 1-5, 1,15, and */10 are all understood.
Why do the listed run times look a few hours off?
The tool evaluates schedules in UTC, while your crontab probably runs in the server's local timezone. Subtract or add your offset, or better, run your servers on UTC so the two always agree.
Can this work as a cron schedule generator too?
Yes. Start from the closest preset chip, then edit the fields until the plain English line and the run list match your intent. That's usually faster than writing an expression from scratch.
How do I schedule a job for weekdays only?
Put 1-5 in the fifth field, so 0 9 * * 1-5 fires at 09:00 Monday through Friday. Day of week counts from Sunday, which is 0.
Is Sunday 0 or 7 in the day-of-week field?
Most implementations accept both, but 0 is the safer choice for portability. A few older systems reject 7 outright, and mixing conventions across a fleet invites confusion.
What does */15 in the minute field mean?
A step value: the job fires every 15 minutes, at minutes 0, 15, 30, and 45 of each matching hour. Steps also work in other fields, so */2 in the month field means every second month.
Does a crontab syntax checker catch every scheduling bug?
It catches expressions that can't parse, but not valid expressions that encode the wrong intent. That's exactly why the next 10 runs list exists: it shows what the schedule will really do.

More Developer tools

View all