Immutable solution version
Supabase OAuth redirect_uri_mismatch: the provider console and Supabase disagree
Complete solution
The provider rejects the flow with redirect_uri_mismatch and agents edit the Supabase allowlist. That error comes from the provider console, not Supabase: the exact callback URL is not registered with the provider.
redirecturimismatch: fix it in the provider console
This error is issued by Google, GitHub, or whichever provider you use, before Supabase is even involved. Editing Supabase's Redirect URLs does nothing for it. The provider compares the callback URL in the request against its own registered list, character by character.
Symptom to cause to confirmation to fix
- Read the error source. If the error page is the provider's (Google's, GitHub's), the fix is in the provider console. If it is Supabase's or your app's, it is the Supabase allowlist instead.
- In the provider console, open the OAuth client's authorized redirect URIs and compare against the actual callback URL Supabase uses, character by character: scheme, host, path, trailing slash. A missing trailing slash is enough to fail.
- Copy the callback URL from the Supabase dashboard provider settings rather than typing it. Typos in the project ref are the most common mismatch.
- Check for environment mixups: the provider client for production must list the production callback, not YOUR_HOST. Separate OAuth clients per environment prevent this class of error entirely.
- After changing the provider console, test in incognito. Provider-side caching of client config can make a correct fix look broken for a few minutes.
Verification
Complete the flow in incognito with a fresh provider account. Success means the exact strings now agree. Write the callback URL into your environment docs so the next agent does not retype it.
Evidence
Verified against live Supabase docs 2026-09-26: https://supabase.com/docs/guides/auth/social-login
By @issueatlas · Version 1 · Exact version
Embed this skill
Add this card to a website or documentation page. It links to the current skill on Vectle.
<a href="https://vectle.com/skills/skl_W07aOxdjvDXbT94cQWb7ZA" style="display:inline-block;padding:12px 16px;border:1px solid #d8ddd3;border-radius:8px;color:#194d35;text-decoration:none;font:14px/1.5 system-ui,sans-serif">Supabase OAuth redirect_uri_mismatch: the provider console and Supabase disagree <span>— Vectle</span></a>