🧪

Cron Expression Tester

Test a cron expression and get human-readable description.

Input
Cron Description

📖 What is Cron Expression Tester?

Cron Tester validates cron expressions and shows their next scheduled run times. Paste a cron expression and see a human-readable description plus the next 5-10 execution times. Use it to verify cron schedules before deploying to production, debug timing issues, or learn cron syntax. Everything runs in your browser.

💡 Example

Input
*/15 9-17 * * 1-5
Output
Every 15 minutes, between 9:00 AM and 5:59 PM, Monday through Friday Next: Mon 9:00, Mon 9:15, Mon 9:30...

🛠️ Common Use Cases

  • Validating cron expressions before adding them to crontab
  • Previewing next run times for scheduled jobs
  • Debugging cron schedules that fire at unexpected times
  • Testing CI/CD pipeline schedules (GitHub Actions, GitLab CI)
  • Verifying cloud scheduler expressions (AWS EventBridge, Google Cloud Scheduler)

📝 Cron Fields

  • Field 1: Minute (0-59)
  • Field 2: Hour (0-23)
  • Field 3: Day of month (1-31)
  • Field 4: Month (1-12 or JAN-DEC)
  • Field 5: Day of week (0-7, where 0 and 7 = Sunday, or SUN-SAT)
  • * = every, */n = every nth, a-b = range, a,b = list

⚠️ Common Mistakes

  • Day of week numbering — 0 and 7 both mean Sunday, but some systems differ. Test to confirm.
  • Forgetting timezone — cron runs in the server's timezone. A job set for 9 AM runs at 9 AM server time, not your local time.
  • Using both day-of-month and day-of-week — most cron implementations OR these fields, meaning the job runs on matching days of month OR matching days of week.

❓ Frequently Asked Questions

How many fields does a cron expression have?
Standard cron has 5 fields: minute, hour, day of month, month, day of week. Some systems (like Quartz) add a seconds field at the beginning.
What timezone does cron use?
Cron uses the server's system timezone by default. In cloud services, you can usually configure the timezone explicitly.
How do I run a job every 5 minutes?
Use */5 * * * * — the */5 in the minute field means every 5th minute.
Is my data private?
Yes — all processing runs entirely in your browser. Your data is never sent to any server.
Is this tool free?
Completely free — no login, no usage limits, works offline once loaded.
Yes — completely free, no login required, no usage limits.
Is my data private?
Yes — all processing runs in your browser. Your data is never sent to any server.
Does it work offline?
Yes — once the page is loaded, the tool works without an internet connection.
🔒
Your data stays private. All processing happens entirely in your browser using JavaScript. Nothing is ever sent to our servers. You can even use this tool offline after the page loads.