Cron Expression Generator

Build, explain, and test cron schedules with a visual builder and next run previews.

Cron Expression
minute
hour
day (month)
month
day (week)
Schedule
Every minute
Presets:
Visual Builder
Minute (0-59)
Hour (0-23)
Day (1-31)
Month (1-12)
Weekday (0-7)
Next Executions
1. Fri, Mar 13, 2026 4:14 PM
2. Fri, Mar 13, 2026 4:15 PM
3. Fri, Mar 13, 2026 4:16 PM
4. Fri, Mar 13, 2026 4:17 PM
5. Fri, Mar 13, 2026 4:18 PM
6. Fri, Mar 13, 2026 4:19 PM
7. Fri, Mar 13, 2026 4:20 PM
8. Fri, Mar 13, 2026 4:21 PM
9. Fri, Mar 13, 2026 4:22 PM
10. Fri, Mar 13, 2026 4:23 PM
Cron Syntax Reference
* * * * *
| | | | |
| | | | +-- Day of week   (0-7, 0 and 7 = Sunday)
| | | +---- Month         (1-12)
| | +------ Day of month  (1-31)
| +-------- Hour          (0-23)
+---------- Minute        (0-59)

Special characters:
  *   Any value
  ,   Value list separator (1,3,5)
  -   Range of values (1-5)
  /   Step values (*/5 = every 5)

Get the JSON & API Cheat Sheet

Formatting tricks, jq commands, and common patterns — one page, zero fluff.

How to Write Cron Expressions

Cron syntax is deceptively simple but easy to get wrong — the difference between "every day at midnight" and "every minute" is just one misplaced asterisk. This cron expression generator helps you build and validate cron schedules with a human-readable description of when the job will run.

You'll encounter cron expressions in crontab on Linux servers, Kubernetes CronJob manifests, CI/CD scheduled pipelines (GitHub Actions, GitLab CI), AWS EventBridge rules, and background job libraries like Sidekiq or node-cron. The syntax is the same everywhere: minute hour day-of-month month day-of-week.

The tool shows you the next several execution times so you can verify the schedule is correct before deploying. This catches common mistakes like scheduling a monthly report for the 31st (which doesn't exist in every month) or using 0-indexed vs 1-indexed day-of-week values.

Tips

  • The five fields are: minute (0-59), hour (0-23), day of month (1-31), month (1-12), day of week (0-6, where 0=Sunday).
  • Use */5 * * * * for "every 5 minutes" — the */N syntax means "every Nth interval".
  • Some systems use 6 fields (adding seconds) or 7 fields (adding year). Check your platform's documentation.
  • Always test in a staging environment first — a misconfigured cron job can either never run or run every minute.