The expression
*/15 * * * *
Runs at minute 0, 15, 30 and 45 of every hour, every day: 4 times an hour, 96 times a day.
| Field | Value | Meaning |
|---|---|---|
| Minute | */15 |
every 15th minute, starting at 0 |
| Hour | * |
every hour |
| Day of month | * |
every day |
| Month | * |
every month |
| Day of week | * |
every day of the week |
*/15 expands to 0,15,30,45, so the two forms are interchangeable; the explicit list is sometimes clearer to readers who don't know step syntax. Runs land on the quarter hour (10:00, 10:15, 10:30, 10:45), not 15 minutes after the job was added.
Variants
| Schedule | Expression |
|---|---|
| Every 15 minutes, offset by 7 (10:07, 10:22…) | 7-59/15 * * * * |
| Every 15 minutes from 9:00 to 17:45 | */15 9-17 * * * |
| Every 15 minutes, weekdays only | */15 * * * 1-5 |
| Every 15 minutes, 9 to 5 on weekdays | */15 9-17 * * 1-5 |
| Every 10 minutes | */10 * * * * |
| Every 30 minutes | */30 * * * * |
| Every hour | 0 * * * * |
To stop at exactly 17:00 instead of 17:45, use */15 9-16 * * 1-5 plus a second line 0 17 * * 1-5.
Where to write it
- crontab (Linux, macOS):
*/15 * * * * /usr/local/bin/fetch.shincrontab -e. Times are in the server's time zone; setCRON_TZ=in the crontab where supported. - GitHub Actions:
on: schedule: - cron: '*/15 * * * *'. Always UTC; the minimum interval is 5 minutes. Runs at :00 are the most crowded and the most likely to start late, so7-59/15is a kinder choice. - Kubernetes CronJob:
schedule: "*/15 * * * *", withtimeZone:(for example"America/Chicago") when the hour or weekday fields matter. - AWS EventBridge: six fields,
?in one of the day fields:cron(0/15 * * * ? *). Weekdays only:cron(0/15 * ? * MON-FRI *); EventBridge numbers days 1-7 from Sunday, so names are safer. Orrate(15 minutes), which counts from rule creation.
Common mistakes
15 * * * *is once an hour, at quarter past. The slash makes it a step.*/15 9-17runs until 17:45, because the hour range includes 17.- Weekdays in UTC. On a UTC scheduler,
1-5means Monday to Friday in UTC, which shifts the edges of the week by your offset. - Unlocked long runs. A job that sometimes needs 20 minutes will overlap the next one; use
flock -n.
Paste any expression into the Cron Expression Parser to see it in words and its next run times.