Cron Expression Parser

Parse cron expressions and see the next 10 scheduled run times. Validate your cron syntax instantly.

minutehourdaymonthweekday
At 09:00, on Mon
15/22/2026, 9:00:00 AM
25/25/2026, 9:00:00 AM
35/26/2026, 9:00:00 AM
45/27/2026, 9:00:00 AM
55/28/2026, 9:00:00 AM
65/29/2026, 9:00:00 AM
76/1/2026, 9:00:00 AM
86/2/2026, 9:00:00 AM
96/3/2026, 9:00:00 AM
106/4/2026, 9:00:00 AM

How to Use

  1. Enter your cron expression (e.g. */15 * * * *) into the input field. You can use standard cron syntax with wildcards, ranges, steps, and special strings.
  2. The parser validates your expression instantly. It highlights syntax errors, checks for impossible schedules, and explains what each field represents.
  3. View the next 5-10 scheduled execution times in a human-readable format. Use the results to verify your cron job timing before deploying.

Frequently Asked Questions

What are the five cron fields and their allowed values?
The five fields in order are: minute (0–59), hour (0–23), day of month (1–31), month (1–12 or JAN–DEC), and day of week (0–6 or SUN–SAT, where 0=Sunday). Some implementations support a 6th field for year. Each field can use *, comma-separated lists, ranges, step values (*/5), or special strings like , , and .
What's the difference between ? and * in cron?
In standard cron (Unix/Linux crontab), * means 'every' and ? is not supported — it's a Quartz Scheduler extension. In Quartz cron (used by Spring, Java apps), * means 'every' and ? means 'no specific value', used when you need to specify either day-of-month OR day-of-week but not both. Our parser handles both syntaxes.
Can I use this tool to debug a failing cron job?
Yes — paste your cron expression, confirm it parses correctly, and check the next run times. If the schedule doesn't match your expectations, look for common issues: using day-of-month AND day-of-week simultaneously (in standard cron this means 'or' not 'and'), incorrect field order, or confusion between 0 and 7 for Sunday.