I often say that Lovable is great for the first version of a website. On RoboHub, a robot comparison catalog I built last week, I saw exactly where that first version ends, so here is the breakdown: what Lovable did well, what I had to redo, and how long it took.
What the first version had
Lovable built the catalog in a few hours. Filters by category, payload and runtime, a page for every robot, a comparison table that highlights the best values, a quote form, four languages. Good enough to show a client.
The problems showed up when I asked what a search engine would see. The whole point of the site is search: someone types which robot to buy and lands on a comparison. There were several issues.
The language lived inside the page, not in the address. The switcher changed the text but the URL stayed the same. For Google that is one page in one language. The Russian, German and Chinese versions did not exist for search, even though users could see them.
No sitemap, no structured data. A sitemap tells a search engine which pages exist. Structured data tells it that a page is a product with a price and a maker. Without it, rich results and AI search answers are harder to get into.
The data looked right but was wrong in places. A London startup was listed as Russian. Two robots that are not for sale had prices. Prices in rubles had no source. None of this breaks the site, but for a catalog that wants to be trusted it is worse than any bug.
What I changed
Data first. I built a dataset of 106 models from open sources and added a link and a date to every price. If there is no number, the site says so. Only 51 models turned out to have a public price, and that became content in itself: a buyer should know a warehouse robot cannot be bought in one click, only by quote.
Then I wrote a staged brief for Claude Code and gave it the repository. Lovable and GitHub stay in sync, so Claude Code's changes appeared in the Lovable project right away, and reached the live site only when I pressed Publish. That works as a safety switch: until I check a stage, the live site does not change.
What Claude Code did:
- a separate address for each language (/ru, /de, /zh) with hreflang tags
- a sitemap with 912 addresses, product and breadcrumb markup
- category pages and head-to-head comparison pages
- a five-question robot finder
- free-license photos from Wikimedia Commons with an authors page
How long it took
One week from idea to the published version. The first Lovable version took a few hours of that. Most of the time went into market research, the dataset and checking each stage.
What to take from this
If you build a Lovable site that has to bring traffic from search, check three things before launch. Does every language have its own address. Is there a sitemap and structured data. Where do the numbers on the pages come from. The first two take a day to fix. The third takes the longest, and nobody will do it for you.
The catalog itself is still unfinished: the quote forms do not send anywhere yet and 88 of the 106 models have no photo. The full story of the project is in the RoboHub case in my work section.
Originally published at ilinmaks.com.
Top comments (2)
One catch with hreflang now that /ru, /de and /zh exist: the tags have to point both ways. If /de lists /ru but /ru doesn't list /de back, Google ignores the pair. Each version lists all four, itself included, plus an x-default.
The quote forms that still do not send anywhere are the honest unfinished half. When you wire them, invent demo enquiries on domains you control and treat the address as contact data: MX / Null MX first (timeout = unchecked). For any phone field you add later, seed demos from reserved fiction ranges only (US 555-0100 to 555-0199, UK 020 7946 0xxx).