Troubleshooting
Search or browse our troubleshooting guides for solutions to common Supabase issues.
Don't have a specific error yet? Start with Detecting to pick up a signal first. If you already have one, confirm one cause before you change anything:
- Capture the exact HTTP status, error code, and message. A
401is not a403;PGRST002is notPGRST106. If you usesupabase-js, errors are returned in{ data, error }, not thrown. Inspecterror; ignoring it hides the failure. - Query the log source for that layer. When two layers could fit, start closer to the database.
- Search below for that error. Each article confirms one cause, applies one fix, and tells you how to verify it.
- Re-run the failing operation. Keep the change only when the original symptom is gone. If verification fails, reverse the change and look again.
For client-side or local debugging, see Auth error codes, Storage logs, and Edge Functions debugging tools.
Deleting data, disabling row-level security, weakening a policy, or terminating a database process can cause data loss or a security incident. Do not let an automated routine perform these changes.
Escalate to Support when you cannot access the diagnostic source, the evidence points to a platform failure, or a safe fix needs a permission you do not have. Include the project reference, timestamp with time zone, error code, request ID, and sanitized evidence. Do not include passwords, API keys, or personal data.
Matching troubleshooting entries
- PlatformDatabaseFunctionsStorageRealtimeAuthSupavisor
- Auth
- DatabasePlatform
- PlatformAuth
- PlatformDatabaseAuth
- AuthPlatform
- Platform
Errors when creating / updating / deleting users
500 unexpected_failure,500 unexpected_failure,500 unexpected_failure,500 unexpected_failure,500 unexpected_failure,500 unexpected_failure,500 unexpected_failure,AuthDatabaseStudioDatabase API 42501 errors
401 42501,403 42501DatabaseDatabase error saving new user
500 unexpected_failure,500 unexpected_failureAuthStudio- Database
- DatabaseSupavisor
- DatabasePlatform
Edge Function 404 error response
404 NOT_FOUND,404 NOT_FOUND_FUNCTION_BLOBFunctions- Functions
- Functions
- Functions
- Functions
- Functions
- Functions
Email template not updating
templatemailer_template_body_parse_errorAuthStudio- DatabasePlatformSupavisor
- Platform
- Platform
- DatabasePlatform
- DatabaseStudio
- Database
- CliPlatform
- CliStorageStudio
Google Auth fails for some users
500 server_error,401 UNAUTHENTICATEDAuth- Database
- Platform
- DatabasePlatform
- DatabaseSupavisor
- DatabaseSupavisorCli
- Database
- DatabasePlatform
- DatabasePlatform
- Platform
HTTP status codes
402,540,544,546Platform- DatabaseAiPlatform
- FunctionsCli
- PlatformDatabase
- DatabasePlatform
- FunctionsCli
- AuthPlatform
- DatabasePlatform
- DatabaseSupavisor
- Branching
- AuthCli
- PlatformCliStorage
- Database
PKCE Flow errors: 'cannot parse response' or '#ZgotmplZ' in magic link emails
#ZgotmplZ,cannot parse responseAuthCli- AuthDatabaseStorageSep 4
- Database
- DatabaseStudio
- RealtimeSelf-hosting
- CliDatabaseRealtime
- Realtime
Reload/refresh postgrest schema
400 bad_requestDatabase- AuthDatabaseStorageSep 4
Resolving 42P01: relation does not exist error
42P01,42501Database- AuthDatabase
- AuthDatabase
- DatabaseAuth
- AuthPlatform
- AuthPlatform
- DatabasePlatformCli
- AuthDatabaseStorageSep 4
- DatabasePlatformSupavisor
- AuthCliDatabaseSupavisor
- SupavisorDatabase
- SupavisorDatabase
- CliDatabaseFunctions
- DatabaseSelf-hosting
- DatabaseFunctionsSupavisorSep 4
- Functions
- Functions
- PlatformStudioDatabaseFunctions
- AuthPlatform
- DatabaseSupavisorSelf-hosting
- Database
- AuthPlatformDatabaseRealtime
- AuthPlatform
- AuthFunctionsPlatformSelf-hosting