Run a Cron Job Twice a Month
To run a job twice a month, list two days in the day-of-month field. For example 0 9 1,15 * * runs at 9:00 AM on the 1st and the 15th of every month. Change the numbers to pick different dates.
The expression
0 9 1,15 * * runs at 09:00 on the 1st and 15th of every month. The comma list in the third field (day-of-month) picks the two dates.
Choose other dates
For the 10th and 25th use 0 9 10,25 * *. Day-of-month accepts 1–31; avoid 29–31 if you need it to fire in every month (February).
Change the time
The first two fields are minute and hour, so 30 18 1,15 * * runs at 6:30 PM on those two days.
FAQ
What is the cron expression to run twice a month?
List two dates in the day-of-month field, e.g. 0 9 1,15 * * runs at 9 AM on the 1st and 15th.
How do I pick different dates?
Change the comma list in the third field. The 10th and 25th is 0 9 10,25 * *.
Why might a twice-monthly job skip a month?
If you pick 29, 30, or 31, those dates don't exist in every month (February), so that run is skipped. Use 1-28 to fire every month.