The cron expression for "every 5 minutes" is */5 * * * *. Below is every common interval from every minute to yearly — with copy-paste expressions and setup instructions for Linux crontab, GitHub Actions, and AWS CloudWatch.
| Interval | Cron Expression | Runs Per Hour | Runs Per Day |
|---|---|---|---|
| Every minute | * * * * * | 60 | 1,440 |
| Every 2 minutes | */2 * * * * | 30 | 720 |
| Every 5 minutes | */5 * * * * | 12 | 288 |
| Every 10 minutes | */10 * * * * | 6 | 144 |
| Every 15 minutes | */15 * * * * | 4 | 96 |
| Every 20 minutes | */20 * * * * | 3 | 72 |
| Every 30 minutes | */30 * * * * | 2 | 48 |
| Interval | Cron Expression | Runs Per Day | Times |
|---|---|---|---|
| Every hour | 0 * * * * | 24 | 12:00 AM, 1:00 AM, 2:00 AM... |
| Every 2 hours | 0 */2 * * * | 12 | 12:00 AM, 2:00 AM, 4:00 AM... |
| Every 3 hours | 0 */3 * * * | 8 | 12:00 AM, 3:00 AM, 6:00 AM... |
| Every 4 hours | 0 */4 * * * | 6 | 12:00 AM, 4:00 AM, 8:00 AM... |
| Every 6 hours | 0 */6 * * * | 4 | 12:00 AM, 6:00 AM, 12:00 PM, 6:00 PM |
| Every 8 hours | 0 */8 * * * | 3 | 12:00 AM, 8:00 AM, 4:00 PM |
| Every 12 hours | 0 */12 * * * | 2 | 12:00 AM, 12:00 PM |
| Interval | Cron Expression | When It Runs |
|---|---|---|
| Daily at midnight | 0 0 * * * | 12:00 AM every day |
| Daily at 9 AM | 0 9 * * * | 9:00 AM every day |
| Weekdays at 9 AM | 0 9 * * 1-5 | 9:00 AM Monday through Friday |
| Weekends at 10 AM | 0 10 * * 0,6 | 10:00 AM Saturday and Sunday |
| Every Monday at 9 AM | 0 9 * * 1 | 9:00 AM every Monday |
| Every Friday at 5 PM | 0 17 * * 5 | 5:00 PM every Friday |
| Monthly (1st at midnight) | 0 0 1 * * | 12:00 AM on the 1st |
| Quarterly | 0 0 1 1,4,7,10 * | 12:00 AM on Jan 1, Apr 1, Jul 1, Oct 1 |
| Yearly | 0 0 1 1 * | 12:00 AM on January 1st |
Need a custom interval? Build it visually and copy in one click.
Open Cron GeneratorThe most common cron implementation. Open your crontab with crontab -e and add a line:
*/5 * * * * /home/user/scripts/backup.sh — runs backup.sh every 5 minutes0 9 * * 1-5 /usr/local/bin/report.py — runs report.py at 9 AM on weekdayscrontab -l to list all current cron jobsAdd a schedule trigger to your workflow YAML:
on:, add schedule: with a - cron: entry- cron: '*/5 * * * *' for every 5 minutesAWS uses a slightly different syntax with a cron() wrapper and 6 fields (adds year):
cron(0/5 * * * ? *) — every 5 minutescron(0 9 ? * MON-FRI *) — weekdays at 9 AM UTC? (no specific value) in either day-of-month or day-of-week — one must be ?| Feature | Linux Crontab | GitHub Actions | AWS EventBridge | Kubernetes CronJob |
|---|---|---|---|---|
| Fields | 5 (min-dow) | 5 (min-dow) | 6 (min-dow-year) | 5 (min-dow) |
| Timezone | System TZ | ✗ UTC only | ✗ UTC only | ~Configurable (v1.25+) |
| Minimum interval | ✓ Every minute | ~Every 5 minutes | ✓ Every minute | ✓ Every minute |
| Day-of-week start | 0=Sunday | 0=Sunday | SUN-SAT names | 0=Sunday |
| ? character | ✗ Not supported | ✗ Not supported | ✓ Required in one day field | ✗ Not supported |
| Shorthand (@daily) | ✓ Supported | ✗ Not supported | ✗ Not supported | ✗ Not supported |
Running a cron job every 5 minutes means 288 executions per day. Before you set this interval, consider:
flock to prevent overlap.For real-time needs (sub-minute), cron is the wrong tool. Use a message queue, event stream, or webhook-based architecture instead.
Every cron interval, one click to copy. Or build a custom schedule visually.
Open Cron Generator