Lovable SEO: why your Lovable site isn't indexed and how to fix it
New Lovable apps render on the server; older ones are pre-rendered for verified crawlers. Find your stack, then fix domain, sitemap, robots and titles.
LLaunchScaler·Published ·8 min read
A Lovable site that isn't indexed is rarely a rendering problem any more: Lovable's docs say new apps created from May 13, 2026 render on the server with TanStack Start, and older React and Vite apps are pre-rendered on request for verified search, social and AI crawlers. The usual causes are elsewhere: the project isn't publicly published, it lives on a Lovable address instead of your own domain, there is no sitemap or Search Console setup, or every route shares one title and a canonical pointing at the homepage.
So start by finding out which stack your project is on, because it changes what crawlers receive and how you test it. Everything below reflects Lovable's documentation as read in September 2026.
Does Lovable use server-side rendering?
New projects do. Lovable made TanStack Start, which renders each page to finished HTML on the server, the default for new projects on May 13, 2026 and for new Enterprise projects on June 22, 2026. Projects created before that run on React and Vite, where the browser builds the page with JavaScript, and Lovable fills the gap for crawlers with pre-rendering.
TanStack Start (new projects)
React and Vite (older projects)
How pages are built
On the server, for every request
In the visitor's browser
What Google and Bing get
Finished HTML
A page pre-rendered on request for verified crawlers
What AI crawlers get (ChatGPT, Perplexity, Claude, Gemini)
Finished HTML
Questions, answered
What people ask about this
01
Is Lovable good for SEO?
It can be. Lovable's docs say new apps created from May 13, 2026 use TanStack Start with server-side rendering, and older React and Vite apps get on-request pre-rendering for verified search, social and AI crawlers. Ranking still depends on your content, metadata, domain and links.
Pre-rendered HTML, if they are on Lovable's verified list
What social-preview bots get
Finished HTML
Pre-rendered HTML for verified preview bots
What third-party SEO scanners, link checkers and other tools get
Finished HTML
The single-page app shell
To find out which one you have, ask Lovable in the project chat: What stack is this project on? Lovable's docs suggest exactly that prompt.
The last row matters when you test. Lovable warns that because older apps serve rendered pages only to verified crawlers, third-party SEO tools "may report your pages as empty even though Google, social platforms, and AI search engines see the full content." Lovable's hosting docs say tools outside that verified list "see very little," so any crawler or AI agent not on it gets the same shell those SEO tools see.
Why isn't my Lovable site indexed?
Work through the causes in the order they block indexing, most absolute first. The first three stop Google from indexing anything at all; the rest decide whether individual pages are found and shown well.
Cause
What Lovable's docs say
Fix
The project is unpublished or private
Only publicly published apps can be indexed
Publish, with public visibility
It lives on a branded workspace URL (app.workspace.lovable.app)
These are never indexable
Connect a custom domain
A sitewide noindex or an X-Robots-Tag: noindex header
The SEO review marks it as a high-impact issue
Remove it and republish
robots.txt blocks crawlers, or is missing
Sitemaps, robots.txt and metadata "are not always generated up front"
Let the review create or repair it
No sitemap, or not submitted
The review checks for a sitemap and for Search Console setup
Generate it, publish, submit it in Search Console
Only on the lovable.app subdomain
Recommended for MVPs, demos and internal tools
Connect a custom domain and set it as primary
Same title on every route, canonical pointing at the homepage
The review flags "Duplicate titles across routes" and "Canonical URLs point to the homepage"
Set a title, description and canonical per route
Lovable's built-in review covers most of this. Open More, then SEO & AI search, and click Scan project. Running it is free on all plans; applying a fix with Try to fix uses message credits. Some checks, including indexing and Search Console setup, only appear once the site is publicly published, so publish and scan again.
How do you test what crawlers see on a Lovable site?
Use the test that matches your stack. On a TanStack Start project, curl shows exactly what every crawler receives. On an older React and Vite project, curl shows what unverified tools receive, and you need Google's own tool to see what Google gets.
Run curl -s https://yourdomain.com | grep -i "your headline". On TanStack Start, your H1 should appear. On React and Vite, it probably won't, because curl is not a verified crawler.
In Google Search Console, inspect the URL, click Test live URL, then View tested page. The screenshot shows the page as Google's inspection tool rendered it. This is the test Lovable's docs point to for verifying pre-rendered output.
Check your link previews in Lovable before publishing: in the page selector above the preview, hover the preview icon on a page to see the Social card (the title, description and image social platforms read) and the Search card.
After publishing, re-check a shared link with the platform's own preview debugger, since platforms cache previews.
If curl finds your headline on an older project, something else is serving the page. If URL Inspection shows a blank screenshot, the pre-rendering or your page failed for Google too, and the client-side rendering SEO guide covers what to look for.
How do you add robots.txt and a sitemap to Lovable?
Let the SEO review create them, then submit the sitemap through Search Console. Lovable's review checks for a missing robots.txt, blocked crawlers, a missing Sitemap: line, and sitemaps with invalid XML, placeholder routes, relative URLs or a host that doesn't match your domain, and Try to fix creates or repairs most of them.
What a correct pair looks like for a site on yourdomain.com:
robots.txt: User-agent: *, Allow: /, and Sitemap: https://yourdomain.com/sitemap.xml. Add Disallow: lines only for private app paths.
sitemap.xml: one entry per public route, each an absolute https://yourdomain.com/... URL. No lovable.app URLs, no placeholder routes.
On an older React and Vite project, static files like these live in the public/ folder, which Vite copies to the site root as-is. Then publish, because Google fetches the sitemap from your live site; Lovable's docs warn that routes only in unpublished code won't be submitted. From the review, Try to fix on the Search Console finding connects the Search Console connector, verifies the site and submits the sitemap from the project chat.
How do you connect a custom domain for SEO?
Connect it in Project, Settings, Domains, wait for it to show Live, and set it as the primary domain. Lovable then redirects your other connected domains to it. Search presence built on your own domain moves with you; presence built on yourapp.lovable.app stays with that address.
Details from Lovable's docs worth knowing before you do it:
The first custom domain you add becomes primary automatically (for domains added after October 29, 2025).
Connecting the root domain keeps "Redirect www.yourdomain.com to yourdomain.com" on by default, so both are connected and www redirects.
Redirects to the primary domain are 302 temporary redirects. Lovable does not support 301s between connected project domains, because the primary setting is reversible.
You can't remove the lovable.app project URL, so point every canonical tag at your custom domain.
After connecting or changing the domain, verify it in Search Console and rerun the SEO review so Lovable re-checks the new host.
Google treats a 302 as only a weak signal about which URL to process, so your canonical tags and sitemap do most of the work of telling Google which host is yours. Make sure both name the custom domain on every page.
How do you fix titles and descriptions per route?
Give every public route its own title, meta description, canonical and Open Graph tags, and make sure they appear in the HTML crawlers receive. The review flags the common failures: generic or placeholder titles, duplicate titles across routes, canonicals pointing at the homepage, and shared links still showing Lovable's branding.
On TanStack Start, per-route metadata is rendered on the server, so every crawler and preview bot gets it. On an older React and Vite project, tags set by JavaScript (for example with React Helmet) reach verified crawlers through pre-rendering, which Lovable says runs at request time and includes dynamically loaded content, but they don't reach anything off that list. The React Helmet SEO guide explains why client-set tags fail elsewhere.
For link previews, Lovable recommends a unique og:title, og:description and og:image per route, share images at 1200×630 and a few hundred KB (it says WhatsApp shows no preview for larger files), and publishing before you test.
Should you upgrade an older Lovable project to TanStack Start?
Upgrade if you need every visitor and tool, not just verified crawlers, to receive finished HTML: reliable link previews everywhere, AI agents outside Lovable's list, and third-party tools that read your pages. Lovable says the upgrade also gives a faster first page load. If Google, Bing and the major AI engines are all you care about, pre-rendering already covers them.
What the upgrade involves, per Lovable's docs:
Start it from the project chat (type / and choose Migrate to TanStack Start), from project settings under General, Project actions, or by asking Lovable.
It uses credits as normal build usage; most upgrades cost 10 to 35 credits.
Lovable moves your titles, descriptions, social tags and analytics into the new template, checks the build and loads every page.
Your live site doesn't change until you publish, and you can revert from version history.
Some libraries only work in the browser and can break server rendering, so test every page before publishing.
To check a published Lovable site from outside, run the free scan on LaunchScaler. It needs only your URL and no account, and its free checks read your robots.txt, sitemap, noindex directives, titles, descriptions and canonicals, and compare the raw HTML with a real browser render, among 156 checks across 6 of its 7 categories. It is not on Lovable's verified-crawler list, so on an older React and Vite project its raw-HTML reading matches what other unverified crawlers receive, while its browser render shows the finished page.
The usual causes are an unpublished or private project, a branded workspace URL (which Lovable says is never indexable), no custom domain, a missing sitemap or Search Console setup, or every route sharing one title and a canonical that points at the homepage. Lovable's SEO & AI search review checks most of these.
03
Does Lovable use server-side rendering?
New projects do. TanStack Start became the default for new projects on May 13, 2026, and for new Enterprise projects on June 22, 2026. Older React and Vite projects can be upgraded in place, which Lovable says usually costs 10 to 35 credits.
04
Why do SEO tools say my Lovable pages are empty?
On older React and Vite projects, Lovable serves pre-rendered pages only to verified crawlers such as Google, Bing, social-preview bots and major AI engines. Its docs say third-party SEO scanners and other agents see the single-page app shell, so they can report pages as empty while Google sees the full content.
05
How do I add a sitemap to a Lovable site?
Run the SEO & AI search review from More, then SEO & AI search, and use Try to fix on the sitemap finding. Publish, then connect Google Search Console from the same review so Lovable can verify the site and submit the sitemap.
Browsers block http:// scripts, styles, iframes and fetch calls on HTTPS pages and upgrade images and media. How to find every insecure URL and fix it.