Cron every month

The same as @monthly: midnight on the 1st. Cron can't say “last day of the month” directly; run daily and check the date in the script instead.

At 00:00 on the 1st of the month.

Next runs

What each field means

FieldValueMeaning
Minute00
Hour00
Day of month11
Month*every month
Day of week*any day of the week

Know when it doesn’t run

Cron never tells you when a job fails to start or dies halfway. Add a ping at the end of the line: if Heartcron doesn’t hear it on schedule, you get an alert in Telegram, Slack, Discord or email.

0 0 1 * * /path/to/job.sh && curl -fsS -m 10 --retry 3 https://ping.heartcron.com/<check-id> > /dev/null

Monitor this job for free How pings work

Common schedules