Discoverability & AEOJuly 13, 20269 min read

Your Vibe-Coded Website Looks Great. Here's Why Nobody's Finding It.

Vibe-coded websites are built to look great, and they do. What the tools don't build is the infrastructure underneath: the schema markup, entity graph, AI crawler access, and content structure that search engines and AI engines use to find and cite a business. In almost every vibe-coded site I've reviewed, the same gaps appear. To a human, the site looks finished. To every engine that matters, it barely exists.

Vibe coding, the practice of building software and websites by describing what you want in plain English and letting an AI tool write the code, was named Collins Dictionary's Word of the Year in 2025. App builders like Lovable, Bolt, v0, and Replit let a founder go from idea to deployed website in an afternoon. AI coding assistants like Cursor, Claude Code, and GitHub Copilot do the same for anyone building directly in a framework like Next.js or React.

The output looks great, the pages load, and the design is clean. You launched feeling like the hard part was done.

Here's what the demos don't show you: in almost every vibe-coded website I've reviewed, the same infrastructure gaps appear. The site looks finished to a human visitor. To a search engine or AI engine, it barely exists.

What vibe coding actually produces

Vibe coding tools are excellent at the visible layer: layout, colour, copy, navigation, images. They produce sites that look as polished as anything a design agency would charge tens of thousands for.

This isn't a criticism of the tools, but what they habitually don't produce is the infrastructure underneath. The structured data that tells search engines who you are. The entity graph that lets AI engines identify and cite your business. The robots.txt configuration that keeps the AI search crawlers free to reach your content. The content structure that makes your pages extractable rather than just readable.

These things can be built into a vibe-coded site. But they require knowledge most people vibe coding a website simply don't have, and don't know they need. The tools are generalists. AEO, schema markup, entity graph construction, and AI crawler configuration are specialist disciplines.

There are two kinds of vibe coder, and the gaps show up differently. If you build in an app like Lovable or Bolt, the tool makes the technical decisions for you, and you can only change what it exposes. If you build in Next.js or React with an AI coding assistant, you control everything, but the assistant writes what you ask for, and nobody asks for schema or server rendering until something breaks.

A founder vibe coding their own site is doing the equivalent of self-diagnosing a complex medical condition: the information exists, the tools exist, but without the training to know what you're looking for and why it matters, you won't find it. And in this case, the cost isn't a misdiagnosis. It's invisibility.

These aren't advanced features. They're the foundation. And 96.55% of pages in Ahrefs' index get no traffic from Google at all. A new site starts from nothing, and a vibe-coded site that skips the infrastructure has less to climb out with.

The JavaScript problem: why AI crawlers can't read your site

Where this bites depends on how the site was built.

If you used an app builder: Bolt projects, and Lovable apps built before May 2026, are client-rendered single-page apps. The browser loads a near-empty HTML page, then JavaScript runs and builds the content you see. Lovable has built new apps with server-side rendering since May 2026, and pre-renders older ones for verified crawlers.

If you built in React or Next.js with an AI assistant: it depends on the setup. A plain React app (built with Vite, for example) renders in the browser by default, with the same near-empty HTML. Next.js renders pages on the server by default, so the page itself arrives as HTML. The gap there is content fetched in the browser after the page loads, typically inside a useEffect. It shows up in the browser preview, so the assistant's code looks finished, but it isn't in the HTML.

For a human visitor using a browser, this is invisible. The page appears fully formed in milliseconds.

For AI crawlers, anything that isn't in the initial HTML doesn't exist.

GPTBot (ChatGPT), ClaudeBot (Claude), PerplexityBot, and most other AI crawlers do not execute JavaScript. They fetch the static HTML and move on. If your content only exists after JavaScript runs, those crawlers see nothing; the HTML source is essentially empty without it. Every word you've written, every service you offer, and every answer you could provide: invisible.

This isn't a fringe issue. It's still the default for some of the most popular app builders, and an easy mistake in a hand-built Next.js or React site. And it doesn't show up in your analytics, because the crawlers don't leave a trace when they find nothing. The site just quietly doesn't exist in AI search. Run your own site through the AI crawler checker to see exactly what these crawlers see.

Google handles this differently: it crawls the HTML first, then queues the page to render its JavaScript. That's often seconds, sometimes longer, and it doesn't help with AI citation at all.

The schema vacuum: why AI engines don't know who you are

Even if the crawlers can reach your pages, there's a second problem: they don't know who you are.

Search engines and AI engines don't just read text—they build models of entities. People, businesses, services, topics. To be cited by ChatGPT, Perplexity, or Claude, you don't just need accessible content. You need to be a recognised entity—something the engine can identify with confidence and attribute accurately.

Schema markup is how you declare that identity. A Person entity with your name, job title, and sameAs links to your verified profiles. A ProfessionalService entity with your business name, services, and area served. FAQPage schema on every content page. Article schema on every piece of content, with the author linked back to your Person entity via @id.

App builders are starting to help: since May 2026, Lovable's SEO and AI search tab audits structured data and can add it. The others will generate schema if you prompt them. In Next.js or React, nothing is added unless you or your assistant write it; the JSON-LD goes in a script tag in the page or layout. Either way, no tool builds a connected entity graph unless you know to ask, know what to ask for, and know how to verify the output is correctly wired. That's three layers of specialist knowledge most founders who are vibe coding a website simply don't have.

In almost every AI-built website I've audited, the schema picture is the same: empty. The site has a title tag and a meta description. That's it. No entity graph. No sameAs links. No service declarations. No FAQ schema. The engine can read the prose, but it can't build a confident model of the business behind it, and so it doesn't cite it.

Why you're stuck on social media

Here's where the invisible infrastructure problem becomes a visible business problem.

A site that search engines can't confidently read and AI engines can't confidently identify has one path to traffic: bring it yourself. Which means spending all your time on social media, posting on LinkedIn, Instagram, TikTok, or wherever your buyers spend time, and driving them to the site through your own effort and consistency.

This works, up to a point. The problem is the model: post once, get a day or two of traffic; stop posting, traffic stops. The platform algorithm decides how many people see your content. You're renting the audience, not owning it. And when the posts stop working—when reach drops, when the algorithm changes, when the effort stops feeling sustainable—most business owners make the predictable next move: they start running paid advertising. Now they're not just renting the audience. They're paying for the privilege of reaching it.

Organic search works differently. A well-structured page on a site with proper infrastructure earns traffic for months or years without ongoing effort. The article you publish today can still be bringing buyers in three years; not because you promoted it, but because it answered a question someone searched for. That's compounding. Social media vs organic traffic isn't a close comparison:

SEO drives over 1,000% more traffic than organic social media (BrightEdge, 2019).

And for AI citation specifically, in Microsoft Clarity's study of publisher sites, visitors referred by ChatGPT, Perplexity, and other AI engines signed up at 1.66%, compared to 0.15% from standard search. The founder paying to reach an audience on social media is sitting two layers away from traffic that converts at eleven times the rate. The only thing between them and it is infrastructure.

The social media merry-go-round isn't a strategy failure. It's what happens when the infrastructure underneath the site was never built. You're not posting because it's the best use of your time. You're posting because it's the only option you have.

What a vibe-coded site needs before it can rank

Most vibe-coded sites are invisible in AI search for fixable reasons. The infrastructure wasn't built, but it can be. The site doesn't need to be rebuilt from scratch; it needs the foundation installed underneath what already exists.

Rendering. Confirm that your core content exists in the HTML source before JavaScript executes. Disable JavaScript in your browser and see what remains. If the page is blank or near-blank, the rendering needs fixing. In an app builder, check whether the platform offers server rendering or pre-rendering. In React, move to a framework that renders on the server, or pre-render your pages. In Next.js, move data fetching into Server Components so the content is in the HTML.

Schema markup. Implement a Person entity, a ProfessionalService entity linked via founder, Service schema on each offering, Article schema on every piece of content, and FAQPage schema on every page, all wired together using @id references. In an app builder, that means its SEO settings or a precise prompt. In Next.js, render the JSON-LD in a script tag in your layout and pages.

robots.txt. Confirm the file exists, references your sitemap, and doesn't block the AI search crawlers: OAI-SearchBot, ChatGPT-User, Claude-SearchBot, Claude-User, PerplexityBot. In Next.js, app/robots.ts generates it.

Content structure. Every page and article should open with a direct, self-contained answer in the first 40–60 words. Content structured for extraction performs in AI search. Content structured for narrative reading does not.

Entity signals. Your name, title, and business description should be identical across your site, LinkedIn, and every external platform where you appear. Inconsistency confuses the entity model AI engines are building for you.

None of this is what a vibe coding tool will do for you. None of it is visible in the browser. And yet, all of it determines whether the site you built actually works.

The PRISM Diagnostic is 60 minutes on exactly this layer: what your vibe-coded site is missing underneath, and what to fix first. USD $350.See the Diagnostic→

Aimee Q Devlin is a Systems and Infrastructure Architect based in San Miguel de Allende, Mexico. She works with founders and operators of established businesses who are ready to rebuild their systems properly—including the infrastructure that makes those systems discoverable. The PRISM Diagnostic is where engagements begin.

Can a vibe-coded website rank on Google?

Yes, but not without additional infrastructure work the vibe coding tools don't do by default. The main blockers are JavaScript rendering (many vibe-coded sites serve content via client-side rendering, or fetch it in the browser after the page loads, and AI crawlers can't read either), missing schema markup, and no entity graph. A vibe-coded site with correct server-side rendering, proper structured data, and AI search crawlers left unblocked in robots.txt can rank—but those things need to be implemented deliberately after the tool has done its work.

Why is my AI-built website not showing up in search?

The most common reasons are: the site is built on client-side rendering and crawlers are reading a near-empty page; there is no schema markup so the engine can't identify the business as a recognised entity; the robots.txt is missing or blocking crawlers accidentally; and the content isn't structured for extraction. These problems are invisible in the browser; the site looks complete to a human visitor, but the infrastructure search engines and AI engines need was never installed.

Do AI website builders include SEO?

AI website builders handle surface-level SEO: meta titles, meta descriptions, and basic URL structure. Some are going further: since May 2026, Lovable builds new apps with server-side rendering and can audit and add structured data. None of them builds a connected entity graph, configures robots.txt for AI crawlers, or structures content for extraction by AI engines unless you ask. If you build in Next.js or React with an AI coding assistant, nothing is added unless you or the assistant write it. Either way, the infrastructure layer needs deliberate implementation.

What does a vibe-coded website miss for SEO and AEO?

Vibe-coded websites consistently miss five things: correct server-side rendering (so crawlers can read the content), schema markup (so search engines and AI can identify the business as an entity), robots.txt configuration for AI crawlers, an entity graph linking Person, ProfessionalService, and Service entities via @id references, and answer-first content structure with FAQPage schema. Each of these independently reduces search and AI visibility. Together, they produce a site that is functionally invisible to organic discovery.

Why am I getting no organic traffic from my new website?

If your site was built with a vibe coding tool or AI website builder, the most likely cause is that the infrastructure layer was never built. Check: disable JavaScript in your browser and see what content remains; run the site through Google's Rich Results Test to check for schema markup; verify your robots.txt doesn't block the major search and AI search crawlers; and run the domain through a free tool like Semrush or Ubersuggest to see whether any organic footprint is building.

Is social media a substitute for SEO?

No, and the difference matters for how you run your business. Social media traffic is borrowed: you earn it by posting, and it stops when you stop. Organic search traffic is owned: a well-structured page on a site with proper infrastructure keeps earning traffic for months or years without ongoing effort. SEO drives over 1,000% more traffic than organic social media (BrightEdge). For founders on vibe-coded sites with no infrastructure, social media often becomes the default traffic strategy not because it's better, but because the site was never built to be found independently.


→ The PRISM Diagnostic

→ What is an AEO Audit?

→ Schema Markup for Founders

›Sources
Aimee Q Devlin—Systems Architect and infrastructure builder based in San Miguel de Allende, Mexico

Aimee Q Devlin

Aimee Q Devlin is a Systems and Infrastructure Architect based in San Miguel de Allende, Mexico. She works with founders and operators of established businesses whose sites aren't ranking, converting, or being cited by AI—and builds the infrastructure that fixes it properly. She developed the PRISM Framework, an AEO framework for making founder-led businesses visible to ChatGPT, Perplexity, and the AI engines shaping discovery in 2026. The PRISM Diagnostic is where engagements begin.

About Aimee →

Something isn't working. Let's find out what.

You don't need to have it diagnosed before we talk. That's what the PRISM Diagnostic is for. 60 minutes, USD $350.

See the PRISM Diagnostic