Daily at 1:15 AM
15 1 * * * Runs every day at 1:15 AM
* 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.
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.
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.
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.
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.
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.
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.
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.
Related Concepts
More schedules like this
Explore Daily Schedules →* Try any expression
Standard, Quartz, AWS EventBridge, Jenkins, named schedules (@daily, @hourly…)
* Keep Exploring