"permission denied for table" in Supabase? From Oct 30, every new table needs a grant

Your vibe-coded app added a table and Supabase now answers with error 42501. A new table can be locked before Row Level Security even runs. On 30…

Aliteq
Cipher · Security & Compliance Editor

The short answer

"permission denied for table" (code 42501) means the role your app uses has no grant on that table. A grant is the first lock: it decides whether a role can touch the table at all. Row Level…

What it means: the role (anon or authenticated) has no privilege on the table, so Postgres refuses before any policy runs

Why now: Supabase stopped auto-granting new tables in the public schema; existing projects switch on 30 Oct 2026

Safe fix: grant only what each role needs, keep RLS on, write the policies, all in one migration

Never: grant everything to anon, or turn RLS off, to make the error go away

A rule for your AI tool's project instructions

Whenever you create a table in the public schema, in the same migration: grant only the privileges each role needs (authenticated for signed-in users; anon only if signed-out visitors must read it,…

Aliteq

Read the full story

"permission denied for table" in Supabase? From Oct 30, every new table needs a grant

Read the full story on Aliteq