Cron Expression Parser
Translate a cron schedule into plain English and preview the next run times.
The Cron Expression Parser translates a cron schedule into plain English and previews the upcoming run times. It reads the five standard fields (minute, hour, day of month, month, day of week) plus the common extensions like step values and lists, and tells you exactly when a job will fire. That makes it ideal for understanding a mysterious schedule in CI, a database job, or a scheduled task you did not write yourself. The next-run preview, which shows the coming occurrences in your local time zone, helps you confirm that the expression does what you intended before you deploy it. Cron expressions are dense by design, and the cost of misreading one is a job that runs at the wrong time in a way nobody notices until it matters. The parser reads the standard five fields in order, minute, hour, day of month, month, and day of week, along with the extensions people actually use, such as ranges, lists, and step values like every fifteen minutes. Translating all of that into a plain sentence is the quickest way to confirm that a schedule you inherited matches what the person who wrote it believed it said. The upcoming run preview is the stronger check, because it turns the expression into concrete timestamps you can compare against your intent, and showing them in your local zone removes the ambiguity that comes from servers running on UTC. That combination of a human readable summary and a list of real future fire times catches the classic mistakes, like confusing day of month with day of week, or off by one errors in the month field. It is a reading and planning aid, so it never schedules or executes anything for you.
Fields: minute (0-59) · hour (0-23) · day-of-month (1-31) · month (1-12 or jan-dec) · day-of-week (0-7 or sun-sat).
Plain-English explanation appears here.
Next runsUpcoming run times appear here.
Frequently Asked Questions
What does "0 0 * * *" mean?
It is five fields: minute hour day-of-month month day-of-week. That example runs at minute 0, hour 0 (midnight), every day, every month, any weekday — i.e. daily at midnight UTC.
Why did my cron not fire?
Timezone mismatch is the usual cause — many schedulers run in UTC while you expected local time. The parser shows the next run times so you can verify.
Can I express every 5 minutes?
Yes: "*/5 * * * *" means every 5 minutes. The step syntax */n works on any field.