/ cron expressions / every-30-minutes
// cron expression reference

Cron Expression Every 30 Minutes*/30 * * * *

*/30 * * * *

Plain English: At every 30th minute — at :00 and :30 past every hour, every day.

Try it in the Builder →

How */30 * * * * Works

*/30 * * * * fires twice per hour, at minute 0 and minute 30. This is equivalent to writing 0,30 * * * *. Many developers use this for half-hourly report generation, data syncs, or backup snapshots.

Note: */30 and 0,30 produce the same result. Either works.

Field Breakdown

FieldValueMeaning
Minute*/30Every 30th minute (0 and 30)
Hour*Every hour
Day of month*Every day
Month*Every month
Weekday*Every day of week

Next 10 Run Times

Approximate run times starting from the current date. Open in the builder to see exact run times in your timezone.

00:00 00:30 01:00 01:30 02:00 02:30 03:00 03:30 04:00 04:30

Platform Examples

Linux / Unix crontab
*/30 * * * * /path/to/script.sh
GitHub Actions
on:
  schedule:
    - cron: '*/30 * * * *'
AWS EventBridge
cron(*/30 * * * ? *)
Kubernetes CronJob
spec:
  schedule: "*/30 * * * *"
node-cron (Node.js)
cron.schedule('*/30 * * * *', () => { ... });
APScheduler (Python)
scheduler.add_job(fn, 'cron', minute='*/30')

Related Cron Expressions

FAQ

What does */30 mean in cron?
*/30 in the minute field means every 30 minutes — at minute 0 and minute 30 of every hour.
Is */30 * * * * the same as 0,30 * * * *?
Yes, they are identical. */30 is shorthand for listing 0 and 30 explicitly.
How do I run a cron job twice a day?
For twice a day (e.g. noon and midnight), use 0 0,12 * * *. For every 12 hours, use 0 */12 * * *.

Build or explain any cron expression

Use the free visual builder — paste an expression for a plain-English explanation, or click your way to a schedule. See the next 10 run times. No login.

Open CronBuilder →