Lovable SEO

Your Lovable App Is Invisible to Google

Your Lovable app looks great to humans. Problem is, Google is not human. When Googlebot visits your site, it sees a bare HTML shell -- a nearly empty page with a <div id="root"></div> and a pile of JavaScript. All that beautiful content you built with Lovable's AI? Invisible to search engines.

Lovable builds React SPAs that render entirely in the browser. That is fantastic for user experience but terrible for SEO.

What RndrKit Does

RndrKit sits in front of your Lovable app and detects when a search engine bot visits. When Googlebot, Bingbot, or any other crawler shows up, RndrKit renders the page in a headless browser and serves the fully rendered HTML -- complete with text, images, meta tags, and structured data. Human visitors skip RndrKit entirely and go straight to your Lovable app with zero changes to their experience.

The result: search engines see exactly what your users see, and your pages actually get indexed.

Setup

Step 1: Find Your Lovable App URL

Every Lovable app has a default URL that looks like:

your-project.lovable.app

You can find this in the Lovable editor under your project settings. This is your origin URL -- the address RndrKit will fetch content from.

Step 2: Sign Up for RndrKit

Create your account at rndrkit.io. Once logged in, you will be taken to the dashboard.

Step 3: Add Your Domain

Click Add Domain in the dashboard and enter:

FieldExampleDescription
Custom Domainwww.example.comThe domain your visitors will use
Origin URLyour-project.lovable.appYour Lovable app's default URL

Step 4: Configure DNS

Go to your DNS provider (we recommend Cloudflare) and create a CNAME record:

TypeNameValueTTL
CNAMEwwwcname.rndrkit.ioAuto

If you are using Cloudflare, set the proxy status to DNS only (gray cloud) during initial setup. You can enable the orange cloud later once everything is working.

For detailed instructions, see DNS Configuration.

Step 5: Verify

Back in the RndrKit dashboard, click Verify on your domain. RndrKit will check that DNS is pointing correctly and provision an SSL certificate for your custom domain automatically.

Then test with curl:

# Bot request -- should return fully rendered HTML
curl -s -A "Googlebot/2.1" "https://www.example.com/" | head -50

# Human request -- should proxy to your Lovable app
curl -s "https://www.example.com/" | head -50

Platform-Specific Notes

Lovable robots.txt

Lovable apps come with a built-in robots.txt that allows all major crawlers:

User-agent: Googlebot
Allow: /

User-agent: Bingbot
Allow: /

User-agent: *
Allow: /

When you connect your domain through RndrKit, RndrKit serves its own robots.txt and sitemap.xml for your custom domain. The origin's robots.txt is not exposed to crawlers visiting your custom domain.

Lovable Does Not Generate Sitemaps

Lovable apps do not include a sitemap.xml by default (the origin returns a 404). RndrKit generates a sitemap for your custom domain automatically based on the pages it has rendered.

React Helmet for Meta Tags

Lovable apps use React, so you can use react-helmet-async to set page-specific meta tags:

import { Helmet } from 'react-helmet-async';

function AboutPage() {
  return (
    <>
      <Helmet>
        <title>About Us | Your Company</title>
        <meta name="description" content="Learn about our team and mission." />
        <meta property="og:title" content="About Us" />
        <meta property="og:description" content="Learn about our team and mission." />
      </Helmet>
      {/* page content */}
    </>
  );
}

RndrKit renders the page after React Helmet has injected the tags, so search engines will see all your meta tags.

Custom Domain vs. Lovable Subdomain

Keep your *.lovable.app URL as a development/staging address. Your custom domain through RndrKit is what you should submit to Google Search Console and use in all your marketing.

SEO Quick Wins

Once RndrKit is rendering your Lovable app for bots, make sure you have:

  • Unique title tags on every page -- descriptive and under 60 characters
  • Meta descriptions -- compelling summaries under 160 characters
  • Open Graph tags -- so links look good when shared on social media
  • Canonical URLs -- pointing to your custom domain, not lovable.app
  • Structured data (JSON-LD) -- helps Google understand your business, products, or services
  • Alt text on images -- Lovable makes it easy to add alt attributes

Verify It Works

curl -s -A "Googlebot/2.1" "https://www.example.com/" | head -100

You should see fully rendered HTML with your page content, <title> tag, and meta tags. If you see an empty shell or errors, check the troubleshooting guide.

Next Steps

  • Analytics -- See which bots are crawling your site
  • Cache Warming -- Pre-render important pages for fast bot responses
  • SEO Audit -- Check your pages for common SEO issues
  • Sitemaps -- Help search engines discover all your pages