← Reference

Your table names are in your JavaScript

Why you cannot hide them, and why that is not the thing to fix.

01

Why they are visible

If the browser queries your database directly, the query has to name the table. Minification renames your variables, not your table names — they are string literals sent to the server.

Any visitor can open developer tools and read the list. There is no configuration that changes this.

02

What to do instead

Make the names harmless. A visible table name matters only if the table answers to an anonymous request, so the fix is Row Level Security on every table, without exception.

For tables that should never be reachable from a browser at all — audit logs, internal notes, anything administrative — revoke access from the anon role entirely and move those queries behind a server route:

Copy this
REVOKE ALL ON public."admin_notes" FROM anon;
03

Naming is a small real signal

A table called api_keys invites more attention than one called tokens_v2. This is not security and should never be relied on, but if you are naming a new table anyway, there is no reason to advertise.

Not sure whether this applies to you?

Give us the address and we will tell you. No code, no access, no install — and every finding we have is shown in full, including on the free trial.

Check a site