Cron expression generator and explainer
Next runs (your local time)
Run your cron jobs on a VPS from $10/month →
The five fields
┌ minute (0–59)
│ ┌ hour (0–23)
│ │ ┌ day of month (1–31)
│ │ │ ┌ month (1–12)
│ │ │ │ ┌ day of week (0–6, Sunday = 0 or 7)
* * * * * command
* means "every", */15 means "every 15", 1-5 is a range and 1,15 a list.
Adding the job
Run crontab -e, add a line like 0 3 * * * /usr/local/bin/backup.sh and save. Check it with crontab -l.
The server's time zone decides when jobs run — usually UTC on a fresh VPS. Check with
timedatectl. The run times above are shown in your browser's time zone.Why didn't my cron job run?
- Cron has a minimal
PATH— use full paths like/usr/bin/python3. - Capture errors: append
>> /var/log/myjob.log 2>&1to the command. - Scripts must be executable (
chmod +x) or called through their interpreter.
FAQ
What does */5 mean in cron?
Every 5 units of that field. In the minute field, */5 runs at :00, :05, :10 and so on.
Is Sunday 0 or 7?
Both work in most cron implementations. This generator treats 7 as Sunday too.
Which time zone does cron use?
The server's system time zone, usually UTC on a new VPS. Check it with timedatectl.
Our pick
Deploy a VPS on Kvantis
Hourly billing, paid in crypto, no KYC. Your server is live in about a minute.
- Plans from $10/month + VAT, billed per hour — destroy anytime
- 32 locations worldwide, IPv4 + IPv6, full root
- BTC, ETH, USDT, USDC, LTC and 30+ coins; just an email to sign up
Disclosure: Kvnthost is run by the team behind Kvantis.