At a glance
See it on a calendar
UTC · no runs in windowNext runs
Use it in
# /etc/crontab @monthly user /usr/local/bin/your-script.sh
Field by field
Variations
What does @monthly mean?
The cron expression @monthly runs at 12:00 am, on day 1 of the month. Cron expressions have five fields — minute, hour, day of month, month, and day of week — separated by spaces. Each field controls one piece of the schedule.
When you’d use this
This schedule is a common fit for jobs that need to run on this schedule. Paste it into your crontab, a node-cron call, a Kubernetes CronJob manifest, or a GitHub Actions workflow — the snippets above are ready to copy.
Gotchas
Cron runs in the system’s timezone unless you set TZ or schedule in UTC. Missed runs are not retroactively executed by standard cron — use anacron or systemd timers with Persistent=true if you need catch-up. Day-of-month and day-of-week combine with OR semantics in most cron implementations, which can be surprising.