About Cron Expressions
Cron is the scheduling syntax used by Linux crontab, Kubernetes CronJobs, GitHub Actions, cloud schedulers and countless backup tools. Its five fields — minute, hour, day of month, month, day of week — are terse and easy to get subtly wrong: 0 0 1 * * (midnight on the 1st of each month) reads a lot like 0 0 * * 1 (midnight every Monday). This tool parses each field, explains the whole schedule in plain English and, most usefully, computes the next five actual run times in your local timezone so you can sanity-check the schedule before deploying it.
One classic trap is worth knowing: when both day-of-month and day-of-week are restricted, standard cron runs the job when either matches, not both. So 0 0 13 * 5 fires every Friday and every 13th — not only on Friday the 13th. The tool applies this OR rule, matching what real crontab does.
How to Use This Tool
*/10 8-18 * * 1-5.Common Use Cases
- Backup schedules. Verify a nightly backup job really fires at 2 am and not 2 pm — the run-time preview catches 12-hour mistakes before the missed-backup ticket does.
- Kubernetes CronJobs. Paste the schedule from a CronJob manifest to confirm what it does before applying it to the cluster.
- CI/CD pipelines. Check the
schedule:trigger in GitHub Actions or GitLab CI so a "weekly" build doesn't silently run daily. - Maintenance windows. Build an expression that only fires inside an agreed window, such as Sundays between 1 am and 4 am, and prove it with the preview.
- Learning cron. Students and juniors can experiment safely — change one field at a time and watch how the translation and run times shift.
Field Syntax Reference
- * — any value. 5 — exactly 5. 1-5 — a range.
- */15 — every 15th value (0, 15, 30, 45). 1-9/2 — steps within a range.
- 1,15,30 — a list. Combine:
0,30 8-18 * * 1-5. - Day-of-week: 0 or 7 = Sunday. Names work too:
MON-FRI,JAN.
Frequently Asked Questions
*/5 * * * * is every 5 minutes, but * */5 * * * runs every minute of every 5th hour — 60 runs where you expected one. The plain-English translation makes this mistake obvious.