cron expression · plain english
Run a cron job every minute
Fires at the top of every minute — 60 times an hour, 1,440 times a day. Highest-frequency schedule POSIX cron supports without seconds.
beginner
POSIX / Jenkins / Quartz / AWS
* * * * *
run a cron job every minute.
Next 5 fire times
Computed live in your local timezone. The cron expression itself is timezone-agnostic — these times reflect your browser clock.
Cross-system syntax variants
Same intent, different schedulers. Use this table when migrating between systems.
| System | Expression | Note |
|---|---|---|
| Standard cron (POSIX) | * * * * * | supported everywhere — Linux, macOS, BusyBox |
| Jenkins | * * * * * | valid but consider H * * * * to distribute load across executors |
| Quartz (Java) | 0 * * * * ? | 6-field — seconds=0 means top-of-minute |
| AWS EventBridge | rate(1 minute) | rate() preferred over cron() for fixed intervals |
Common pitfalls
- Most logs systems emit 1 line per fire — that's 525,600 lines/year per cron line. Rotate aggressively.
- If your job sometimes takes >60 seconds, two instances can run simultaneously. Use `flock -n /tmp/job.lock` or a daemon-style state machine instead.
- On battery-powered laptops macOS may suppress cron during sleep — wakeup-required jobs need `caffeinate` or a launchd plist with `WakeFromSleep=true`.
Use cases
- Heartbeat ping to uptime monitor
- Sync filesystem watchers that lost their inotify connection
- Time-critical queue draining where 5-min lag is too high
- Forwarding metrics to systems without push protocol support
Translate any cron expression
cronwtf takes any cron string and returns plain-English description plus the next 5 fire times in your timezone. Standard 5-field, Jenkins H, Quartz 6-field — all supported.
Open cronwtf
Related cron schedules
cron twice daily (midnight and noon) · cron on the first day of every month · cron: every 5 minutes · cron every 6 hours (4×/day)