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*/30Every 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 timerOnCalendar=*:0/30
Kubernetes CronJobschedule: "*/30 * * * *"
AWS EventBridgecron(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: */30 means 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

Explore More