Supabase Realtime not working? Turn on your table in the publication

Ship ItChecked against the official source

The short answer

New rows save fine, but other users only see them after a refresh? Check this first: Supabase only streams database changes for tables in the supabase_realtime publication. Then check permissions: Postgres Changes authorizes every event against each subscriber, so in our reading, your RLS policies decide which users receive which changes.

What to do

  1. In your Supabase project, open the Publications settings. Under supabase_realtime, toggle on the tables you want to listen to. Or run: alter publication supabase_realtime add table your_table_name
  2. Check that your RLS policies let the signed-in user read those rows.
  3. Ask your AI tool: "Realtime updates don't arrive in this app. Check that the table is in the supabase_realtime publication and that RLS lets the signed-in user read those rows."

Good to know

  • One exception: "RLS policies are not applied to DELETE statements".
  • Postgres Changes works out of the box for tables in the public schema.
  • Expecting more than ~3,000 concurrent subscribers on the same changes? Supabase suggests Broadcast instead. The ~3,000 is a guideline.

Source

Checked on 10 Oct 2026. Prices, limits and settings change, so check the source before you rely on them.

Related