Cron expression generator for Next.js & Supabase. In your browser.
Build five-field cron, inspect the next five nominal runs in your zone and export Vercel or pg_cron configuration. No jobs are scheduled — free, no sign-up.
Loading the tool…
No deployment, SQL execution or scheduling. Numeric five-field subset; five nominal times within eight years. Vercel UTC is fixed; pg_cron preview assumes the selected worker zone.
Provider differences — verified 2026-10-09
Sources below document each difference. Review monthly, next due 2026-11-09. Displaying a zone does not change provider configuration.
| Feature | Vercel Cron | Supabase / pg_cron |
|---|---|---|
| Target | HTTP route in vercel.json | SQL registered with cron.schedule |
| Zone | Always UTC | Worker cron.timezone; upstream default GMT |
| Day fields | One day field must be * | Restricted day fields combine with OR |
| Extra syntax | Five numeric fields; no names | Version-dependent extras; not generated here |
| Precision | Hobby daily/per-hour; paid plans per-minute | Database worker timing; long jobs affect delivery |
How to use
- Choose Vercel Cron or Supabase pg_cron and set five numeric fields or a preset.
- Choose your IANA display zone. Vercel schedules in UTC; for pg_cron select the actual worker zone.
- Explain and generate cron. Review the next five times and provider limits before using the configuration in your environment.
Reference documentation
Frequently asked questions
Is this free, and does my input leave the browser?
Free, no sign-up. Computation, copy and downloads stay in your browser. There is no upload or processing endpoint. Usage analytics include only a fixed tool name and action, never your input or result.
Does my time zone change Vercel's schedule?
No. Vercel always uses UTC. Your zone changes only displayed dates; the expression is never silently converted. A fixed UTC hour can shift on your local clock at daylight-saving changes.
How is pg_cron different?
Vercel calls a route with HTTP. pg_cron runs SQL and uses worker cron.timezone, whose upstream default is GMT. Session TimeZone alone does not set the worker zone. Verify your Supabase extension setup and installed version.
What syntax is supported?
Five numeric fields, *, lists, ranges and positive steps. Vercel rejects names and simultaneous restrictions on day-of-month/day-of-week. pg_cron combines restricted day fields with OR. Version-dependent pg_cron seconds intervals and last-day syntax are outside this workspace's common subset.
Are these exact runs, and does Hobby accept every expression?
They are nominal instants, not delivery guarantees. Verified 2026-10-09: Hobby is limited to once daily with per-hour precision; Pro and Enterprise support per-minute schedules. Review current provider limits before deploying.
How are impossible dates and DST handled?
cron-parser uses IANA zone rules and looks for five future occurrences within eight years. Impossible dates or insufficient occurrences produce an error. Confirm local pg_cron behavior against your worker version around gaps and repeated hours.
Related tools
All free toolsSupabase JWT decoder
Decode a JWT locally and inspect Supabase role, aal, amr, metadata and expiry. Understand auth.uid() and auth.jwt() in RLS. Free, no sign-up.
PostgreSQL SQL formatter
Format PostgreSQL queries, Supabase policies and PL/pgSQL function definitions locally. Check basic syntax without running SQL. Free, no sign-up.
Next.js env & secrets generator
Generate browser-random secrets and a Next.js env template for Supabase and Stripe. Separate NEXT_PUBLIC_ values from server secrets. Free, no sign-up.