Cron Expression Every 15 Minutes: */15 * * * * Explained

The cron expression */15 * * * * runs a job every 15 minutes — at :00, :15, :30, and :45 past every hour, all day, every day. This guide explains exactly how it works and how to adapt it for different intervals.

What does */15 * * * * mean?

A cron expression has five fields separated by spaces. From left to right they are: minute, hour, day of month, month, and day of week. Each field controls when the job runs in that time unit.

cron
*/15 * * * *
│    │ │ │ └─ day of week  (0–6, Sun=0)
│    │ │ └─── month        (1–12)
│    │ └───── day of month (1–31)
│    └─────── hour         (0–23)
└──────────── minute       (0–59)  ← */15 means "every 15 minutes"

The */15 syntax means "every 15 units starting from 0." In the minute field, that produces: 0, 15, 30, 45. The four asterisks in the remaining fields mean "every" — so this runs at those minute values during every hour, every day, every month, and every day of the week.

In plain English: run this job 4 times per hour, 96 times per day.

Validate and visualise this expression live — see the next 8 run times.

Try it in the Cron Tool →

How the */n step syntax works

The forward slash in */n is called a "step value." It tells cron to pick every nth value from the full range. For the minute field (0–59), */15 selects: 0, 15, 30, 45.

You can think of it as: start at 0, keep adding 15, stop when you exceed 59.

Common interval variations

ExpressionMeaningRuns per hour
*/1 * * * *Every minute60
*/5 * * * *Every 5 minutes12
*/10 * * * *Every 10 minutes6
*/15 * * * *Every 15 minutes4
*/20 * * * *Every 20 minutes3
*/30 * * * *Every 30 minutes2
0 * * * *Every hour (at :00)1

Run every 15 minutes only during business hours

If you want every 15 minutes but only from 9 AM to 5 PM, combine the step value with a range in the hour field:

cron
*/15 9-17 * * *

This runs every 15 minutes, but only between 9:00 and 17:00 (5 PM). Outside those hours, the job is skipped.

Run every 15 minutes on weekdays only

cron
*/15 9-17 * * 1-5

The 1-5 at the end means Monday through Friday (weekdays). Sunday is 0, Saturday is 6.

Common mistake: using seconds

Standard Unix cron does not have a seconds field. If you need sub-minute precision, you need a different scheduler. Tools like AWS EventBridge, Kubernetes CronJob, or Spring Scheduler support seconds — but their syntax differs from standard crontab.

In standard cron, the smallest unit is one minute. If you put 6 fields, most systems will throw an error or silently ignore the extra field.

How to add this to your crontab

  1. Open your crontab with crontab -e
  2. Add a new line with your expression and command
  3. Save and exit — the cron daemon picks it up immediately
bash
# Run a script every 15 minutes
*/15 * * * * /home/user/scripts/check.sh

# Run every 15 min and log output
*/15 * * * * /home/user/scripts/check.sh >> /var/log/check.log 2>&1

Quick summary

  • */15 * * * * — every 15 minutes, all day, every day
  • */15 9-17 * * * — every 15 min, 9 AM to 5 PM only
  • */15 9-17 * * 1-5 — every 15 min during business hours, weekdays only
  • The */n syntax works in any cron field, not just minutes
  • Standard cron has no seconds field — smallest unit is one minute

Paste any cron expression to get an instant plain English explanation and see the next run times.

Open Cron Explainer →
Next post →
What Does * * * * * Mean in Cron?
← All posts
Back to the blog