The rejection: Your homepage URL is unresponsive

Fix “homepage URL is unresponsive” on Lovable

Your Lovable homepage loads instantly for you and Google still calls it unresponsive. That's not a contradiction — Google fetches the page as a crawler, not as your browser.

Platform: LovableStack: Vite + React, client-rendered single-page appLands on: *.lovable.app
01 — Why this happens

Lovable outputs a Vite React SPA. The HTML your server returns is essentially <div id="root"></div> plus a script bundle; the visible page only exists after that JavaScript executes in a browser. Google's verification checker fetches the raw HTML and doesn't run your JavaScript, so it sees an empty page and reports the homepage as unresponsive.

02 — What Google says

Each fix below traces to a requirement Google publishes.

Nothing here is our opinion. Every requirement links to Google’s own page — open it and verify the fix yourself before you resubmit.

Your homepage must return meaningful, server-rendered HTML to an automated fetch — a JS-only shell, a bot challenge, a robots block, or an invalid TLS certificate all read as 'unresponsive'.

Google requirement · R9Read it on Google’s docs

Your homepage must describe what the app does and link to your privacy policy.

Google requirement · R6Read it on Google’s docs
03 — The fix

Do these in order, on Lovable.

  1. 01

    Reproduce what Google sees

    Run curl -A "Googlebot" -L https://yourdomain.com and read the output. If it's a near-empty div and a script tag with no descriptive text, that's exactly the blank page Google saw.

  2. 02

    Serve a pre-rendered landing page

    Put a static or server-rendered homepage in front of the app whose real text — what the app does, who runs it, a visible privacy-policy link — is present in the initial HTML, before any JavaScript runs.

  3. 03

    Don't hide it behind a bot challenge or login

    Make sure the root URL returns HTTP 200 to a plain crawler fetch and doesn't redirect to /login or a Cloudflare challenge. The public homepage must be reachable without JavaScript and without signing in.

  4. 04

    Re-test before resubmitting

    Re-run the curl check. Only resubmit once the raw HTML contains meaningful, readable content about your app.

Check it before you resubmit

See exactly what Google’s crawler sees — free.

Paste your URL and scopes. The pre-check fetches your homepage the way Google does, finds your privacy-policy link, and flags the blockers this rejection is about — in seconds, no signup.

Questions

Straight answers.

Why does my homepage work in Chrome but fail Google's check?

Chrome runs your JavaScript and renders the page; Google's checker fetches the raw HTML and doesn't. A Lovable SPA returns an empty shell to that fetch, which reads as unresponsive.

Is this a bug in my app?

No — it's a rendering mismatch. The fix is to serve a pre-rendered or static homepage so the descriptive HTML exists before JavaScript runs.