Cron Expression
0 0 1 1 *
Learn how to create a cron expression for 'cron every year'. Runs annually on January 1st at midnight with our free cron generator tool.
| Field | Value | Meaning |
|---|---|---|
| Minute | 0 | At minute 0 |
| Hour | 0 | At hour 0 |
| Day of Month | 1 | Day 1 |
| Month | 1 | Month 1 |
| Day of Week | * | Any day of the week |
This cron expression represents: cron every year
0 0 1 1 *
Runs once per year: at midnight on January 1st. Reading the fields left to right — minute 0, hour 0, day of month 1, month 1 (January), any weekday.
Annual jobs are rare but real:
crontab -e
0 0 1 1 * /path/to/your/script.sh
A job that fires once a year is easy to forget and hard to notice when it fails. Make sure it logs somewhere durable and alerts on failure — you won’t get another attempt for twelve months. Also confirm the server will actually be running on New Year’s Day; for laptops or spot instances, anacron or a systemd timer with Persistent=true will catch up on missed runs.
@yearly /path/to/script.sh (also spelled @annually) — identical to 0 0 1 1 *
0 0 15 6 * runs every June 15th0 0 1 1 * /path/to/script.sh || mail -s "Yearly job failed" admin@example.com