Guides / Bolt.new security checklist before launch

last checked oct 2026

Bolt.new security checklist before launch

Bolt gets you from prompt to deployed app fast. These are the checks that stop that speed from turning into a public database.

1. Open the database Security Audit

In your Bolt project, click the database icon at the top center of the screen, then Security. The page is titled Security Audit and uses the same checks as Supabase's Security Advisor. It is on every plan.

Note what it covers: only your database, not your code. Results are labeled Error, Warning or Info, most serious first. If you can edit the project, an Ask Bolt to fix button appears. Re-open the page after every database change.

2. Take "RLS Policy Always True" seriously

Bolt's docs say that if you have not added sign-in, Bolt may write policies that let any visitor view, add, change and delete data. That is what this warning flags. For each table, decide which bucket it belongs in:

Bolt's docs suggest prompting it directly, for example:

Update the policies for my database so visitors can only view the posts table, and can only add rows to the contact_messages table.

Then verify the result instead of trusting it. If your database is in Supabase, run this in the SQL Editor:

-- 1. Which public tables have RLS off?
select tablename, rowsecurity
from pg_tables
where schemaname = 'public'
order by rowsecurity, tablename;

-- 2. What do the policies actually allow?
select tablename, policyname, roles, cmd, qual, with_check
from pg_policies
where schemaname = 'public'
order by tablename, cmd;

On a "public submit" table, you should see an INSERT policy for anon and no SELECT policy for anon.

3. Check every table you added yourself

Bolt turns on RLS for tables it creates. Tables you add another way (SQL, a migration, the Supabase table editor) need it turned on by you:

alter table public.your_table enable row level security;

With RLS on and no policies, the API returns nothing to publishable-key clients, which is the safe default until you add the policies you need.

4. Audit your VITE_ variables

Many Bolt projects are Vite apps (look for a vite.config file). Vite's docs: any variable prefixed VITE_ is bundled into client code at build time and is public. Open your .env and check every VITE_ line:

5. Leaked password protection

If the Security Audit shows Leaked Password Protection Disabled, the Prevent Leaked Passwords setting is off. Bolt notes it is on by default for Bolt databases; on a Supabase free plan it is not available.

Pre-launch checklist

next step

Want a second pair of eyes?

Grab the free Lockdown Pack (security rules for Cursor and Claude Code plus a pre-launch checklist), or have us check the whole app for a fixed $99.

Sources

Every product step above was checked against these official pages. Last checked Oct 2026. Products change; if a menu moved, the docs below are the source of truth.