Cron expression explainer
Confirm a schedule before deploying it and understand why a job did or did not run.
minute hour day-of-month month day-of-week
Runs at minutes every 15 of hours 2 on Monday, Tuesday, Wednesday, Thursday, Friday.
- Monday, 12 October 2026 at 02:00 (2026-10-12 02:00 UTC)
- Monday, 12 October 2026 at 02:15 (2026-10-12 02:15 UTC)
- Monday, 12 October 2026 at 02:30 (2026-10-12 02:30 UTC)
- Monday, 12 October 2026 at 02:45 (2026-10-12 02:45 UTC)
- Tuesday, 13 October 2026 at 02:00 (2026-10-13 02:00 UTC)
- Tuesday, 13 October 2026 at 02:15 (2026-10-13 02:15 UTC)
- Tuesday, 13 October 2026 at 02:30 (2026-10-13 02:30 UTC)
- Tuesday, 13 October 2026 at 02:45 (2026-10-13 02:45 UTC)
Monitor this job with a heartbeat and get alerted when it stops. Free for 5 monitors, no credit card.
Start monitoringHow it measures
- Standard five-field syntax with ranges, steps, lists, month and weekday names and the common @daily style aliases.
- When both day-of-month and day-of-week are restricted, a date matches if either matches (Vixie cron semantics).
- Next runs are evaluated minute by minute in the chosen zone; local times that do not exist on a daylight-saving day are skipped.
Limits
- Seconds fields, L/W/# modifiers and other extensions are not supported.
- Your scheduler may interpret edge cases differently; test with its own tooling when in doubt.
Troubleshooting
- Job skipped once a year
- A schedule at 02:30 local does not exist on the spring-forward day in many zones. Use UTC or a time outside the changeover window.