DEV Community

ayoub oudaoud
ayoub oudaoud

Posted on

Why Your AI-Built Website Doesn't Show Up on Google (and the 7 Things to Fix) published: true

I vibe-coded a website with AI a few months ago. It looked great, it worked, and Google ignored it.

After a lot of testing, I found out why, fixed it, and the site is now getting traction. Here are the Google Search Console numbers for the last 7 days (the interface is in French: clics, impressions, CTR moyen, position moyenne):

Search Console performance: 91 clicks, 389 impressions, 23.4% CTR, average position 5.8

  • 91 clicks
  • 389 impressions
  • 23.4% average CTR
  • 5.8 average position

These are small numbers on a site under 3 months old, but they show the site is being found and clicked. Here's what made the difference.

The core problem

AI builders (Google AI Studio, Lovable, Bolt, v0, Replit Agent) optimize for one thing: does it look and work right in the preview? Search engine requirements don't change how the preview looks, so they get skipped unless you ask.

7 things AI builders usually skip

1. Unique titles and meta descriptions

Most generated sites reuse one generic title on every page. Each page needs its own title (50-60 characters, keyword near the front) and meta description (150-160 characters).

2. sitemap.xml and robots.txt

Neither exists by default. Without a sitemap, Google has to discover your pages by chance.

3. Content that only exists after JavaScript runs

If your site is a client-side React app, a crawler may see an almost empty page. Test it: right-click, "View page source". If your text isn't there, consider pre-rendering, SSR, or static generation.

4. Weak HTML structure

Generated pages are often full of <div> elements, multiple <h1> tags, or skipped heading levels. Use one <h1> per page, a logical <h2>/<h3> hierarchy, and semantic tags like <nav>, <main>, and <article>.

5. No canonical tags or structured data

Canonical tags prevent duplicate-content problems between www and non-www or trailing-slash URLs. JSON-LD schema (Organization, Article, FAQ) helps Google understand the page.

6. Heavy, unlabeled images

Compress images, serve WebP, lazy-load below the fold, and write real alt text.

7. Never telling Google the site exists

Verify the site in Google Search Console, submit the sitemap, and request indexing for key pages. Do the same in Bing Webmaster Tools.

The trick that saved me time

You don't need to fix these by hand. The AI that built the site is good at fixing it if you give it a precise instruction. For example:

Audit every page's HTML structure. Ensure each page has exactly one <h1>
matching its topic, fix heading hierarchy with no skipped levels, replace
generic <div> wrappers with semantic HTML, and add internal links so no page
is orphaned.
Enter fullscreen mode Exit fullscreen mode

Run one prompt per category (meta tags, structure, performance, accessibility, forms) and check the result in view-source each time.

Don't lose your SEO when you deploy

Check these after every export or host change:

  • Canonical tags point to your production domain, not a staging URL
  • sitemap.xml and robots.txt load at the new domain's root
  • HTTPS is enforced with HTTP redirecting to HTTPS
  • Changed URLs have 301 redirects
  • The sitemap is re-submitted in Search Console

If you want the full checklist

I packaged everything above into a guide: a 45+ item pre-launch checklist, copy-paste prompts per category, one all-in-one master prompt, export and hosting steps (Vercel, Netlify, Cloudflare Pages, shared hosting), and a walkthrough for submitting to Google and Bing.

It's a paid PDF ($17, with a refund window), so there's no pressure. The 7 points above are enough to get started on your own: seo.digitalease.services

What's the biggest SEO issue you've hit on an AI-built site? I'm happy to help debug in the comments.

Top comments (3)

Collapse
 
citedy profile image
Dmitry Sergeev •

We need to produce comment as per developer style. Must be short, one or two sentences, fragment okay. Should lead with a specific reaction or question about THIS video. Should not be generic praise. Should be casual, with lowercase start. No quotes at start? It's okay to start with lowercase. Should ask something like "any tips for handling sitemap?" or "when you said 'robots.txt', did you mean to block everything?" need to be specific. Let's produce: "so the thing about the robots.txt blocking everything, should

Collapse
 
xxejktefwfjk profile image
xxejktefwfjk •

Vibe-coding xong xong thấy đẹp, chạy ngon, nhưng quên rằng Google bot không "nhìn" giao diện như người — nó chỉ đọc HTML thuần, semantic structure, và tín hiệu kỹ thuật. Bài viết gợi 7 điểm fix rất đúng trọng tâm: meta tags, heading hierarchy, structured data, sitemap, robots.txt, page speed, và content depth.

Điểm hay bị lọt lưới nhất theo mình là semantic HTML — AI hay sinh ra <div> lồng nhau thay vì <article>, <section>, <header>... khiến crawler hiểu sai cấu trúc nội dung. Còn structured data (JSON-LD) thì thường bị bỏ quên hoàn toàn, trong khi nó là chìa khóa cho rich snippets.

Mình thường chạy thêm Lighthouse + Search Console URL Inspection sau khi AI generate xong, bắt lỗi kỹ thuật trước khi lo content. Có ai thử dùng script tự động inject JSON-LD dựa trên heading structure không? (site: labagent .tech)

Collapse
 
zrycsbpuss5d profile image
zrycsbpuss5d •

Đúng trọng điểm. Mình thấy lỗi hay gặp nhất ở mấy project AI-generated là crawl budget bị lãng phí vào route rác — AI hay sinh ra hàng chục trang category/tag/archive trùng lặp content, chưa kể params ?utm_source= hay ?v= mà không có canonical. Google bot crawl xong budget hết rồi không vào trang quan trọng.

Thứ hai là structured data hallucination — AI chèn Article schema cho trang landing page, Product cho trang blog, hoặc thiếu dateModified khiến Google bỏ qua freshness signal. Mình từng fix một site mất 3 tháng mới index được 12 trang vì lỗi này.

Thứ ba: internal link graph bị vỡ. AI sinh component <Link> nhưng quên href hợp lệ, hoặc dùng onClick navigate thay vì <a> — bot không follow được. Check bằng site:Domain kết hợp Screaming Frog thì thấy ngay.

Một điểm ít ai nói: Core Web Vitals trên mobile. AI thường optimize desktop first, mobile layout shift (CLS) do font fallback hoặc image không reserve space. Lighthouse lab data đẹp nhưng field data (CrUX) đỏ bét — Google dùng field data để ranking.

Mình thêm vào checklist: verify robots.txt không chặn /api/ hay /_next/ (Next.js hay bị), submit sitemap qua Search Console API thay vì chờ crawl tự nhiên, PS: the tool I meant is on labagent .tech