Cron First Day of Every Month

Schedule a cron job on the first day of every month at midnight with 0 0 1 * *. Complete field breakdown and monthly scheduling use case examples.

Cron Expression

0 0 1 * *

Field Breakdown

FieldValueMeaning
Minute0At 0
Hour0At 0
Day of Month1At 1
Month*Every month (1–12)
Day of Week*Every day of the week (Sun–Sat)

Detailed Explanation

The cron expression 0 0 1 * * schedules a task to run once per month, on the 1st day of each month at midnight.

Field-by-field breakdown:

  • 0 (Minute): At minute 0. The task fires at the start of the hour.
  • 0 (Hour): At hour 0 (midnight). The task runs at the very beginning of the first day.
  • 1 (Day of Month): On the 1st day of the month only. This restricts execution to the first calendar day.
  • * (Month): Every month from January through December. No restriction on the month.
  • * (Day of Week): Every day of the week. No restriction on the day of the week, so it runs regardless of whether the 1st falls on a weekday or weekend.

This means your task will execute 12 times per year, once at the start of each month. Monthly first-of-month jobs are essential for billing cycles, invoice generation, monthly reports, and subscription renewals. This is one of the most universally used monthly schedules across all industries. Ensure your task handles months with varying lengths correctly if it processes the previous month's data. This expression is supported by standard cron on Linux/macOS, as well as cloud services like AWS CloudWatch, Google Cloud Scheduler, and GitHub Actions.

Use Case

Ideal for generating monthly billing invoices and sending payment reminders to customers at the start of each new billing cycle.

Try It — Interactive Builder

On day 1 of every month at midnight

**/5*/10*/15*/300
**/2*/3*/6*/120
*1151,15*/2
*11,4,7,101,7
*1-50,615

Next 10 Executions

1.Wed, Apr 1, 2026, 12:00 AM
2.Fri, May 1, 2026, 12:00 AM
3.Mon, Jun 1, 2026, 12:00 AM
4.Wed, Jul 1, 2026, 12:00 AM
5.Sat, Aug 1, 2026, 12:00 AM
6.Tue, Sep 1, 2026, 12:00 AM
7.Thu, Oct 1, 2026, 12:00 AM
8.Sun, Nov 1, 2026, 12:00 AM
9.Tue, Dec 1, 2026, 12:00 AM
10.Fri, Jan 1, 2027, 12:00 AM

Ctrl+Shift+C to copy expression

Customize this expression