All Cron Schedules
Cron Every 30 Minutes
Run a cron job every 30 minutes:
*/30 * * * *
Understanding the Expression
The cron expression */30 * * * * breaks down as follows:
| Field | Value | Meaning |
|---|---|---|
| Minute | */30 | Every 30 minutes |
| Hour | * | Every hour |
| Day of month | * | Every day of the month |
| Month | * | Every month |
| Day of week | * | Every day of the week |
Example Usage
Basic crontab entry
*/30 * * * * /path/to/your/script.sh
With output logging
*/30 * * * * /path/to/script.sh >> /var/log/script.log 2>&1
With monitoring
*/30 * * * * /path/to/script.sh && curl -fsS https://cronsignal.io/ping/YOUR_CHECK_ID
Common Use Cases for Every 30 Minutes
- Real-time monitoring: Check system health and service availability
- Queue processing: Process background job queues frequently
- Cache warming: Keep caches fresh with regular updates
- Metrics collection: Gather application and infrastructure metrics
Platform Equivalents
The same schedule expressed across common platforms and schedulers:
| Platform | Syntax |
|---|---|
| Linux crontab | */30 * * * * |
| GitHub Actions | - cron: '*/30 * * * *' |
| systemd timer | OnCalendar=*:0/30 |
| Kubernetes CronJob | schedule: "*/30 * * * *" |
| AWS EventBridge | cron(0/30 * * * ? *) |
Timezone Considerations
Every-30-minute jobs fire at :00 and :30 of every hour. Timezone-independent, but requires accurate system clock.
Common Mistakes
- Two fixed runs per hour:
*/30means minutes 0 and 30 — not a sliding 30-minute window from start. - Stagger multiple jobs: Offset with
5/30(fires :05 and :35) to avoid minute-0 contention with other jobs. - AWS EventBridge:
cron(0/30 * * * ? *)— 6-field format with?for day-of-week.
Monitor this schedule
Get alerted when your cron job doesn't run.
Sign up with Google
or
3 checks free. No credit card required.