Daily at 1:15 AM

cron expression Standard
$ 15 1 * * *

Runs every day at 1:15 AM

15
Minute
1
Hour
*
Day of Month
*
Month
*
Day of Week

* In a Nutshell

The cron expression 15 1 * * * runs Runs every day at 1:15 AM. This cron expression is ideal for routine tasks that need to be performed once daily during off-peak hours. Examples include database backups, log rotation, or system maintenance checks that can tolerate a slight delay if the system is busy.

* When to use this

Use 15 1 * * * when a recurring task needs to run Runs every day at 1:15 AM. This schedule is commonly associated with daily schedules 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 15 1 * * * 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 this line to your crontab using the 'crontab -e' command.

bash
15 1 * * * /path/to/your/script.sh

Last verified:

Nodejs

Install the 'node-cron' package and include this code in your Node.js application. Ensure the timezone is set correctly.

nodejs
const cron = require('node-cron');

cron.schedule('15 1 * * *', () => {
  console.log('Running task at 1:15 AM daily');
  // Your task logic here
}, {
  scheduled: true,
  timezone: "Etc/UTC" // Or your desired timezone
});

Last verified:

Python

Install the 'python-crontab' library and run this script to add the cron job to your user's crontab.

python
from crontab import CronTab

cron = CronTab(user=True)
job = cron.new(command='/path/to/your/script.py', time='15 1 * * *')
cron.write()

Last verified:

Golang

Use the 'github.com/robfig/cron/v3' package. Ensure your Go application is kept running to trigger the schedule.

golang
package main

import (
	"fmt"
	"github.com/robfig/cron/v3"
)

func main() {
	c := cron.New()
	c.AddFunc("15 1 * * *", func() {
		fmt.Println("Running task at 1:15 AM daily")
		// Your task logic here
	})
	c.Start()

	// Keep the application running
	select {}
}

Last verified:

Java

Use the Quartz Scheduler library. Define a Job class and configure the scheduler to use the cron expression '15 1 * * ?'. Note the '?' for Quartz compatibility.

java
import org.quartz.CronScheduleBuilder;
import org.quartz.CronTrigger;
import org.quartz.JobBuilder;
import org.quartz.JobDetail;
import org.quartz.Scheduler;
import org.quartz.SchedulerException;
import org.quartz.TriggerBuilder;
import org.quartz.impl.StdSchedulerFactory;

public class DailyJobScheduler {
    public static void main(String[] args) throws SchedulerException {
        JobDetail job = JobBuilder.newJob(YourJobClass.class).withIdentity("dailyTask").build();
        
        CronTrigger trigger = TriggerBuilder.newTrigger()
            .withIdentity("dailyTrigger")
            .withSchedule(CronScheduleBuilder.cronSchedule("15 1 * * * ?")) // Note: Quartz uses '?' for day-of-month/week when the other is specified
            .build();
            
        Scheduler scheduler = new StdSchedulerFactory().getScheduler();
        scheduler.start();
        scheduler.scheduleJob(job, trigger);
    }
}
// You'll need to define YourJobClass which implements the Job interface.

Last verified:

Kubernetes

Create a CronJob resource in Kubernetes. Replace 'your-image:latest' and the command with your actual task.

kubernetes
apiVersion: batch/v1
kind: CronJob
metadata:
  name: daily-task-cronjob
spec:
  schedule: "15 1 * * *"
  jobTemplate:
    spec:
      template:
        spec:
          containers:
          - name: task-container
            image: your-image:latest
            command: ["/bin/sh", "-c", "echo Executing daily task at 1:15 AM && date"]
          restartPolicy: OnFailure

Last verified:

AWS EventBridge Equivalent

Standard cron expressions often need conversion for AWS EventBridge schedules.

EventBridge Rule
cron(15 1 * * ? *)

Frequently Asked Questions

What does '15 1 * * *' mean?

This cron expression means the job will run every day at 1:15 AM. The fields represent: minute (15), hour (1), day of month (* - any), month (* - any), and day of week (* - any).

What timezone does this expression use?

Cron expressions are typically evaluated based on the system's local time. For precise scheduling across different environments, it's best to use UTC or specify the timezone explicitly in your cron runner's configuration.

How can I verify this job is running?

You can verify the job by adding logging statements to your script that record the execution time. Alternatively, check your system's cron logs or the logs of your job runner for entries corresponding to the scheduled time.

What is a common variant of this expression?

A common variant is '0 0 * * *', which runs a task every day at midnight. This is often used for batch processing or end-of-day reports.

What is a potential gotcha with daily schedules?

If the job takes longer than a minute to run, and the system is slow or the job is resource-intensive, you might encounter overlapping runs if the next day's execution starts before the previous one finishes.

More schedules like this

Explore Daily Schedules →

* Try any expression

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

* Keep Exploring

Related expressions you might need