Free Cron Expression Explainer

Paste a cron expression below to see exactly what it means in plain English, plus its next 10 scheduled run times. Not sure what timezone your cron job actually runs in? Use the timezone selector below to check.

Examples
No result yet — press Explain.

About the Cron Expression Explainer

Cron syntax is dense on purpose — five terse fields pack in a full recurrence rule — which means reading someone else's cron expression (or one you wrote six months ago) usually means mentally decoding each field one at a time. This tool does that decoding for you: paste an expression and it returns a plain-English sentence describing exactly when it runs, plus the next 10 actual run times so you can sanity-check it before deploying.

Need to go the other direction — describe a schedule in plain English and get the cron syntax? Use the Cron Generator. For a deeper reference on cron field syntax itself, see the complete cron expression guide.

Why the Timezone Matters

A cron expression has no timezone baked into it. 0 9 * * * means "9 AM in whatever timezone the machine running it is set to" — on a UTC server that's 9:00 UTC, which is 2:30 PM in India or 4 AM Pacific time. This is one of the most common sources of "why did my cron job run at the wrong time" bugs. Use the timezone selector above to see what a given expression actually means in a specific zone, and read the cron timezone handling guide for how to configure this correctly in Linux crontab, Docker, and cloud schedulers.

FAQ

Is this cron expression explainer free?
Yes — completely free, with no signup required and no limit on how many expressions you can check.
Does this support 6-field cron expressions with seconds?
Yes. Both standard 5-field cron (minute hour day-of-month month day-of-week) and 6-field cron with a leading seconds field (used by Quartz, Spring, and node-cron) are supported.
Why do the next run times change when I switch the timezone?
A cron expression has no timezone of its own — it runs in whatever timezone the machine or scheduler that executes it is configured with. "0 9 * * *" means 9 AM server time, which could be 9 AM UTC on one server and 9 AM IST on another, producing completely different actual moments. Switching the timezone dropdown shows you what the same expression means as a real-world time in that zone.
Is this different from the Cron Generator?
Yes — they run in opposite directions. The Cron Generator turns a plain-English description into a cron expression; this tool takes a cron expression you already have and explains what it means in plain English, plus shows you exactly when it will next run.