Cron Next Run Calculator
Parse a standard 5-field cron expression (minute hour day-of-month month day-of-week) and list the next run times after a given moment — supports *, comma lists, ranges, and step values.
Input
5 fields: minute hour day-of-month month day-of-week. Supports *, lists (1,15,30), ranges (9-17), and steps (*/15).
Leave blank to use the current time.
Output
| # | Date & Time | Day |
|---|---|---|
| No data yet | ||
Guides
What is a cron expression?
Cron is the standard scheduling syntax used by Unix/Linux crontab, CI pipelines, and countless job schedulers. A cron expression is five space-separated fields, each controlling one part of the calendar:
┌───────────── minute (0–59)
│ ┌───────────── hour (0–23)
│ │ ┌───────────── day of month (1–31)
│ │ │ ┌───────────── month (1–12)
│ │ │ │ ┌───────────── day of week (0–6, Sunday = 0)
│ │ │ │ │
* * * * *
Each field accepts an asterisk for "any value," a comma-separated list (1,15,30), a range (9-17), or a step (*/15 for every 15 units, 1-30/5 for every 5th value in that range). These can combine — 1-30/5 and */15 are both valid.
How this tool works
- Enter a cron expression, e.g.
0 9 * * 1-5(9:00 AM on weekdays). - Optionally set a Reference Time — the moment to calculate from. Leave it blank to use the current time.
- Choose how many upcoming run times to list (1–10).
The tool parses each field into the set of matching values, then scans forward minute by minute from the reference time until it finds enough matches — fast enough for any realistic schedule, and capped at four years of searching so an impossible expression (like day 30 of February) can't hang the page.
FAQ
What do the day-of-month and day-of-week fields mean when both are set?
This is the most commonly misunderstood part of cron: when both the day-of-month and day-of-week fields are restricted (neither is *), a run fires if either condition matches — it's an OR, not an AND. For example, 0 0 1 * 1 runs at midnight on the 1st of every month and every Monday, not only on Mondays that happen to fall on the 1st. If only one of the two fields is restricted (the other left as *), that one field governs normally.
Does this tool support @daily, @hourly, or named months/days (JAN, MON)?
No — this tool parses the standard 5-field numeric syntax only (*, lists, ranges, and steps). Nickname shorthands and month/weekday names aren't currently supported; write them out numerically (e.g. 0 0 * * * instead of @daily).
What time zone are the results in?
The reference time and results are treated as plain wall-clock values — there's no time zone conversion. If you leave Reference Time blank, it uses your browser's local time.
Why do I only see a few results for a rare schedule?
The search stops after four years of simulated time. If your expression is unsatisfiable (e.g. 0 0 31 2 *, since February never has 31 days), no runs will ever be found.
Privacy
This tool runs entirely in your browser. Your cron expression and reference time are never uploaded to a server.