Was this site built with Lovable? How to tell

AI builder · default hosting *.lovable.app

Lovable builds React applications from a chat prompt and publishes them on its own hosting. It is one of the easiest builders to recognise, because the generated project keeps loading a script from the platform even after the site is exported or moved to a custom domain.

That is not a flaw in Lovable. It is how the editor keeps working on a live project. It does mean a Lovable site is rarely anonymous.

The verdict and the evidence are free. The improvement report needs a free account.

How to check it yourself

No tools needed
  1. Open the page source (Ctrl+U) and search for gpteng.co. Lovable projects load their editor script from that host.
  2. Look at the address: anything on *.lovable.app is hosted by Lovable itself.
  3. Search the source for lovable. Projects that were never renamed still carry "Lovable Project" as the page title or the OpenGraph title.
  4. Open the JavaScript bundle under /assets/ and search for lovable: the runtime package name is usually still in there.

What the scanner looks for

7 live rules

These are the rules enabled in the database right now, with the weight each one carries. A single strong match is enough to name the builder; the weights decide how confident the verdict is.

RuleWhere it looksWhat it matchesWeight
Lovable / GPT Engineer script hostthe host a script is loaded from(^|\.)gpteng\.co$100
Lovable hosting domainthe site address(^|\.)lovable(project)?\.app$100
Lovable generator meta tagthe generator meta taglovable100
Lovable project badge or backlinkthe page sourcelovable-badge|lovable\.dev/projects|lovable\.app/projects|data-lovable90
Lovable default OpenGraph imagea meta taglovable\.dev/opengraph|gpteng\.co/[^"\s]*og85
Lovable runtime package in the JS bundlethe JavaScript bundle@lovable\.dev/|gptengineer|gpt-eng\.com|lovable-tagger85
Link to lovable.dev inside the JS bundlethe JavaScript bundlehttps?://lovable\.dev60

What Lovable sites usually get wrong

API keys left in the JavaScript bundle

Lovable projects often talk to Supabase or another backend straight from the browser, so the key ends up in a file anyone can download. If that key is a service role key rather than an anonymous one, the whole database is readable. Our scanner downloads up to three bundles and reports any key it finds, redacted.

Nothing for search engines to read

The page ships an empty <div id="root"> and builds itself with JavaScript. Google renders most pages eventually, but other crawlers and link previews do not, so the site can look blank to them.

The default title and description survive

"Lovable Project" or a generic description in the tab and in shared links tells everyone how the site was made, and costs clicks in search results.

Questions

Does using Lovable hurt my SEO?

Not by itself. What hurts is what usually comes with it: an empty HTML shell, a missing or default meta description, no canonical URL and no structured data. All of those are fixable without leaving Lovable.

Can I hide that my site was built with Lovable?

Partly. You can remove the badge, rename the title, and move to a custom domain. The editor script and the bundle markers stay unless you export the project and host it yourself.

Is it bad that people can tell?

For most sites, no. It matters if you sell websites to clients, or if a leaked API key turns the marker into a starting point for someone looking for an easy target.


Other builders