Weekly
0 20 * * 0
Run once a week, Sunday at 20:00.
This preview is live: the table below shows the actual next run times for 0 20 * * 0 in your time zone, recomputed in your browser. Change the expression, dialect, or zone to experiment, then copy the result.
What 0 20 * * 0 means
0 20 * * 0 fires Sunday at 8pm, a popular "prepare for the week" slot. It is late enough that the weekend is effectively over but early enough to set everything up before Monday morning: the upcoming week's data, the refreshed reports, the pre-staged jobs.
Sunday evening (day-of-week 0, hour 20) is also a quiet maintenance window for business systems, with the added benefit that anything which runs long still has all of Sunday night to finish before the working week starts.
Field-by-field breakdown
Unix cron has five fields. Here is what each one is doing in this expression:
| Field | Value | Meaning |
|---|---|---|
| Minute | 0 | minute = 0 |
| Hour | 20 | hour = 20 |
| Day of month | * | every day-of-month |
| Month | * | every month |
| Day of week | 0 | day-of-week = 0 |
Every Sunday at 8pm in every scheduler
The same cadence written for the seven cron dialects you are most likely to meet. Copy the line for the system you target, the field count and day-of-week numbering differ between them.
| Scheduler | Expression | Copy |
|---|---|---|
| Unix / crontab | 0 20 * * 0 | |
| GitHub Actions | 0 20 * * 0 | |
| Kubernetes CronJob | 0 20 * * 0 | |
| Vercel Cron | 0 20 * * 0 | |
| Quartz | 0 0 20 ? * 0 * | |
| Spring | 0 0 20 ? * 0 | |
| AWS EventBridge | 0 20 ? * 0 * |
When you would use 0 20 * * 0
- Staging the upcoming week's data and reports.
- Sunday-night reindexes ahead of Monday traffic.
- Weekly model retraining or recomputation.
The gotcha worth knowing
Pinning to a local 20:00 means DST shifts the absolute time twice a year. For a job that hands off to a Monday-morning process, run it in UTC so the gap stays constant.
People also search for
0 20 * * 0 FAQ
What does the cron expression 0 20 * * 0 mean?
0 20 * * 0 means: Run once a week, Sunday at 20:00. 0 20 * * 0 fires Sunday at 8pm, a popular "prepare for the week" slot. It is late enough that the weekend is effectively over but early enough to set everything up before Monday morning: the upcoming week's data, the refreshed reports, the pre-staged jobs.
How do I write "every sunday at 8pm" in GitHub Actions?
Use 0 20 * * 0 in the schedule's cron field. Pinning to a local 20:00 means DST shifts the absolute time twice a year. For a job that hands off to a Monday-morning process, run it in UTC so the gap stays constant.
How do I write "every sunday at 8pm" for AWS EventBridge?
EventBridge uses six fields with a required year and a ? placeholder in one day field: 0 20 ? * 0 *. Wrap it as cron(0 20 ? * 0 *) in the console or CloudFormation.
What is the Quartz equivalent of 0 20 * * 0?
Quartz is seconds-first with a trailing year, so the equivalent is 0 0 20 ? * 0 *. Remember Quartz numbers Sunday as 1, the opposite of Unix.
Related cron patterns
More cron tools
Browse the full set of cron pattern pages, or jump to the interactive tools: the cron expression builder for designing a schedule from scratch, the cron cheat sheet for a side-by-side reference, the cron timezone translator for moving a schedule between zones and dialects, and the GitHub Actions cron picker for DST-stable CI schedules.