// how it works
How 0 0 * * 0 Works
0 0 * * 0 fires once per week, at midnight on Sunday. 0 in the weekday field represents Sunday (both 0 and 7 mean Sunday in most cron implementations). The expression is equivalent to the shorthand @weekly.
Common uses: weekly database backups, weekly analytics reports, rotating log files, weekly newsletter sends.
Field Breakdown
| Field | Value | Meaning |
|---|---|---|
| Minute | 0 | At minute zero |
| Hour | 0 | At midnight |
| Day of month | * | Every day of month |
| Month | * | Every month |
| Weekday | 0 | Sunday only |
// next scheduled runs (UTC)
Next 10 Run Times
Approximate run times starting from the current date. Open in the builder to see exact run times in your timezone.
Sun 2026-03-22 00:00
Sun 2026-03-29 00:00
Sun 2026-04-05 00:00
Sun 2026-04-12 00:00
Sun 2026-04-19 00:00
Sun 2026-04-26 00:00
Sun 2026-05-03 00:00
Sun 2026-05-10 00:00
Sun 2026-05-17 00:00
Sun 2026-05-24 00:00
// copy-paste ready examples
Platform Examples
Linux / Unix crontab
0 0 * * 0 /path/to/script.sh
# or:
@weekly /path/to/script.sh
GitHub Actions
on:
schedule:
- cron: '0 0 * * 0' # Sunday midnight UTC
AWS EventBridge
cron(0 0 ? * SUN *)
Kubernetes CronJob
spec:
schedule: "0 0 * * 0"
node-cron (Node.js)
cron.schedule('0 0 * * 0', () => { ... });
APScheduler (Python)
scheduler.add_job(fn, 'cron', hour=0, minute=0, day_of_week='sun')
// related expressions
Related Cron Expressions
// frequently asked questions
FAQ
What is @weekly in cron?
@weekly is an alias for 0 0 * * 0 — it runs once per week at midnight on Sunday.
Is 0 in the weekday field Sunday or Monday?
0 is Sunday. Monday is 1. Most cron implementations also accept 7 for Sunday.
How do I schedule a job every Saturday instead?
Replace the weekday field value: 0 0 * * 6 runs at midnight every Saturday (6=Saturday).
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 →