Cronjob.de › Crontab reference › Weekly
Running a cron job once a week
A weekly job needs a time and a day of the week. 0 3 * * 1 runs every Monday at 3:00. For Sunday you put 0 or 7 in the last field.
Meaning
What the expression says exactly
Minute 0 and hour 3 set the time. The last field is the day of the week: 1 for Monday up to 6 for Saturday, 0 or 7 for Sunday. Day of month and month stay *.
The shorthand @weekly stands for 0 0 * * 0, Sunday at midnight. You cannot specify another day or time with it.
The next runs
- Mon, 16 Nov 2026, 03:00
- Mon, 23 Nov 2026, 03:00
- Mon, 30 Nov 2026, 03:00
- Mon, 7 Dec 2026, 03:00
- Mon, 14 Dec 2026, 03:00
Calculated in German time when this page was loaded.
Variants
Similar schedules
0 7 * * 1 |
Mondays at 7 am, for example for a weekly report at the start of work. | Adjust |
0 3 * * 0 |
Sundays at 3 am, for clean-up work at the weekend. | Adjust |
30 22 * * 5 |
Fridays at 22:30, after closing time. | Adjust |
0 3 * * 1,4 |
Twice a week, Mondays and Thursdays. | Adjust |
0 3 1-7 * 1 |
Only on the first Monday of the month. That is how it works at Cronjob.de, but not on Linux, see below. | Adjust |
Watch out for
Typical mistakes with this interval
Day of week and day of month together
If both fields hold values, Linux cron combines them with OR: 0 3 1-7 * 1 runs there on days 1 to 7 and on every Monday as well. At Cronjob.de both fields have to match, so the job only runs on the first Monday of the month.
A missed run is gone for a whole week
If the run fails, the next attempt only comes seven days later. For weekly backups or reports a notification when something goes wrong is worth it. Cronjob.de offers email alerts and automatic retries from Plus.
Monday is 1, not 0
In the crontab counting starts with Sunday as 0. In some programming languages, however, Monday is 0. Anyone copying values from there shifts the job by one day.
Own server
How it looks in the crontab
Open with crontab -e and add one line. The first starts a PHP script directly, the second calls an address. Replace paths and address with your own.
0 3 * * 1 /usr/bin/php /pfad/zu/skript.php >/dev/null 2>&1
@weekly curl -fsS https://ihre-domain.de/cron.php >/dev/null
Without your own server
How it works at Cronjob.de
No command-line access needed: you enter the address of your script and click the schedule together. You can also type the expression above directly, or describe the interval in one sentence and have it suggested. Cronjob.de uses German time.
Five cronjobs are free forever, on the five-minute grid. One-minute intervals start with Plus. How to prepare a script on shared web space for this is explained in the web space guide.
FAQ
Common questions
- What does
@weeklymean? - The same as
0 0 * * 0: every Sunday at midnight. - How do I run a job every two weeks?
- Not with one crontab line alone, because cron does not count calendar weeks. The usual way is a weekly run where the script checks whether the calendar week is even or odd and only works in every other one.
- Which time does the day of the week follow?
- The time zone of the machine. Monday 0:30 German time is still Sunday on a server set to UTC. Cronjob.de uses German time.
Create your cronjob now
Create an account, enter the address, click the schedule. Five cronjobs are free forever, the first 14 days run on the Unlimited plan.
Start for free To the crontab generatorMore schedules
- Every minute
* * * * * - Every 5 minutes
*/5 * * * * - Every 10 minutes
*/10 * * * * - Every 15 minutes
*/15 * * * * - Every 30 minutes
*/30 * * * * - Hourly
0 * * * * - Daily
0 3 * * * - Weekdays
0 8 * * 1-5 - Monthly
0 3 1 * *
Also useful