Run a cron job every 10 minutes

*/10 * * * * Check it below, then take the line for any of 17 schedulers.

Click to edit · paste a crontab line · hover a field for its values

Every 10 minutes.

 

Nothing to watch out for on Debian / Ubuntu cron.

crontab line
# crontab -e  (runs on the server's clock: UTC)
*/10 * * * *  /path/to/command
Debian / Ubuntu cron RunWisp Server was off Skipped. anacron only catches up cron.daily, weekly and monthly. Runs the most recent missed run at start-up (catch_up = 1) and sends a missed-run alert.A run fails Output is mailed if MAILTO and a mail server work. No output, no mail, whatever the exit code. Marked failed and sent to your alert channels. retry_attempts adds retries.

· sudo runwisp takeover runs your crontab as it is · How RunWisp compares

Details

Upcoming runs
Calendar Every day
Between two dates
Daylight saving

When things go wrong Server off: Skipped
Server was off
Skipped. anacron only catches up cron.daily, weekly and monthly.
Last run still going
Starts another copy on top.
A run fails
Output is mailed if MAILTO and a mail server work. No output, no mail, whatever the exit code.
Time zone
The server's zone. TZ= in a crontab only reaches the command.
Precision
1 minute.

Sources: manpages.debian.org,manpages.debian.org

Other schedulers As written in 10 of 16
  • ✓ cronie */10 * * * * vs RunWisp
  • ✓ BusyBox crond */10 * * * *
  • ↻ systemd timer *-*-* *:00/10:00 UTC systemd timer uses OnCalendar=, not cron lines. vs RunWisp
  • ✓ RunWisp */10 * * * *
  • ✓ Kubernetes CronJob */10 * * * *
  • ≠ Ofelia 0 */10 * * * * Ofelia puts seconds first, so it reads this as: every 10 seconds. vs RunWisp
  • ✓ Dagu */10 * * * * vs RunWisp
  • ✓ PM2 cron_restart */10 * * * * vs RunWisp
  • ≠ Jobber 0 */10 * * * * Jobber puts seconds first, so it reads this as: every 10 seconds. vs RunWisp
  • ✓ GitHub Actions */10 * * * *
  • ✓ GitLab CI schedule */10 * * * *
  • ↻ AWS EventBridge Scheduler cron(*/10 * * * ? *) AWS EventBridge Scheduler takes cron() with 6 fields, a year last, and ? in one day field.
  • ✓ Google Cloud Scheduler */10 * * * *
  • ✓ Jenkins */10 * * * *
  • ↻ Quartz 0 */10 * * * ? Quartz takes 6 or 7 fields, seconds first, with ? in one day field.
  • ↻ Spring @Scheduled 0 */10 * * * * Spring @Scheduled takes exactly 6 fields, seconds first.

✓ works as written · ↻ different syntax · ≠ runs at other times · ? not documented · ✗ can't

Schedulers

Every 10 minutes, in every scheduler

Works as written in 11 of 17. Times are UTC; the checker above takes any zone.

Runs in 2027
52,560
Days with a run
365
Longest gap
10 min
SchedulerLineNotes
Debian / Ubuntu cron ✓ */10 * * * * Works as written.
cronie ✓ */10 * * * * Works as written.
BusyBox crond ✓ */10 * * * * Works as written.
systemd timer ↻ OnCalendar=*-*-* *:00/10:00 UTC systemd timer uses OnCalendar=, not cron lines.
RunWisp ✓ */10 * * * * Works as written.
Kubernetes CronJob ✓ */10 * * * * Works as written.
Ofelia ≠ 0 */10 * * * * Ofelia puts seconds first, so it reads this as: every 10 seconds.
Dagu ✓ */10 * * * * Works as written.
PM2 cron_restart ✓ */10 * * * * Works as written.
Jobber ≠ 0 */10 * * * * Jobber puts seconds first, so it reads this as: every 10 seconds.
GitHub Actions ✓ */10 * * * * Works as written.
GitLab CI schedule ✓ */10 * * * * Works as written.
AWS EventBridge Scheduler ↻ cron(*/10 * * * ? *) AWS EventBridge Scheduler takes cron() with 6 fields, a year last, and ? in one day field.
Google Cloud Scheduler ✓ */10 * * * * Works as written.
Jenkins ✓ */10 * * * * Works as written.
Quartz ↻ 0 */10 * * * ? Quartz takes 6 or 7 fields, seconds first, with ? in one day field.
Spring @Scheduled ↻ 0 */10 * * * * Spring @Scheduled takes exactly 6 fields, seconds first.

✓ works as written · ↻ different syntax · ≠ runs at other times · ? not documented · ✗ can't

RunWisp

Cron runs the line. Nobody tells you how it went.

RunWisp is an open-source cron replacement that ships as a single binary. It reads the same cron line and keeps a record of every run: output, exit code, duration.

crontab
# crontab -e  (runs on the server's clock: UTC)
*/10 * * * *  /usr/local/bin/job.sh
runwisp.toml
[tasks.job]
cron     = "*/10 * * * *"
timezone = "UTC"
run      = '/usr/local/bin/job.sh'
cronRunWisp
The server was off at run time Skipped. anacron only catches up cron.daily, weekly and monthly. Runs the most recent missed run at start-up (catch_up = 1) and sends a missed-run alert.
The last run is still going Starts another copy on top. Queues it. on_overlap = "queue" is the default.
A run fails Output is mailed if MAILTO and a mail server work. No output, no mail, whatever the exit code. Marked failed and sent to your alert channels. retry_attempts adds retries.

Keep your crontab. sudo runwisp takeover runs it where it is and retires cron, crontab -e keeps working, and runwisp service uninstall puts cron back. It needs Linux with systemd; elsewhere, runwisp import cron converts the file. RunWisp doesn't do L, W or #, and it runs on one machine, not a cluster. Moving from cron →

FAQ

Questions

What does */10 * * * * mean?
Every 10 minutes. In 2027 that's 52,560 runs on 365 days. Times are in the scheduler's time zone, usually the server's.
How do I run a job every 10 minutes with a systemd timer?
OnCalendar=*-*-* *:00/10:00 UTC. systemd timer uses OnCalendar=, not cron lines.
How do I run a job every 10 minutes in a Kubernetes CronJob?
*/10 * * * * works as written.
How do I run a job every 10 minutes in GitHub Actions?
*/10 * * * * works as written.
How do I run a job every 10 minutes on AWS EventBridge?
cron(*/10 * * * ? *). AWS EventBridge Scheduler takes cron() with 6 fields, a year last, and ? in one day field.
More
Get started
GPL 3.0 · no accounts · free to self-host

Start in 30 seconds. Ship on your terms.

A single Go binary. If it doesn't earn the disk space, rm it. No account, no signup, no catch.

Install in 30 seconds
curl -fsSL https://get.runwisp.com | sh