Update (March 3, 2026): Supabase has confirmed that access has been fully restored across India. The Ministry of Electronics and Information Technology (MeitY) resolved the block. If you set up any of the workarounds below, you can safely revert them. If you set up a custom domain or Worker proxy, those are good to keep as an extra layer of reliability. Supabase's announcement
If you're building with Lovable from India and your app suddenly stopped working, you're not alone. Since February 24, several Indian ISPs (Jio, Airtel, ACT Fibernet) have been blocking connections to *.supabase.co. Since Lovable uses Supabase for auth, database, realtime, and pretty much everything backend, this breaks your app completely.
This isn't a bug on Lovable's or Supabase's side. It's happening at the ISP level, and according to Supabase's status page, they're working on it. No timeline yet, but there are real workarounds you can use right now.
I've been testing these with the community and collecting what actually works. Here's a breakdown depending on what you need.
Quick note: what is Cloudflare?
You'll see Cloudflare mentioned a lot in this guide. Cloudflare is a company that provides internet infrastructure - things like DNS, CDN, security, and Workers (small serverless functions). They have a generous free tier. Several of these workarounds use Cloudflare because their network isn't blocked by Indian ISPs, so we can route Supabase traffic through it.
Which fix do you need?
| Solution | Gets you back in | Fixes it for your users | Auth support | Best for |
|---|---|---|---|---|
| Change DNS | yes | no | n/a | Getting back to work quickly |
| Cloudflare WARP / VPN | yes | no | n/a | Same - quick personal fix |
| Supabase Custom Domain | yes | yes | All (OAuth, email, magic link) | Public products with users in India |
| Cloudflare Worker proxy | yes | yes | Email/password only (no OAuth) | Internal tools, small teams, free plan |
| Proxy file workaround | yes | yes | Email/password only (no OAuth) | Lovable Cloud users |
| Migrate from Lovable Cloud to own Supabase | yes | yes | All (with custom domain) | Long-term stability and full control |
Change DNS
yes
no
n/a
Getting back to work quickly
Cloudflare WARP / VPN
yes
no
n/a
Same - quick personal fix
Supabase Custom Domain
yes
yes
All (OAuth, email, magic link)
Public products with users in India
Cloudflare Worker proxy
yes
yes
Email/password only (no OAuth)
Internal tools, small teams, free plan
Proxy file workaround
yes
yes
Email/password only (no OAuth)
Lovable Cloud users
Migrate from Lovable Cloud to own Supabase
yes
yes
All (with custom domain)
Long-term stability and full control
The right fix depends a lot on what kind of product you're building. If it's an internal tool or something for your company, sharing the DNS or WARP fix with your team might be enough. If you have a public product with end users in India who can't change their DNS, you'll need one of the deeper solutions.
Quick fixes to get yourself back in
These work for you as a developer. They won't fix it for your end users, but they'll get you building again.
Change your DNS
Your ISP is returning fake DNS responses for Supabase domains. Switching to a public DNS bypasses that. Here are your options:
| DNS Provider | Primary | Secondary | Notes |
|---|---|---|---|
| Cloudflare | 1.1.1.1 | 1.0.0.1 | Fastest, privacy-focused |
8.8.8.8 | 8.8.4.4 | Reliable, widely used | |
| Quad9 | 9.9.9.9 | 149.112.112.112 | Security-focused, blocks malware |
Cloudflare
1.1.1.1
1.0.0.1
Fastest, privacy-focused
8.8.8.8
8.8.4.4
Reliable, widely used
Quad9
9.9.9.9
149.112.112.112
Security-focused, blocks malware
How to change it:
- Windows: Settings > Network & Internet > Wi-Fi > your network > Edit DNS > set primary and secondary from the table above
- Mac: System Settings > Wi-Fi > Details on your network > DNS > add primary and secondary
- Phone: Wi-Fi settings > tap your network > DNS > same values
- Router (covers everyone on your Wi-Fi): Access router admin (usually
192.168.1.1), find DNS settings, switch from automatic to manual, enter your preferred DNS
Close your browser completely and reopen after changing. Some ISPs override DNS settings - if this doesn't work, try WARP.
Cloudflare WARP (free, one click)
- Download from 1.1.1.1
- Install, open, toggle on
- Try your app again
Any VPN
Connect to any server outside India. Works immediately.
If your product is for your team or company, sharing any of these fixes internally might be all you need. Have your team install WARP or change their DNS, and you're set.
Fixing it for your end users
If your app has users in India who you can't ask to change their DNS, you need to route traffic through a domain that isn't blocked. How you do this depends on your setup.
Are you on Lovable Cloud or your own Supabase project? If you created a project in Lovable without connecting your own Supabase, you're on Lovable Cloud. You won't have a Supabase dashboard or direct database access. If you connected your own Supabase project through Project Settings, you have your own.
Own Supabase project
You have full control here, so the options are better.
Best option: Supabase Custom Domain
This is the cleanest solution with zero limitations - OAuth, Realtime, everything works. Thanks to Inder from the Supabase community for walking several users through this.
Instead of your app calling yourproject.supabase.co (blocked), it calls something like api.yourdomain.com, which Cloudflare proxies to Supabase. The ISP never sees supabase.co in the request.
What you need:
- Supabase Pro plan ($25/month)
- A domain on Cloudflare (or move yours there)
- Custom domain add-on ($10/month, charged hourly at ~$0.01/hr - you can remove it once the block lifts)
Steps:
- Move your domain to Cloudflare if it's not there yet
- In Supabase dashboard > Settings > Custom Domains, set up your domain (e.g.
api.yourdomain.com) - Make sure the DNS record in Cloudflare is set to Proxied (orange cloud ON)
- Update your app's
SUPABASE_URLto the new custom domain - Test auth, database, and realtime
This works for web and mobile apps. You can remove the custom domain and go back to the default once things are resolved. Supabase custom domain docs
Alternative: Cloudflare Worker proxy (free, any Supabase plan)
If you're on the free plan or don't want the extra cost, you can set up a Cloudflare Worker as a reverse proxy. Free tier gives you 100,000 requests/day.
Create a Worker at dash.cloudflare.com > Compute > Workers & Pages > Create Worker. Name it something like supabase-proxy, deploy, then edit the code:
const SUPABASE_ORIGIN = 'https://YOUR_PROJECT_REF.supabase.co';
export default {
async fetch(request) {
const url = new URL(request.url);
const targetUrl = SUPABASE_ORIGIN + url.pathname + url.search;
const headers = new Headers(request.headers);
headers.set('host', new URL(SUPABASE_ORIGIN).host);
if (request.headers.get('Upgrade') === 'websocket') {
return fetch(targetUrl, { headers, method: request.method });
}
return fetch(targetUrl, {
method: request.method,
headers,
body: ['GET', 'HEAD'].includes(request.method) ? undefined : request.body,
redirect: 'follow',
});
},
};Replace YOUR_PROJECT_REF with your Supabase project reference.
Then update VITE_SUPABASE_URL to your Worker URL. Keep your anon key the same.
Heads up: OAuth (Google, GitHub login) won't work through a proxy because the callback still redirects to *.supabase.co. Email/password auth works fine. If you need social login, go with the custom domain.
For a detailed walkthrough: Cloudflare Worker fix guide on DEV
Lovable Cloud
This one's trickier because Lovable Cloud manages VITE_SUPABASE_URL for you and you can't change it directly.
Proxy file workaround
This was figured out by Prakhar in the Lovable Discord. The idea is to create your own Supabase client file that points to your Cloudflare Worker, and redirect all imports there. Ask the Lovable chat in Plan Mode:
"Implement a Supabase proxy bypass. Create src/lib/supabaseProxy.ts pointing to https://your-worker.workers.dev/ and update ALL files that import from @/integrations/supabase/client to import from @/lib/supabaseProxy instead. Do NOT touch src/integrations/supabase/client.ts (it's auto-generated). Edge functions are server-side and unaffected."
This works, but it's a bit fragile. If Lovable touches the Supabase integration in a future prompt, it might get overwritten. Connect your project to GitHub so you can always revert.
Migrate from Lovable Cloud to your own Supabase
It's not the ideal path - nobody wants to deal with a migration in the middle of building. But if you care about your users being able to access your app and we don't have a timeline for when this block will be lifted, this might be the most reliable solution right now.
The good news: you don't lose the Lovable chat experience. It can still create tables, write queries, set up RLS, everything. The difference is you get full control over your database, environment variables, and configuration. From there you can set up a custom domain or Worker proxy without worrying about anything getting overwritten.
I've written a few guides that walk you through it step by step:
- Migrate from Lovable Cloud Using Claude Code - full migration walkthrough
- Export Your Lovable Cloud Data - how to get your data out
- When to Use Lovable Cloud vs Your Own Supabase - helps you decide
- Vibe Coding from Claude Code - setting up your workflow after migrating
A note on security
Don't route your traffic through third-party proxy services (like JioBase or similar tools you might find online). Your API keys, user passwords, and auth tokens all pass through those proxies. If you don't control the proxy, you don't control who sees your data. Stick to your own Cloudflare Worker or Supabase custom domain.
I'm still testing workarounds and collecting feedback from the community. If you find something that works or run into issues, feel free to reach out. Hopefully this gets resolved soon.