Cron on weekdays only
0 9 * * 1-5 runs at 09:00 Monday through Friday. Day-of-week numbering is the trap here: crontab counts 0-6 from Sunday and also accepts 7 for Sunday, while Quartz and AWS EventBridge count 1-7 from Sunday. The same digits mean different days depending on where you paste them, so MON-FRI is safer than 1-5.
At 09:00 on Monday, Tuesday, Wednesday, Thursday and Friday.
Next runs — UTC
- Mon, 31 Aug 2026, 09:00
- Tue, 01 Sept 2026, 09:00
- Wed, 02 Sept 2026, 09:00
- Thu, 03 Sept 2026, 09:00
- Fri, 04 Sept 2026, 09:00
Five fields. Runs in the server's local timezone.
Cron uses the server’s timezone, which is often not yours. Check before you trust a time.
Fields
- minute0–59
- hour0–23
- dom1–31
- month1–12
- dow0–7
The expression
0 9 * * 1-5
Edit it above to see the next run times update, or switch dialect if your scheduler uses a different format.
Frequently asked questions
- Is 1 Monday or Sunday in cron?
- In crontab and Kubernetes, 0 is Sunday and 1 is Monday. In Quartz and AWS EventBridge, 1 is Sunday and 2 is Monday. Using names — MON-FRI — sidesteps the question entirely, and every dialect above accepts them.
- How do I run on weekends instead?
- 0 9 * * 6,0 in crontab, or 0 9 * * SAT,SUN which reads the same in every dialect.
- Can I combine weekdays with a day-of-month?
- You can, but read the result carefully: when both day fields are restricted, cron runs the job when *either* matches, not both. 0 9 1 * 1-5 means the 1st of the month and also every weekday.