Every N minutes
*/3 * * * *
Run every 3 minutes, :00, :03, :06, … :57.
This preview is live: the table below shows the actual next run times for */3 * * * * in your time zone, recomputed in your browser. Change the expression, dialect, or zone to experiment, then copy the result.
What */3 * * * * means
*/3 * * * * fires twenty times an hour, on every minute divisible by three. Because 60 divides evenly by 3, the cadence is perfectly regular, the last fire of the hour is at :57 and the next is :00 of the following hour, still exactly three minutes apart.
Three minutes is a popular interval for jobs that are slightly too heavy for every-minute but need to stay snappy: short ETL micro-batches, lightweight scrapers, or retry sweeps. It keeps the run count low enough (1,200/day) that overlap is rare while still reacting quickly to new work.
Field-by-field breakdown
Unix cron has five fields. Here is what each one is doing in this expression:
| Field | Value | Meaning |
|---|---|---|
| Minute | */3 | every 3 (step) across minute |
| Hour | * | every hour |
| Day of month | * | every day-of-month |
| Month | * | every month |
| Day of week | * | every day-of-week |
Every 3 minutes in every scheduler
The same cadence written for the seven cron dialects you are most likely to meet. Copy the line for the system you target, the field count and day-of-week numbering differ between them.
| Scheduler | Expression | Copy |
|---|---|---|
| Unix / crontab | */3 * * * * | |
| GitHub Actions | */3 * * * * | |
| Kubernetes CronJob | */3 * * * * | |
| Vercel Cron | */3 * * * * | |
| Quartz | 0 */3 * * * * * | |
| Spring | 0 */3 * * * * | |
| AWS EventBridge | */3 * * * * * |
When you would use */3 * * * *
- Retry sweeps for failed background jobs with a short backoff.
- Near-real-time scraping where the source updates every few minutes.
- Polling a deployment status API during a rollout.
The gotcha worth knowing
Not every step divides the hour cleanly. */3 does (60 ÷ 3 = 20), but something like */7 resets at :00 every hour, so the gap between :56 and :00 is only four minutes, the regularity you assume from the slash is not guaranteed.
People also search for
*/3 * * * * FAQ
What does the cron expression */3 * * * * mean?
*/3 * * * * means: Run every 3 minutes, :00, :03, :06, … :57. */3 * * * * fires twenty times an hour, on every minute divisible by three. Because 60 divides evenly by 3, the cadence is perfectly regular, the last fire of the hour is at :57 and the next is :00 of the following hour, still exactly three minutes apart.
How do I write "every 3 minutes" in GitHub Actions?
Use */3 * * * * in the schedule's cron field. Not every step divides the hour cleanly. */3 does (60 ÷ 3 = 20), but something like */7 resets at :00 every hour, so the gap between :56 and :00 is only four minutes, the regularity you assume from the slash is not guaranteed.
How do I write "every 3 minutes" for AWS EventBridge?
EventBridge uses six fields with a required year and a ? placeholder in one day field: */3 * * * * *. Wrap it as cron(*/3 * * * * *) in the console or CloudFormation.
What is the Quartz equivalent of */3 * * * *?
Quartz is seconds-first with a trailing year, so the equivalent is 0 */3 * * * * *. Remember Quartz numbers Sunday as 1, the opposite of Unix.
Related cron patterns
More cron tools
Browse the full set of cron pattern pages, or jump to the interactive tools: the cron expression builder for designing a schedule from scratch, the cron cheat sheet for a side-by-side reference, the cron timezone translator for moving a schedule between zones and dialects, and the GitHub Actions cron picker for DST-stable CI schedules.