Interval Schedules

Cron Every 10 Days at Midnight – 0 0 */10 * * Guide

The expression 0 0 */10 * * runs at 00:00 UTC on days 1, 11, 21, and 31 of each month. The */10 step starts at day 1 and increments by 10 within the 1–31 range, so execution lands on the 1st, 11th, 21st, and 31st. In months with fewer than 31 days the final run is skipped, meaning the gap between the 21st and the next month's 1st can be 7–11 days depending on the month.

Cron Expression
0 0 */10 * *
0
Minute
(0-59)
0
Hour
(0-23)
*/10
Day of Month
(1-31)
*
Month
(1-12)
*
Day of Week
(0-6)

How It Works

The expression 0 0 */10 * * runs at 00:00 UTC on days 1, 11, 21, and 31 of each month. The */10 step starts at day 1 and increments by 10 within the 1–31 range, so execution lands on the 1st, 11th, 21st, and 31st. In months with fewer than 31 days the final run is skipped, meaning the gap between the 21st and the next month's 1st can be 7–11 days depending on the month.

Common Use Cases

  • Rotating API keys or access tokens on a 10-day cycle to limit credential exposure windows
  • Generating and emailing decade-level sales or analytics summary reports to stakeholders
  • Triggering a partial database vacuum or index maintenance job that is too heavy to run daily but must not wait a full month
  • Archiving or purging temporary build artifacts and log batches that accumulate over roughly 10-day sprints

Monitor a Job on This Schedule

Writing the 0 0 */10 * * schedule is only half the job. Cron fires silently — if the run is skipped, the server is down, or the script fails, nothing tells you. A heartbeat monitor closes that gap: your job pings a URL on success, and you get an alert the moment an expected run goes missing. CronJobPro can run this schedule for you as an HTTP job, or watch a job you run elsewhere (cron, CI, Kubernetes) with a dead-man's-switch check.

Preview the next run times for 0 0 */10 * *

Schedule This Cron Job Now

Create a free CronJobPro account and use 0 0 */10 * * to schedule HTTP requests automatically — with monitoring, retries, and notifications built in.

Frequently Asked Questions

What does 0 0 */10 * * mean in cron?

The expression 0 0 */10 * * runs at 00:00 UTC on days 1, 11, 21, and 31 of each month. The */10 step starts at day 1 and increments by 10 within the 1–31 range, so execution lands on the 1st, 11th, 21st, and 31st. In months with fewer than 31 days the final run is skipped, meaning the gap between the 21st and the next month's 1st can be 7–11 days depending on the month.

How do I use this cron expression?

On Linux/macOS, edit your crontab with crontab -e and add:
0 0 */10 * * /path/to/your/script.sh
Or use CronJobPro to schedule HTTP requests with this expression — no server required.

What timezone does cron use?

By default, cron uses the system timezone. CronJobPro lets you set a specific timezone per job, so your schedules are predictable regardless of server location.

Cron Every 10 Days at Midnight – 0 0 */10 * * Guide | CronJobPro