Type a cron, a macro, or plain English. Instantly explained.
L, W, #)
may have varying support across schedulers.
Always test schedules in your actual platform before production deployment.
Examples provided are for guidance and may require adaptation.
| Macro | Equivalent | Meaning |
|---|
A standard cron expression has 5 fields separated by spaces: minute hour day-of-month month day-of-week
Special characters: * (any) · */n (every n) · a-b (range) · a,b (list)
AWS uses a 6-field format: minute hour day-of-month month day-of-week year. The day-of-month and day-of-week fields cannot both be set — one must be ?. This tool handles that conversion automatically.
0 12 * * * — Every day at noon UTC0 9 * * 1-5 — Every weekday at 9 AM UTC*/5 * * * * — Every 5 minutes0 0 1 * * — First day of every month at midnight0 0 * * 0 — Every Sunday at midnight (same as @weekly)? placement. No manual fix needed.L, W, and #, including patterns like 5L, 15W, and 1#2. Platform warnings included.*/5 * * * * runs every 5 minutes.
*/30 * * * * runs every 30 minutes.
0 9 * * 1-5 runs Monday through Friday at 9 AM.
0 0 * * 0 runs every Sunday.
cron(0 12 * * ? *) runs daily at noon UTC.
0 */6 * * * runs every 6 hours.
schedule_expression = "cron(0 9 ? * MON-FRI *)"
CronRead Pro includes timezone conversion, cloud snippets and plain English parsing, while CronGuru mainly focuses on explanation.
Beyond the standard five fields, many cron schedulers support extended special characters for more precise scheduling:
L in the day-of-month field means the last day of the month. 5L means the last Friday of the month.15W triggers on the weekday closest to the 15th of the month — avoiding weekends automatically.1#2 means the second Monday of the month. Useful for schedules like "every second Tuesday."CronRead Pro validates and interprets these advanced expressions and warns you when a target platform (such as Kubernetes or GitHub Actions) may not support them.
*/5 mean in a cron expression?*/5 means "every 5 units". In the minutes field, */5 runs at 0, 5, 10, 15, 20... In the hours field, */5 runs at 0:00, 5:00, 10:00, 15:00, 20:00.minute hour day-of-month month day-of-week year. You cannot set both day-of-month and day-of-week — one must be ?. Example: cron(0 12 * * ? *) runs every day at noon UTC.@weekly mean in cron?@weekly equals 0 0 * * 0 — once a week at midnight UTC on Sunday.0 9 * * 1-5. The 1-5 in the day-of-week field means Monday through Friday. You can also type "every weekday at 9am" in CronRead Pro to generate this automatically.*/15 9-17 * * * mean?*/15 9-17 * * * means every 15 minutes between 9 AM and 5 PM UTC, every day. The */15 in the minute field fires at :00, :15, :30, :45. The 9-17 in the hour field restricts it to business hours.0 0 1 * * — this runs at midnight UTC on the 1st of every month. This is equivalent to the @monthly macro.cron() and rate() expressions. rate(5 minutes) runs every 5 minutes on a fixed interval from when the rule was created. cron() gives precise control over exactly when something runs using a calendar-based schedule.