AI product engineering · Published · 6 min
AI-generated website: why it looks generic, and how to fix it
Lovable, Bolt, v0 or Claude Code quickly deliver a page that holds together. What gives the AI away can be checked in the code: default titles, template text, preview links, a page that is empty without JavaScript. Here is what to look for, and in which order to fix it.
- IA
- UX
- Lovable
A tool like Lovable, Bolt, v0, Replit or a coding agent produces in an hour a page that would have taken a week. The problem is not that it is generated: it is that it often keeps its generator’s defaults — the same structure, the same phrases, the same gradients as thousands of other pages. Visitors cannot always say why, but they notice. The good news: many of these signs can be checked objectively, in the page’s code.
What gives a generated page away
Here is what the automated scan checks, and what you can check yourself by opening the page source (right-click, “View page source”):
| Sign | Where to look | Why it matters |
|---|---|---|
| Default title | The <title> tag: “Vite + React + TS”, “Lovable App”, “Create Next App” | It is the title shown in Google and in the browser tab |
| Generator description | The meta description: “Lovable Generated Project”, “Created with v0” | Often shown under the title in search results |
| Template text | Visible text: “lorem ipsum”, “John Doe”, “Your Company” | Nothing signals an unfinished site faster |
| Preview links | Links to *.lovable.app, *.vercel.app or localhost while the site has its own domain | For a visitor, these links are broken or lead elsewhere |
| Builder badge | “Edit with Lovable”, “Made with Bolt”, “Made in Framer” | It reminds visitors the site was generated, and points to another product |
| Empty page without JavaScript | The source holds almost no text, only <div id="root"> | Link previews, some engines and AI crawlers see an empty page |
| Buzzword headline | “Revolutionize”, “all-in-one”, “AI-powered” | These words say neither what the product does nor for whom |
In which order to fix
Not all fixes are equal. I take them in the order they cost the visitor — first what breaks, then what misleads, then what makes the page bland.
1. What breaks: links, forms, errors
Click every button and submit every form on the production address, not in the tool’s preview. A form whose action points to a preview can send requests to the wrong place without anyone knowing. Open the browser console too (developer tools): JavaScript errors on load often signal a feature that does not work. If the problem is functional — payments, login, data — it is a repair job: Code Rescue.
2. What misleads: title, description, template text, badge
Replace the default title and description with a sentence naming the offer, the audience and your name. Search the project for template leftovers (“lorem”, “John Doe”, “Your Company”, “example.com”) and replace them with real content, or remove the section. Remove the builder badge (often a paid-plan option or a publish setting) and add a share image (og:image, 1200 × 630 px).
3. What makes it bland: the message and the layout
Do the hidden-logo test: if the headline could describe a competitor, rewrite it around the outcome your customer gets. Replace generic illustrations with real screenshots of your product. Keep a single main action per screen. Then switch to a phone: that is where generated pages show their limits — buttons too close together, text too light, slow loading. Google Lighthouse (PageSpeed Insights, mobile) measures the main content’s render time, layout stability and insufficient contrast.
4. What stays invisible: server rendering
Many generated pages are React applications rendered entirely in the browser. For a visitor that changes nothing; for a link preview, an AI crawler or part of the search engines, the page is empty. If acquisition goes through search, pre-render at least the public pages (home, pricing, offer pages): server rendering, static generation or pre-rendering, depending on the framework.
When the page looks good but does not convert
Once the generation signs are fixed, the site can be clean and still not convert. That is a different problem — first-screen clarity, forms, pricing, trust — which I cover in My website looks good but doesn’t convert: ten causes you can check.
Before launching, and to learn
If you are about to launch an application built with AI, the question is no longer only how it looks: login, payments, data access, emails. The checklist is in what a founder should check before launching, and Launch Rescue does it with you. And if you want to learn to build and verify a production-ready application yourself, that is what Build School is for.
Check your page now
The free scan reads your page’s real code and, when possible, its rendering on a phone by Google Lighthouse. It gives you three priority findings with what was read, why it matters and how to fix it — and states clearly what it could not check. If a visual redesign is the real need, Design Rescue handles it, on a quote.
What is holding your visitors back?
Paste your page’s address: the scan reads its real code and gives you three priority findings, each with what was read, why it matters and how to fix it. No account needed.
Scan my page for freeFree automated scan · On-screen audit and fixes quoted in writing