Kubernetes CronJob Validator

Validate Kubernetes CronJob schedule expressions online. Check your K8s cron syntax, get next run times in UTC, and see common errors. Supports standard 5-field cron for Kubernetes CronJobs.

Kubernetes CronJobs use standard 5-field Unix cron syntax in the spec.schedule field. By default, all times are in UTC. Kubernetes 1.27+ supports a timeZone field. K8s does not support @shorthand notation (@daily, @hourly) — you must use the full 5-field expression.

FAQ

  • Does Kubernetes support @daily or @hourly in CronJobs?

    No. Kubernetes CronJobs only support standard 5-field cron expressions. Use 0 0 * * * for daily or 0 * * * * for hourly instead of @daily or @hourly.

  • What timezone does Kubernetes CronJob use?

    By default, Kubernetes CronJobs run in UTC. Starting from Kubernetes 1.27, you can set the timeZone field in the CronJob spec to use a specific timezone (e.g., "America/New_York").

  • Why does my K8s CronJob not run at the expected time?

    The most common cause is UTC vs local time confusion. K8s schedules run in UTC by default. For example, "0 9 * * *" means 9 AM UTC, not 9 AM in your local timezone. Set the timeZone field if you need local time.

  • How do I prevent overlapping K8s CronJob runs?

    Set concurrencyPolicy to "Forbid" in your CronJob spec to prevent concurrent runs. You can also use startingDeadlineSeconds and successfulJobsHistoryLimit to manage job lifecycle.