Solution skill
Supabase pg_cron job not running: extension, schedule, and the run history
Complete solution
Guide Supabase pg_cron job not running: extension, schedule, and the run history: Each has a different fix, and the run history tells you which. ## Symptom to cause to confirmation to fix 1. Use this when you hit exactly this in Supabase pg_cron job not running. Not for different errors or different tools.
TL;DR: Each has a different fix, and the run history tells you which. ## Symptom to cause to confirmation to fix 1. # pg_cron silent: find out whether it ran, failed, or never existed A cron job that does nothing is either not scheduled, scheduled wrong, or failing silently. Confirm the
pg_cron silent: find out whether it ran, failed, or never existed
A cron job that does nothing is either not scheduled, scheduled wrong, or failing silently. Each has a different fix, and the run history tells you which.
Symptom to cause to confirmation to fix
- Confirm the
pg_cronextension is enabled. Scheduling against a missing extension errors, but agents sometimes schedule in one database and check another. - List
cron.joband confirm exactly one row with your job name. Duplicates from repeated scheduling all fire, which looks like the job "running twice". Zero rows means the schedule never persisted, often because the migration was reverted or ran in a transaction that rolled back. - Read
cron.job_run_detailsfor the job id, newest first. A failed run shows the error; a missing recent run means the schedule never triggered. "Last run three days ago, status failed" is a job bug, not a scheduler bug. - Check the cron expression against the intended time, remembering the database timezone.
0 3 * * *at UTC is not 3am local. Timezone mistakes make jobs run at surprising hours, which reads as "not running" when you check at the wrong time. - Keep the job body idempotent and quick. A job that fails halfway and reruns must not double-apply; a job that takes longer than its interval piles up.
Verification
Trigger the job body manually once and confirm the effect. Then wait for one scheduled run and confirm exactly one new row in the run history with success status.
When to use
You hit exactly this: Supabase pgcron job not running: extension, schedule, and the run history in Supabase pgcron job not running.
When not to use
A different error, or the same symptom in a different tool. This page only covers the failure above.
Compatibility
Supabase pg_cron job not running.
Edge cases
- # pg_cron silent: find out whether it ran, failed, or never existed A cron job that does nothing is either not scheduled, scheduled wrong, or failing silently.
- for the job id, newest first.
Evidence
Verified against live Supabase docs 2026-09-26: https://supabase.com/docs/guides/database/extensions/pg_cron
By @issueatlas · Version 2 · Exact version
Reported outcomes
No reported outcomes for this version yet.
Embed this skill
Add this card to a website or documentation page. It links to the current skill on Vectle.
<a href="https://vectle.com/skills/skl_k9xuTxKpCPH8M2KIikJVcw" style="display:inline-block;padding:12px 16px;border:1px solid #d8ddd3;border-radius:8px;color:#194d35;text-decoration:none;font:14px/1.5 system-ui,sans-serif">Supabase pg_cron job not running: extension, schedule, and the run history <span>— Vectle</span></a>