Run on New Year's Eve at 2:29 AM

cron expression Standard
$ 29 2 31 12 *

Runs on December 31st at 2:29 AM.

29
Minute
2
Hour
31
Day of Month
12
Month
*
Day of Week

* In a Nutshell

The cron expression 29 2 31 12 * runs Runs on December 31st at 2:29 AM.. This schedule is ideal for tasks that need to be performed annually at the very end of the year, such as generating year-end financial reports or performing a final system cleanup before the new year. It ensures a specific, critical task is executed precisely on New Year's Eve.

* When to use this

Use 29 2 31 12 * when a recurring task needs to run Runs on December 31st at 2:29 AM.. This schedule is commonly associated with end of month and monthly schedules and report generation workloads. It uses Standard (5-Field POSIX) syntax, supported by Unix cron daemons, cloud schedulers such as AWS EventBridge, and container orchestration platforms such as Kubernetes CronJob.

CronBase parses 29 2 31 12 * using a dialect-aware rules engine that identifies the Standard (5-Field POSIX) format, validates field structure against the Standard (5-Field POSIX) specification, and produces the translation above. Next run times are calculated by forward-scanning from the current UTC clock. Learn how CronBase works.

Platform Implementations

Bash

Add '0 2 31 12 * /path/to/your/script.sh' to your crontab using 'crontab -e'.

bash
0 2 31 12 *

Last verified:

Nodejs

Use a library like 'node-cron' and schedule a task with the cron string '0 2 31 12 *'.

nodejs
0 2 31 12 *

Last verified:

Python

Utilize the 'schedule' library or a cron wrapper, setting the schedule to '0 2 31 12 *'.

python
0 2 31 12 *

Last verified:

Golang

Employ the 'robfig/cron' package and create a cron specification for '0 2 31 12 *'.

golang
0 2 31 12 *

Last verified:

Java

In Quartz Scheduler, define a cron expression as '0 2 31 12 *'.

java
0 2 31 12 *

Last verified:

Kubernetes

Define a CronJob resource with the schedule set to '0 2 31 12 *'.

kubernetes
0 2 31 12 *

Last verified:

AWS EventBridge Equivalent

Standard cron expressions often need conversion for AWS EventBridge schedules.

EventBridge Rule
cron(29 2 31 12 ? *)

Frequently Asked Questions

What does this cron expression do?

This cron expression, '29 2 31 12 *', is configured to execute a task on the 31st day of December at 2:29 AM each year.

Does timezone affect this schedule?

Yes, the execution time is based on the server's local timezone. If the server is in a different timezone than expected, the job might run at an unintended hour relative to a specific business day.

How can I verify this schedule is working?

You can verify by setting up a test job that logs its execution time and date. Monitor the logs around December 31st at 2:29 AM in the server's local time to confirm it triggered correctly.

What is a common variant of this schedule?

A common variant might be to run a similar task at midnight on New Year's Eve, using '0 0 31 12 *'. This expression, however, is specifically for 2:29 AM.

Are there any specific gotchas for this expression?

A potential gotcha is if the system clock experiences a Daylight Saving Time adjustment exactly on December 31st (though uncommon). More critically, ensure that any task relying on year-end data is finalized before this job runs, as it fires after the year has technically ended for many reporting purposes.

More schedules like this

Explore End of Month →

* Try any expression

Standard, Quartz, AWS EventBridge, Jenkins, named schedules (@daily, @hourly…)

* Keep Exploring

Related expressions you might need