Cron Expression Parser
Description
Parse cron expressions into clear, human-readable descriptions. Supports seconds, macros (@daily, @hourly), verbose mode, and 24-hour format.
About Cron Expression Parser
The Cron Parser translates cron expressions into clear, human-readable schedules — so "0 9 * * 1-5" becomes "At 09:00, Monday through Friday." It explains each field, supports seconds and macros like @daily and @hourly, and shows a verbose breakdown, making it easy to write and double-check scheduled jobs before deploying them.
How to use
- Type or paste a cron expression into the input.
- Read the plain-English description of when it runs.
- Use the per-field breakdown to confirm minute, hour, day, month, and weekday.
- Adjust the expression until the description matches your intended schedule.
Examples
| Example | Input | Output |
|---|---|---|
| Weekdays at 9am | 0 9 * * 1-5 | At 09:00, Monday through Friday |
| Every 15 min | */15 * * * * | Every 15 minutes |
Frequently asked questions
What do the five cron fields mean?
In order: minute (0–59), hour (0–23), day of month (1–31), month (1–12), and day of week (0–6, where 0 is Sunday). An asterisk means 'every' value for that field.
What does */5 mean in a cron field?
It means 'every 5 units' for that field. In the minute field, */5 runs at minute 0, 5, 10, 15, and so on — i.e. every five minutes.
What are macros like @daily and @hourly?
Shorthands for common schedules. @hourly = '0 * * * *', @daily = '0 0 * * *', @weekly = '0 0 * * 0'. Not every cron implementation supports them, so check your scheduler.
How do day-of-month and day-of-week interact?
In most cron implementations, if both are restricted (not *), the job runs when EITHER matches — a common source of surprises. Keep one as * unless you truly want the OR behavior.