What does */30 * * * * mean?
The step value */30 in the minute field produces the minute set {0, 30} — exactly twice per hour. Combined with * wildcards for all other fields, the job runs at the top of every hour and at the half-hour mark, continuously. This schedule fires 48 times per day.
Half-hourly cron jobs suit batch synchronisation tasks where 30-minute data lag is acceptable: syncing CRM contacts from an external API, refreshing product inventory counts, generating 30-minute analytics windows, or dispatching scheduled email digests at predictable half-hour intervals.