← Back to tool

Cron · Day of week · 0-6 · SUN-SAT

Cron Day of Week Values

Updated: May 2026

The fifth cron field controls the day of the week, and it trips people up more than any other — mostly because of how Sunday is numbered. This guide clears it up so you can target specific days with confidence.

Build & preview this schedule →

See the next run times instantly · No upload

The numbering

ValueDayName
0SundaySUN
1MondayMON
2TuesdayTUE
3WednesdayWED
4ThursdayTHU
5FridayFRI
6SaturdaySAT
7Sunday (alias)SUN

The week starts on Sunday at 0, runs to Saturday at 6, and then 7 loops back to Sunday again. This is why you will see Sunday written as either 0 or 7 in real-world crontabs.

Names and ranges

Most modern cron implementations accept three-letter day names, which are case-insensitive:

  • 0 9 * * 1-5 = 0 9 * * MON-FRI — weekdays.
  • 0 9 * * 0,6 = 0 9 * * SAT,SUN — weekends.
  • 0 9 * * 2,4 — Tuesday and Thursday.
  • 0 9 * * 1-5/2 — every other weekday (Mon, Wed, Fri).

Ranges that wrap around the week, such as FRI-MON, are not reliably supported. Use a list like 5,6,0,1 instead to be safe across implementations.

The day-of-month interaction

The single most important rule: when both the day-of-month and day-of-week fields are restricted, cron runs the job when either matches. For example 0 0 13 * 5 fires on the 13th of every month and on every Friday — not only on Friday the 13th. To target a single condition, keep the other field as *. The generator spells this out in its plain-English summary, which is the fastest way to catch the mistake.

Frequently asked questions

Why does my Sunday job not run?

Check whether you used 7 on a cron version that only recognizes 0. If unsure, use 0 — it is supported everywhere.

How do I run on the last Friday of the month?

Standard cron cannot express "last Friday" directly. Quartz-style schedulers use 6L. In plain cron, run on every Friday and add a date check in your script.

Can I mix names and numbers?

It is best not to. Stick to one style per field to avoid surprises on stricter cron parsers.