Cron every 2 minutes
The cron expression for every 2 minutes is:
*/2 * * * *Runs every 2 minutes, on even minutes: :00, :02, :04 and so on to :58.
Next 10 runs
For */2 * * * *, in the timezone you pick. Cron uses the server's timezone.
Times in UTC as of the last site update. They refresh when the page loads in a browser.
| # | Date and time | When |
|---|---|---|
| 1 | Oct 29, 2026, 22:12 | Thursday |
| 2 | Oct 29, 2026, 22:14 | Thursday |
| 3 | Oct 29, 2026, 22:16 | Thursday |
| 4 | Oct 29, 2026, 22:18 | Thursday |
| 5 | Oct 29, 2026, 22:20 | Thursday |
| 6 | Oct 29, 2026, 22:22 | Thursday |
| 7 | Oct 29, 2026, 22:24 | Thursday |
| 8 | Oct 29, 2026, 22:26 | Thursday |
| 9 | Oct 29, 2026, 22:28 | Thursday |
| 10 | Oct 29, 2026, 22:30 | Thursday |
How to read */2 * * * *
*/2 in the minute field is a step: start at 0 and take every second minute. The other four * fields mean every hour, every day of the month, every month and every day of the week.
| Field | Value | Meaning | Allowed |
|---|---|---|---|
| Minute | */2 | Every 2 minutes, from minute 0 | 0-59 |
| Hour | * | Every hour | 0-23 |
| Day of month | * | Every day of the month | 1-31 |
| Month | * | Every month | 1-12 or jan-dec |
| Weekday | * | Every day of week | 0-7 or sun-sat |
Watch out for
- Steps count from the start of the hour, not from when you saved the crontab. A job added at 10:03 first runs at 10:04.
- To run on odd minutes instead, use
1-59/2 * * * *. - GitHub Actions does not run schedules more often than every 5 minutes.
Often used for: Near-real-time syncs and pollers that can wait a minute longer than every-minute jobs.
Use it in
crontab
*/2 * * * * /path/to/your-script.shEdit with crontab -e. Runs in the server's timezone.
Kubernetes CronJob
apiVersion: batch/v1
kind: CronJob
metadata:
name: my-job
spec:
schedule: "*/2 * * * *"
timeZone: "Etc/UTC"
jobTemplate:
spec:
template:
spec:
restartPolicy: OnFailure
containers:
- name: my-job
image: busybox:1.36
command: ["sh", "-c", "date"]Without timeZone, the schedule follows the timezone of the kube-controller-manager.
GitHub Actions
on:
schedule:
- cron: '*/2 * * * *'
timezone: "Etc/UTC"
jobs:
run:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- run: ./your-script.shWithout timezone, GitHub runs schedules in UTC. It runs them at most every 5 minutes, and a run can start late when GitHub is busy.
Related schedules
Cron does not tell you when a job stops
Know when a job on this schedule does not run.
Your job pings Drumbeats when it finishes. If a ping does not arrive on schedule, you get an alert. No SDK, free for up to 50 monitors.
Free for up to 50 monitors · Setup in 60 seconds · No credit card required