Carol Monroe
← Field Notes

Supabase Blocked in India? Here's How to Fix Your Lovable App (Solved)

Mar 03, 2026 · 5 min · Guide 207 views

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


A laptop on a desk with a connection blocked symbol, with a faint map of India in the background

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

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

Three keys on a keyring representing DNS, VPN, and WARP - quick tools to get developers back to work

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
Google 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)

  1. Download from 1.1.1.1
  2. Install, open, toggle on
  3. 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

A green Supabase database connected through an orange Cloudflare shield to a group of users - showing how Cloudflare acts as a bridge to bypass the ISP block

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:

  1. Move your domain to Cloudflare if it's not there yet
  2. In Supabase dashboard > Settings > Custom Domains, set up your domain (e.g. api.yourdomain.com)
  3. Make sure the DNS record in Cloudflare is set to Proxied (orange cloud ON)
  4. Update your app's SUPABASE_URL to the new custom domain
  5. 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:


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.

Useful links

supabase · lovable · workaround

XLinkedIn

Reader margin

What stayed with you?

0 notes

Leave one small mark in the margin.

Notes from readers

The margin is open. You can leave the first note.

Stuck with something like this? I fix it daily → Services

© 2026 Carol Monroe · Services delivered through Moonshot Labs LLCPrivacy · Terms · RSS · X · LinkedIn ·
Carol Monroe · visitor ledgerThe logbook

Leave a little note before you go.

Notes left hereopen since 2026

The page is ready for its first note.

Your page280 characters

Glad you found your way here.

Tell me what brought you in, what stayed with you, or simply say hello.

0/280 · your note will be public