Cron First Day of Month
The 1 in the day-of-month field means the 1st. With 0 0 in the minute and hour fields and * for month, the job runs at midnight on the first day of every month.
Cron Expression
0 0 1 * *Field Breakdown
| Field | Value | Meaning |
|---|---|---|
| Minute | 0 | At minute 0 |
| Hour | 0 | At midnight (00:00) |
| Day of Month | 1 | The 1st of the month |
| Month | * | Every month (1-12) |
| Day of Week | * | Any day of the week |
Variations
0 0 1 * *Midnight on the 1st of every month0 9 1 * *9 AM on the 1st of every month0 0 1 */3 *The 1st of every quarter (every 3 months)Common Use Cases
- Monthly billing and invoice generation
- Resetting monthly usage counters and quotas
- Start-of-month reports and rollovers
Tips & Best Practices
Keep day-of-week as * — if you also set it, cron runs when EITHER the day-of-month OR day-of-week matches.
For the last day of the month, see the dedicated guide (standard cron has no direct "last day").
Use 0 0 1 */3 * for quarterly schedules off the same pattern.