Cron Schedule Reference

Cron: Every January 1st (Yearly)

Run a cron job once per year on New Year's Day.

0 0 1 1 *
Every January 1st (Yearly)

Expression Breakdown

0
Minute
0
0
Hour
0
1
Day
1
1
Month
1
*
Weekday
Any day

Usage in Crontab

Add this line to your crontab (crontab -e):

# Every January 1st (Yearly) 0 0 1 1 * /path/to/your/script.sh

With CronPing Monitoring

Add a curl ping to get alerted if your job fails or runs late:

# Every January 1st (Yearly) — with CronPing dead man's switch 0 0 1 1 * /path/to/your/script.sh && curl -s https://cronping.anethoth.com/ping/YOUR_TOKEN

Common Use Cases

Database Backups
Automate pg_dump or mysqldump on this schedule
Cache Warming
Pre-compute expensive queries or API responses
Report Generation
Generate and email analytics reports
Health Checks
Ping endpoints and check service availability

Monitor Your Cron Jobs

Get alerted instantly when a 0 0 1 1 * job fails or runs late. Free for up to 3 monitors.

Start Monitoring — Free

Frequently Asked Questions

What does 0 0 1 1 * mean in cron?

Run a cron job once per year on New Year's Day. This expression follows the standard 5-field cron syntax: minute, hour, day-of-month, month, day-of-week.

How do I add this to my crontab?

Run crontab -e in your terminal and add: 0 0 1 1 * /path/to/your/command. Save and exit. Use crontab -l to verify.

How do I know if my cron job actually ran?

Check /var/log/syslog or /var/log/cron for execution logs. For reliable monitoring, use CronPing — it alerts you when a job misses its expected schedule.

What timezone does cron use?

Cron uses the system timezone by default. Check with timedatectl or set TZ=UTC in your crontab for consistency across servers.

Related Cron Schedules