Cron Expression Parser & Next Run Times
Parse a five-field cron expression into a short description and upcoming run times.
How it works
- Five fields: minute hour day-of-month month day-of-week (0 and 7 = Sunday). Runs are shown in UTC and local time.
- * โ any value ยท */15 โ every 15 units
- 1-5 โ inclusive range ยท 1,15,30 โ list
- minute 0โ59 ยท hour 0โ23 ยท day 1โ31 ยท month 1โ12 ยท weekday 0โ7
- Description
- โ
About cron expression parsing
Cron Syntax & Field Order
Standard cron uses five whitespace-separated fields: minute (0-59), hour (0-23), day of month (1-31), month (1-12), and day of week (0-7, where both 0 and 7 represent Sunday).
Supported syntax includes wildcards (*), step values (*/15), ranges (1-5), and comma-separated lists (1,15,30). Non-standard 6-field and 7-field formats (such as Quartz seconds or years) and special strings (@daily, @hourly) are not supported. All schedule calculation executes locally without backend calls.
Parse and schedule cron in code
- JavaScript (node-cron)
const cron = require("node-cron"); cron.schedule("*/15 * * * *", () => { console.log("Runs every 15 minutes"); });- Python (croniter)
from croniter import croniter from datetime import datetime iter = croniter("0 9 * * 1-5", datetime.now()) print("Next run:", iter.get_next(datetime))
Cron parser FAQ
- Which timezone is used for next run times?
- Upcoming run calculations evaluate timestamps in UTC and simultaneously display the converted time in your system local timezone.
- What happens when day-of-month and day-of-week are both specified?
- In standard POSIX cron, if both fields are constrained (neither is *), the schedule matches when either condition is met (union logic).
- Are 6-field expressions with seconds supported?
- No. Standard UNIX/Linux cron uses exactly 5 fields. Quartz, Spring, and AWS scheduled rules with 6 fields are not supported.