Free developer tool

Cron expression explainer

Type a cron schedule and see what it means in plain English, plus the next five times it will run. Catches invalid values before they reach production.

Presets:

Standard 5-field cron (Linux crontab, Kubernetes CronJob, GitHub Actions). Times are in the scheduler's time zone; GitHub Actions uses UTC.

Cron syntax in one table

FieldAllowed valuesExample
Minute0 to 59*/15 = every 15 minutes
Hour0 to 239-17 = 9 AM through 5 PM
Day of month1 to 311 = the first of the month
Month1 to 12 or JAN to DEC*/3 = every quarter
Day of week0 to 7 or SUN to SAT (0 and 7 are Sunday)1-5 = Monday to Friday

Special characters: * means every value, , separates a list, - defines a range and / sets a step. Shortcuts such as @daily, @hourly and @weekly are also accepted.

Common schedules

  • */5 * * * *: every five minutes.
  • 0 * * * *: at the top of every hour.
  • 0 0 * * *: every day at midnight.
  • 30 8 * * 1-5: weekdays at 8:30.
  • 0 0 1 * *: on the first day of every month.
  • 0 3 * * 0: every Sunday at 3:00.

The day-of-month and day-of-week trap

If you set both day fields, standard cron runs the job when either matches, not both. 0 9 1 * 1 runs on the first of the month and on every Monday. The explainer calls this out. To run only on a Monday that falls on the first, schedule it on Mondays and check the date inside the job.

Time zones

Cron runs in the scheduler's time zone. A Linux crontab uses the server's zone; Kubernetes CronJobs default to the controller's zone unless you set spec.timeZone; GitHub Actions schedules always run in UTC. The next-run times on this page are shown in your browser's local time.

FAQ

Does this support 6-field cron with seconds?

No. It explains standard 5-field cron, used by crontab, Kubernetes and GitHub Actions. Quartz and Spring use a 6- or 7-field format with seconds.

Why does GitHub Actions run my schedule late?

Scheduled workflows can be delayed during periods of high load, especially at the top of the hour. Pick an odd minute such as 17 to reduce delays.

What does */15 mean?

Every 15th value in the field's range. In the minute field it means minutes 0, 15, 30 and 45.

Is it free?

Yes. All tools at ryzlabs.com/tools are free with no sign-up.

Ryz Labs

Need senior DevOps engineers on your team?

Ryz Labs places senior DevOps, SRE and platform engineers who work in your stack and report to your leads, on US business hours.

Start a conversation →