Cron for twice a day
Quick answer
0 0,12 * * * runs twice a day — at 00:00 and 12:00. The comma lists both hours. TryDevSnip Cron Helper explains it and previews the next fires locally — not uploaded to our servers for processing.
Cron expression: 0 0,12 * * *
Twice-daily is common for syncs and reports. Change the hours (for example 6,18) to shift the two run times to suit your timezone.
Paste this cron expression into your crontab, or into the schedule field of whichever runner you use — the five-field syntax below is shared by cron, most CI schedulers, and container orchestrators. The sections that follow break the cron job down field by field and flag the timing edge cases that apply to this particular schedule.
What each field means here
A standard crontab line has five fields, read left to right. This is what each one is set to in0 0,12 * * *:
| Field | Value | Allowed range | Meaning here |
|---|---|---|---|
| Minute | 0 | 0–59 | At minute 0 |
| Hour | 0,12 | 0–23 | 0, 12 |
| Day of month | * | 1–31 | Every day of the month |
| Month | * | 1–12 | Every month |
| Day of week | * | 0–6 (Sunday = 0) | Every day of the week |
Before you ship this schedule
- Cron runs in the scheduler’s timezone, not the viewer’s. GitHub Actions always runs schedules in UTC; Kubernetes CronJob accepts a timeZone field on newer API versions; a plain crontab follows the host.
- Some engines (Quartz, and several managed cloud schedulers) prepend a seconds field, making the same schedule a six-field expression. Pasting a five-field string into a six-field slot silently changes when it fires.
Using it outside a crontab
GitHub Actions and Kubernetes CronJob both accept this same five-field syntax, so the expression carries over unchanged — what changes is the clock it runs against:
| Where | Same expression? | Timezone |
|---|---|---|
| crontab | Yes | Host timezone |
| GitHub Actions | Yes | Always UTC |
| Kubernetes CronJob | Yes | UTC unless timeZone is set |
More schedules: daily at noon · the first of the month · every 6 hours · every 12 hours · yearly jobs · every 5 minutes · every 15 minutes · every 30 minutes · hourly · midnight · weekdays 9am · daily 2am · weekly · monthly · full cheat sheet
Frequently asked questions
What does 0 0,12 * * * mean?
0 0,12 * * * runs twice a day — at 00:00 and 12:00. The comma lists both hours. TryDevSnip Cron Helper explains it and previews the next fires locally — not uploaded to our servers for processing.
Are next run times in my local timezone?
Cron Helper previews next runs in your browser’s local timezone. Many production schedulers use UTC — always compare before changing live jobs.
Is my cron expression uploaded?
No. Explanation and next-run math run client-side on TryDevSnip. Expressions are not uploaded to our servers for processing.