Run a Cron Job Every 15 Minutes
Cron expression to run a job every 15 minutes. Fires at :00, :15, :30, and :45 of every hour.
Field-by-Field Breakdown
| Field | Value | Meaning |
|---|---|---|
| Minute | */15 | every 15 minutes |
| Hour | * | every hour |
| Day of Month | * | every day of month |
| Month | * | every month |
| Day of Week | * | every day of week |
*/15 * * * * runs 96 times a day on the quarter-hour. It's the default cadence for work that is too expensive to run every minute but too time-sensitive to push out to hourly — think aggregation windows, billing meter rollups, and SLA-bound integrations. The 15-minute boundary also aligns with how most observability tools bucket their dashboards, which makes incident timelines easier to read.
When teams reach for this schedule
Usage-metering rollups for billing
Per-customer event counters can be aggregated every 15 minutes into a `usage_window` row, which keeps the metering pipeline near-real-time without forcing every event write to be transactional. Downstream invoicing reads from the rollup, not the raw stream.
SaaS quota and rate-limit window refresh
Many third-party APIs reset request counters on 15-minute windows. A `*/15` job that fetches your remaining quota and updates a cache lets the application layer reason about headroom without making an extra API call per request.
Heartbeat aggregation for fleet visibility
If you have hundreds of edge agents reporting heartbeats, a `*/15` aggregator that classifies them into healthy/degraded/down keeps the dashboard query cheap (read one summary row) without losing freshness.
What to watch for
- •
*/15and0,15,30,45are equivalent in standard cron. Use whichever your linter prefers. - •Quarter-hour boundaries are also when many other crons fire. If your job is sensitive to upstream load (database, third-party API), consider offsetting:
5-59/15to fire at :05, :20, :35, :50. - •Long-running 15-minute jobs are the quiet productivity killer — they hide behind the 'looks like real-time' label but actually block the next window. Set a soft timeout of 12 minutes and alert if you hit it.
- •Avoid combining
*/15in the minute field with a step in another field unless you've actually computed what fires. Cron's step semantics on combined fields are confusing and easy to get wrong.
Next 5 Scheduled Runs
Computed in UTC. Use the generator to compare UTC with your browser-local time.
- 1Wed, Jun 3, 2026, 07:15 PM
- 2Wed, Jun 3, 2026, 07:30 PM
- 3Wed, Jun 3, 2026, 07:45 PM
- 4Wed, Jun 3, 2026, 08:00 PM
- 5Wed, Jun 3, 2026, 08:15 PM
Schedule this with TrigRun
Deploy this cron schedule in seconds. Automatic retries, encrypted secrets, full execution history, and native MCP support for AI agents.
Start Scheduling — Free*/15 * * * *
Frequently Asked Questions
What is the cron expression for every 15 minutes?
*/15 * * * * runs at minutes 0, 15, 30, and 45 of every hour — four times per hour, 96 times per day.
What is the difference between */15 and 0,15,30,45?
They are functionally identical. */15 is shorthand for 0,15,30,45 in the minute field. The step syntax is more readable.
How do I run every 15 minutes only during business hours?
Combine the minute step with an hour range and a weekday range: */15 9-17 * * 1-5 runs every quarter hour from 9 AM through 5:45 PM on Monday through Friday.