Candid Tools

Cron once a year (1 January at midnight)

Once a year in cron is 0 0 1 1 * or @yearly (Unix), 0 0 0 1 1 ? in Quartz and Spring; this page lists the next runs, calculated in your browser.

Unix cron (crontab, GitHub Actions, Kubernetes)
  • 0 0 1 1 *
Quartz and Spring (seconds first; valid in both)
  • 0 0 0 1 1 ?
AWS EventBridge (minute first, year last)
  • cron(0 0 1 1 ? *)

Read by our parser as: At 12:00 AM (midnight), on January 1. Open in the cron checker

Next 10 runs

Calculating in your browser...

  1. 1 
  2. 2 
  3. 3 

At a glance

Accepts
Nothing to enter - the schedule is preset on the page
Outputs
The expression in Unix, Quartz/Spring and AWS form, plus its next 10 run times
Where it runs
Entirely in your browser, on your device
What leaves your device
Nothing - what you type stays in this tab
Limits
Run times use your browser's timezone or UTC; real schedulers can start a run late
Account
Not required - there is no sign-up
Price
Free, with no watermark and no usage cap
Made by
Visrut

What it means

0 0 1 1 * runs once a year, at 00:00 on 1 January, which is what @yearly and @annually stand for in crontab(5) and Kubernetes. Any fixed date works the same way: 0 9 25 12 * is 9:00 on 25 December.

When this is the right schedule

Use it when the work is genuinely annual: archiving last year's data, renewing a yearly licence check, resetting yearly counters.

When to pick something else

Look elsewhere when you want 29 February: 0 0 29 2 * only runs in leap years, so it can go four years between runs. Use 28 February or 1 March.

Things to watch

Quartz and AWS have a year field

Quartz's optional seventh field and AWS's sixth limit the years: 0 0 0 1 1 ? 2027 runs once, on 1 January 2027. Unix cron and Spring have no year field.

Spring's Christmas example

Spring's docs use 0 0 0 25 DEC ? for "every Christmas Day at midnight": month names work and ? is accepted in day of week.

New Year in whose timezone?

In UTC, 1 January 00:00 is still 31 December in the Americas. If the date has to match your users, set the schedule's timezone.

Frequently asked questions

What does @yearly mean in cron?

0 0 1 1 *: once a year at midnight on 1 January. @annually is the same.

How do I run a cron job on a specific date every year?

Put the day and month in fields 3 and 4: 0 9 15 6 * runs at 9:00 every 15 June.