Your website looks polished. It works perfectly when you open it. The forms submit, the animations glide, and every button appears to be in the right place.
But Google still cannot find it.
Or perhaps Google has indexed only your homepage, ignored your service pages, chosen a strange page title, or displayed almost nothing when someone shares your link on LinkedIn.
The problem may be basic SEO. It may be weak content. It may be a new domain with no authority.
But when a website has been built with an AI website or app builder, there is another possibility: the content you see in your browser may not be the same content a search engine or social-preview crawler receives.
That does not mean every AI-built website is invisible to Google. Major platforms including Lovable, Bolt and Base44 have introduced substantial SEO improvements. However, rendering now varies according to:
The right question is no longer simply:
Is this platform good for SEO?
It is:
What does Google receive when it requests this particular page?
This guide explains why websites fail to appear in search, how Google processes JavaScript websites, what has changed across leading AI builders, and how to test whether your own website is genuinely ready to be indexed.
Publishing a website does not automatically place it in Google’s search results.
Google first needs to discover the URL. It may find your website through:
Discovery is only the beginning. Google must then crawl the page, process it and decide whether it belongs in its index.
A submitted sitemap can help Google find your URLs, but it does not guarantee that every page will be indexed. New pages may appear within days, take several weeks, or remain excluded if Google considers them duplicated, inaccessible, low value or insufficiently connected to the rest of the web.
Set up Google Search Console and verify your domain.
Then:
Do not submit hundreds of low-value URLs and expect the sitemap to act as an indexing command. A sitemap is a map, not a court summons.
Google needs enough information to understand what a page is about, who it is for and how it differs from the other pages on your website.
Common problems include:
noindexEvery important page should have a unique, descriptive and concise title.
Google does not impose a fixed 60-character title limit. Long titles may be shortened or rewritten in search results depending on their content and the available display width. Focus on clarity rather than squeezing every title through a character-counting keyhole.
A useful title usually includes:
For example:
Weak:
Home | Aqua Nova
Better:
Plunge Pool Installation in Bordeaux | Aqua Nova
A meta description gives Google possible copy to use beneath the page title in search results.
It is not a direct requirement for ranking, and Google may generate a different snippet from the page itself. But a clear description can improve how the result is presented and make people more likely to click.
A page should normally contain:
Semantic structure is useful, but a technically perfect heading hierarchy cannot rescue a page that says almost nothing.
A company can describe its services accurately and still use completely different language from its potential customers.
You may call your service:
Bespoke aquatic environment design
Your customers may search for:
How much does a plunge pool cost?
Google needs enough overlap between the searcher’s problem and the language on your page to understand that the two belong together.
Research the questions and phrases customers use before contacting you.
Useful sources include:
Then create a clear page for each meaningful search intent.
A service page should not merely announce that the service exists. It should answer the questions that determine whether someone will buy it:
Links from other websites help search engines discover pages and understand whether a source is established and trusted.
A new domain with no mentions, links, reviews or brand history may struggle against businesses that have been publishing useful material for years.
That does not mean every page requires hundreds of backlinks. Highly specific, local or low-competition pages can rank with very few external links.
But in a competitive market, good content alone may not be enough.
Start with legitimate, relevant sources:
Avoid buying large packages of low-quality links. Fifty links from abandoned websites are not a substitute for one real mention from a source your customers already trust.
Speed is part of the user experience and can contribute to search performance, but there is no universal rule that a page becomes unrankable after exactly three seconds.
Google’s current page-experience guidance includes Core Web Vitals such as:
A technically fast site can still rank poorly if its content is weak. A slower page can still rank if it is substantially more relevant and useful than the alternatives.
However, poor performance can reduce conversions, frustrate mobile users and make complex JavaScript applications harder for crawlers to process reliably.
Run important pages through PageSpeed Insights, but do not chase a perfect score while ignoring the actual customer experience.
Google primarily uses a smartphone crawler to understand and index websites.
That means your mobile experience is not a decorative miniature of the desktop site. It is the version Google primarily evaluates.
Problems arise when the mobile version:
Test the site on a real phone, not only inside a resized browser window.
Check that the mobile version contains the same meaningful information, links and structured content as the desktop version.
This is the technical issue most likely to affect websites built as JavaScript applications.
Many AI builders create React or similar applications. In a purely client-side-rendered application, the server may initially return little more than:
The browser downloads the JavaScript, runs the application and then constructs the visible page.
A human visitor may see the finished website almost immediately.
A crawler that does not run JavaScript may see very little.
Yes.
Google processes JavaScript websites in three broad stages:
Google first fetches the initial HTML response. Pages eligible for processing are then queued for rendering. Google uses an evergreen Chromium renderer to execute JavaScript and processes the rendered HTML for indexing.
This means it is inaccurate to say that Google can never see client-side-rendered content.
But relying entirely on browser-side JavaScript introduces more moving parts:
The issue is therefore not:
Google cannot index JavaScript.
It is:
Does your website make important content immediately and reliably available, or does every crawler need to assemble the page successfully first?
With client-side rendering, the browser receives a relatively thin HTML shell and builds most of the page after downloading and executing JavaScript.
With server-side rendering, the server generates meaningful HTML for the requested URL before sending it to the visitor or crawler.
SSR does not automatically create good SEO. A server-rendered page can still have thin copy, poor titles, duplicate content or no backlinks.
It simply gives search engines a more dependable version of the page to work with.
Static generation creates HTML files in advance, usually when the website is built or published.
This can provide excellent speed and crawlability for pages that do not need to change every second.
The main risk is freshness. If the build process is not triggered when information changes, the static page can become stale.
Prerendering creates an HTML version of a JavaScript page in advance.
Some platforms serve that rendered version to crawlers while humans continue to use the client-side application.
This can make an older single-page application crawlable without rebuilding it as a completely server-rendered application.
However, the prerendered version must remain consistent with what users see.
Modern frameworks frequently mix approaches.
A website might use:
This is why platform-wide labels are increasingly unreliable.
The correct unit of inspection is the individual deployed route.
Yes. The answer changed substantially in May 2026.
New Lovable projects created from 13 May 2026 use TanStack Start with server-side rendering by default, except for certain Enterprise arrangements.
Older Lovable projects built with React and Vite continue to function as single-page applications for human visitors, but Lovable now prerenders public deployed URLs for search engines, social-preview bots and AI crawlers.
According to Lovable’s current documentation:
A Lovable site tested before these changes may genuinely have returned little more than a brand name and application shell.
That historical result remains useful as a record of the tested deployment.
It should not be presented as evidence that all current Lovable websites return empty HTML.
When reviewing a Lovable site now, record:
Lovable has solved much of the platform-level rendering problem. It has not solved keyword research, positioning, page strategy or authority for the person building the site.
Bolt now provides a feature called SEO Boost.
SEO Boost generates an HTML version of each project page in advance so search engines can receive the completed page without first assembling it from browser-side JavaScript.
However, two conditions are important:
Therefore, it is inaccurate to say that Bolt can never provide crawlable HTML.
It is equally risky to assume that every Bolt deployment is automatically prerendered.
A feature hidden behind a disabled toggle is not an SEO foundation until someone turns it on.
Base44 has also added a much broader SEO and generative-search system.
For applications published on custom domains, Base44 currently documents support for:
llms.txtThese are significant improvements.
But Base44’s documentation also says its apps are client-side rendered by default. It notes that many AI crawlers do not execute the application JavaScript or see the complete content directly.
This creates an important distinction:
Strong SEO files and metadata do not automatically prove that the full body content is present in the initial HTML.
A page may have:
…and still require JavaScript before its detailed pricing, FAQs, testimonials or service copy becomes visible.
Check whether important body content is available in:
Base44’s SEO tooling is now much stronger than a simple app shell with no metadata. But full-page crawlability should still be tested on the deployed application rather than inferred from the existence of an SEO dashboard.
Wix uses server-side rendering for standard editor components, which means ordinary page content can be returned as HTML for crawlers.
However, custom code, asynchronous data and client-only components can still create indexing problems.
A Wix page may therefore become difficult to index when:
noindexFor most standard Wix websites, the first things to examine remain:
Squarespace websites normally provide crawlable public-page content and do not generally behave like an empty single-page application shell.
If a Squarespace website is not appearing in search, investigate:
The platform can provide a technical base. It cannot decide which pages the business should create or why Google should prefer them.
Traditional Shopify theme storefronts use Liquid to generate HTML for products, collections and other storefront pages.
These pages are usually crawlable without depending entirely on client-side rendering.
Common Shopify SEO problems include:
However, Shopify can also be used as the commerce backend for a headless storefront.
In that case, Shopify itself does not determine how the public website is rendered. SEO depends on the frontend framework, routing, hosting and rendering configuration selected by the development team.
When you paste a website link into LinkedIn, Slack, Facebook or WhatsApp, the platform fetches information to create a preview card.
It usually looks for Open Graph metadata such as:
og:titleog:descriptionog:imageog:urlMany social-preview systems do not run a full browser application before creating the preview.
This means a website can work perfectly for human visitors but produce:
However, a blank preview does not automatically prove that the entire website is client-side rendered.
It may simply mean that:
Likewise, a good social preview does not prove that Google can index the page’s complete body content. Metadata and body rendering are related but separate tests.
No single test gives the full answer.
Use several layers.
Right-click the page and select View Page Source.
Do not use Inspect Element for this test. Inspect Element usually shows the page after JavaScript has modified it.
Search the source for:
If the main content appears, it is present in the initial HTML.
If it does not, Google may need to execute JavaScript before it can see it.
View Source is useful, but it does not show the final rendered HTML that Google may later process.
Google’s Rich Results Test can show the rendered HTML and identify eligible structured data.
Look beyond whether the page qualifies for a rich result.
Inspect the rendered output and check whether Google can see:
For a verified website, Google Search Console’s URL Inspection tool provides a more useful view of indexing.
Check:
Run a live test after major changes.
A developer can request the page using tools such as curl and inspect the server response directly.
For example:
curl -L https://example.com/pricing
Then search the returned HTML for visible page copy.
This gives you the initial response, not Google’s later rendered version.
Do not test only the homepage.
Check:
/services/pricing/about/contactSingle-page applications sometimes render the homepage correctly while nested routes return identical metadata, application shells or soft 404 pages.
A missing route should return an appropriate 404 status.
Some JavaScript applications return 200 OK for every URL and display an error message only after the application loads.
This can create soft 404s and waste crawl resources.
Visit:
https://example.com/sitemap.xml
https://example.com/robots.txt
Make sure:
Share or debug the URL on several platforms.
Verify that each important route has its own:
Remember that preview caches may take time to refresh.
| Rendering approach | What appears in the initial HTML? | Can Google index it? | Do social previews work? | Main risk |
|---|---|---|---|---|
| Server-side rendering | Full or substantial page content | Usually straightforward | Yes, when metadata is configured | Poor implementation or slow server response |
| Static generation | Prebuilt page content | Usually straightforward | Yes, when metadata is configured | Content can become stale |
| Prerendering | A pre-generated version for crawlers or all visitors | Usually crawlable when implemented correctly | Often, but metadata still matters | Stale cache or differences between versions |
| Pure client-side rendering | Often a thin application shell | Google may render it later | Frequently unreliable without initial metadata | Delay, failed rendering or non-JavaScript bots |
| Hybrid rendering | Varies by page or route | Usually strong when correctly configured | Usually strong | Inconsistent configuration between routes |
| Platform | Current rendering and SEO position | What users must verify |
|---|---|---|
| Lovable | New projects use SSR by default; older hosted projects receive crawler prerendering | Project age, hosting, route metadata and rendered output |
| Bolt | SEO Boost can generate page HTML in advance | Custom domain connected and SEO Boost enabled |
| Base44 | Extensive SEO files, metadata, indexing and GEO tools; apps remain client-side rendered by default | Whether full body content is visible in initial and rendered HTML |
| Wix | Standard page components are server rendered | Custom code and asynchronous content |
| Squarespace | Public page content is normally crawlable | Indexing settings, content depth and authority |
| Shopify themes | Liquid generates crawlable storefront HTML | Duplication, theme bloat and URL management |
| Headless Shopify | Depends on the chosen frontend | SSR, static generation, routes, canonicals and status codes |
| ConvertSite | Should be evaluated using the same public route-level tests | Initial HTML, rendered HTML, metadata, speed and crawl controls |
Sometimes it unlocks the feature required to fix part of the problem. Sometimes it does not.
A paid plan may provide:
But payment alone does not guarantee that these features are enabled or correctly configured.
The useful question is not:
Am I paying enough?
It is:
Which SEO capabilities are active on this exact deployment?
The correct fix depends on the failure.
Check for:
noindexWork on:
Indexing makes a page eligible. It does not make it competitive.
Depending on the platform, you may be able to:
Check:
AI website builders are changing quickly.
A platform that returned an empty application shell in one month may add prerendering or SSR the next. A builder with an impressive SEO dashboard may still leave critical body content dependent on JavaScript. A technically crawlable website may still have no realistic chance of ranking because its content is vague and nobody links to it.
Do not choose a platform based on a single badge that says “SEO-friendly.”
Ask:
Most importantly:
Can I verify all of this on the live website?
Because SEO is not a setting buried in a builder dashboard.
It is the combined result of what the server returns, what crawlers can process, what the page says, how the website is connected and whether the outside world has any reason to trust it.
Frequently asked questions answered

Emma Francey
Copywriter @ConvertSite