Skip to content
IP 19216811.blog
Cron Reference

Every Month

Runs on the 1st day of every month at midnight.

Cron Expression

0 0 1 * * Test in tool

At 12:00 AM, on the 1st

Expression Breakdown

Minute Hour Day Month Weekday
0 0 1 * *
0 0 1 any any

Next 5 Scheduled Runs

  • Wednesday, July 1 2026 at 12:00 AM
  • Saturday, August 1 2026 at 12:00 AM
  • Tuesday, September 1 2026 at 12:00 AM
  • Thursday, October 1 2026 at 12:00 AM
  • Sunday, November 1 2026 at 12:00 AM

Times are relative to the server's local clock at page load.

Common Use Cases

  • Monthly invoice generation
  • Monthly usage reports
  • Archive and cleanup jobs

How to Install

Linux / macOS (crontab)

Run crontab -e and add this line:

0 0 1 * * /path/to/your/script.sh

Python (APScheduler / cron-style)

scheduler.add_job(my_func, 'cron',
    minute='0',
    hour='0',
    day='1',
    month='*',
    day_of_week='*')

GitHub Actions (schedule)

on:
  schedule:
    - cron: '0 0 1 * *'

Frequently Asked Questions

What does 0 0 1 * * mean?
Midnight on the 1st day of every month.
How do I run a job on the last day of each month?
Cron has no direct 'last day' syntax. A common workaround is 0 0 28-31 * * combined with a script that checks whether tomorrow is the 1st.
Is @monthly the same as 0 0 1 * *?
Yes — most cron implementations treat @monthly as 0 0 1 * *.