How to get your website to show up on Google and in AI search
Why a website built with AI isn't showing on Google or in AI search, and how to fix it: set up Google Search Console, let AI crawlers reach your pages, and add schema markup with two copyable prompts.
Kinga MagyarPublished 16 min read
You've built your website with AI, published it, and searched for it on Google. Nothing. Or you asked ChatGPT about your business, and it described something you don't offer.
This guide fixes both in five steps. The first four make sure Google and AI tools can find and read your pages. The fifth states the facts about your business in a format they understand, using two prompts you can copy into an AI agent such as Claude Code, Codex, Cursor or Lovable.
Showing up on Google and ranking on the first page are different. This guide helps Google and AI tools find your pages and read the facts about your business correctly. Where your pages rank depends on how well they answer what people search for, compared with every other page on the same topic, and that takes longer.
Every change your AI agent makes only reaches Google and AI tools once you publish it, so publish after each step that changes your site.
Why isn't my website showing on Google?
The most common reasons, and the step that fixes each one:
- It's new. Google says it "can take a few weeks" to notice a new site. Steps 1 and 2 tell Google your site exists and where its pages are.
- Nothing links to it. Google finds new pages by following links from pages it already knows. A sitemap, in step 2, lists your pages so Google doesn't have to rely on links.
- A rule tells crawlers to stay away. A
robots.txtfile can block search engines and AI tools from your whole site. Step 3 fixes it. - It's on an address Google won't index. If you built with Lovable, your published
lovable.appaddress can be indexed, but a branded workspace address (your-app.your-workspace.lovable.app) never is. Lovable recommends a custom domain if you want your website to show up in search results.
Step 1: Set up Google Search Console
Google Search Console is Google's free tool for website owners. It shows whether Google has indexed your pages, and why not if it hasn't. Once your site starts appearing in results, its Performance report shows the searches people typed when your website came up, how often it appeared, how many people clicked through and your average position. It shows you the words people actually search with, so you can use the same words on your pages.
Sign in with your Google account, open the property selector and choose + Add property. You'll pick one of two types:
- Domain, if you have your own domain and can edit its DNS settings with the company you bought it from. It covers every version of your address, with or without www, and any subdomains. You verify it by adding a TXT record, which Google says can take up to two or three days to work.
- URL prefix, if your site is on an address like
your-app.lovable.app, or if you'd rather not touch DNS settings. Choose the HTML tag method: Google gives you a short line of code starting with<meta name="google-site-verification", and you add it to your homepage.
If you built with Lovable, you can let Lovable do this. Go to Connectors, then Google Search Console, then Add connection, and sign in with Google. Lovable adds the verification tag and verifies your site. Only workspace admins and owners can connect it.
With other tools, paste the line of code Google gives you into your AI agent and ask it to add the tag to the <head> of your homepage. Publish, then click Verify in Search Console. Leave the tag in place afterwards, because Google keeps checking for it.
Step 2: Submit your sitemap
A sitemap is a file that lists every page on your website, so Google doesn't have to find each one through links. It usually lives at https://yourbusiness.com/sitemap.xml.
In Lovable, open More, then SEO & AI search, and click Scan project. If the review says your sitemap is missing, click Try to fix. Lovable's docs say it doesn't always create one up front. If you connected Lovable to Search Console in step 1, it can also submit the sitemap for you.
With other tools, copy this prompt into your AI agent:
Check whether this website has a sitemap.xml that lists every public page. If it's missing or incomplete, create or fix it, and make sure it updates automatically whenever a page is added or removed. Then tell me the sitemap's full address on my live site.
Then, in Search Console, open Sitemaps, paste your sitemap's address into Add a new sitemap and click Submit. The status should change to Success.
Once that's done, add your website to Bing as well. Bing Webmaster Tools is Microsoft's version of Search Console, and its AI Performance report shows when your content is cited in Microsoft Copilot and in Bing's AI summaries. Choose Import sites from Google Search Console, and Bing adds your website already verified, together with your sitemap.
Step 3: Let search engines and AI tools in
Your robots.txt file is a short text file at https://yourbusiness.com/robots.txt. It tells crawlers, the programs search engines and AI tools use to read websites, which pages they may visit. If you don't have one, every crawler is allowed everywhere. A wrong rule in it can keep search engines and AI tools out of your whole site.
Google says there's nothing extra to do for AI Overviews and AI Mode: if your page is indexed and can appear with a snippet (the short description under a result), it can appear there too. For ChatGPT, OpenAI says sites that block OAI-SearchBot "will not be shown in ChatGPT search answers". There's no form for adding your website to ChatGPT, and OpenAI says placement "is not guaranteed".
To make sure your robots.txt lets the right crawlers in, copy this prompt into your AI agent:
Update this website's robots.txt file so that search engines and AI search tools can reach every public page. If the file doesn't exist, create it.
1. Allow these search crawlers: Googlebot, Bingbot, OAI-SearchBot, ChatGPT-User, Claude-SearchBot, Claude-User and PerplexityBot.
2. For these AI training crawlers, GPTBot, ClaudeBot and Google-Extended, use this setting: Allow.
3. Keep any existing rules that stop crawlers from reaching private areas, such as admin, account or checkout pages. A crawler with its own section in robots.txt ignores the general rules written for all crawlers, so repeat those rules in every section you add.
4. Keep the line with the sitemap's address. If there isn't one and the site has a sitemap, add it.
5. Don't change anything else on the site.
When you're done, tell me in one or two sentences what you changed, and remind me to publish the change.
If you'd rather AI companies didn't use your content to train their models, change "Allow" to "Block" in point 2 before you send the prompt. OpenAI says changes to robots.txt take about 24 hours to reach its crawlers.
Can crawlers read what's on your pages?
Crawlers that are allowed in still need to see your content. Many websites built with AI tools add their content with JavaScript after the page loads. Google runs JavaScript, but it also says "not all bots can run JavaScript". A 2024 study by the hosting company Vercel found that ChatGPT's and Claude's crawlers didn't run it, so they'd only see what's in the page's HTML before any JavaScript runs.
If you built with Lovable, check how old your app is. According to Lovable's docs, apps created since 13 May 2026 build every page on the server, so every visitor and crawler gets the full HTML. For older Lovable apps, the docs say pre-rendered HTML goes to verified crawlers, including ChatGPT and Claude. That wasn't our experience: littleparrot.app is an older Lovable app, and ChatGPT and Claude couldn't see its content until we added pre-rendering ourselves.
For a quick check, ask ChatGPT or Claude what a specific page on your site says. If it can't tell you, Lovable's docs say you can upgrade an older project to the newer setup. The upgrade uses credits, and your live site doesn't change until you publish. Whichever tool you used, the planning prompt in step 5 also checks what crawlers receive.
Step 4: Check which pages Google has indexed
For a quick check, search Google for site:yourbusiness.com, using your own address. If your pages appear, Google has indexed them. If they don't, it isn't proof that Google hasn't, because Google says this search doesn't show every indexed page.
The reliable check is in Search Console. A few days after submitting your sitemap, open the Page indexing report. It lists your pages as Indexed or Not indexed, with a reason for each group. The reasons you're most likely to see are:
- URL marked 'noindex': a tag on the page tells Google not to index it. That's right for pages behind a sign-in or a paywall. If it's a page you want in search, ask your AI agent to remove the tag from that page.
- URL blocked by robots.txt: a rule in your
robots.txtstops Google from reading the page. Run the prompt in step 3. - Discovered - currently not indexed: Google has found the page but hasn't read it yet. This is normal for a new site, so give it time.
- Crawled - currently not indexed: Google read the page and hasn't included it for now. Google says it "may or may not be indexed in the future", and there's no need to request it again.
When you publish a new page, your sitemap tells Google about it, so you don't need to do anything else. For a new page you want Google to look at sooner, or an important page you've changed, paste its address into the search bar at the top of Search Console. This is the URL Inspection tool. It tells you whether the page is on Google, and if it isn't, why. To ask Google to look at the page, click Request indexing.
Google says indexing "typically takes only a day or so, but can take much longer", and that asking again for the same page won't make it faster. There's also a daily limit, so keep it for the pages you care about most.
Step 5: Help Google and AI tools understand your website
Once search engines and AI tools can read your pages, they still have to work out what your business is: what you sell, who runs it, which page is a course and which is a blog post. You can state those facts for them with schema markup.
Schema markup is a short block of code that tells search engines and AI tools the facts about a page in a format they can read without guessing. It goes in your page's HTML, and visitors never see it. The format Google recommends is JSON-LD (JavaScript Object Notation for Linked Data), and the vocabulary comes from Schema.org, a shared set of types that the major search engines created together.
Google uses some types for rich results, the extra details shown with a search result, such as a list of courses or the trail of links above a page title. Its search gallery lists the types it currently supports. For AI search, nobody outside the AI companies can say how much schema markup affects which sites get cited, but it does give AI tools the same facts about your business, written in the same format on every page.
Schema markup only helps if every fact in it matches what visitors see. Google's structured data policies can stop a page from getting rich results when its markup describes content that isn't on the page.
Why we use two prompts
You can ask an AI agent to add schema markup for you. The risk is that it writes markup that looks correct and states things that aren't true.
Before publishing these prompts, we ran the first one on littleparrot.app with Claude Code. Our site already had schema markup on most pages, and some of it was wrong. On our Build Your First App with Lovable course page:
- The markup gave a price of €24, our monthly subscription price, while the page said the course was free until 18 October.
- It named both of us as the course's authors, while no author names appear on the page.
All of these were valid Schema.org, so a validator would have passed them. The plan found them because the prompt asks the agent to compare every fact in the markup with what visitors see on the page. So we split the work in two: one prompt plans the markup, and the other adds it once you've confirmed the plan.
Before you start
- Use an AI agent that can read your site's code, such as Claude Code, Codex, Cursor or Lovable. An AI chat assistant such as ChatGPT or Claude.ai can't see your project's files, so the prompts won't work there.
- Use a planning or read-only mode for the first prompt if your tool has one, such as plan mode in Lovable, as a second safeguard.
- Have your site's live address ready, such as
https://yourbusiness.com, and make sure the live site is up-to-date. - Make sure you can go back to the current version before you run the second prompt. Commit your project in Git, or check that your tool keeps a version history you can restore from.
Ask your AI agent to plan the schema markup
Copy this prompt into your AI agent and replace the address in square brackets with your own. The agent reads your site and writes one new file, structured-data-plan.md. It doesn't change any of your pages.
I want to add Schema.org structured data (JSON-LD) to this website so that search engines and AI tools can read the facts about it correctly. This is step one of two: plan only. Do not change any of the site's files. The only file you may create is a new file called structured-data-plan.md in the project root. Only read: do not sign in, submit forms, or call the site's backend, database or payment services.
My site's live address is: [https://your-domain.com]
Investigate the site:
1. Find every public page and page template. Where many pages share one template (such as blog posts, products or courses), treat the template as one entry and name two or three example URLs. Skip pages that are not meant to appear in search, such as login, account, checkout and error pages, and list what you skipped.
2. For each page or template, note its purpose, its canonical URL and the main content a visitor sees. If you can fetch the live pages, do so, because that shows what search engines and AI crawlers actually receive. If you cannot, say that you checked the code only.
3. Find any structured data the site already has and check whether it is correct and consistent.
4. Check how the site delivers its pages. Is structured data (existing or planned) present in the HTML the server sends, or is it only added by JavaScript in the browser? Google can read markup added by JavaScript, but some AI crawlers do not run JavaScript. Say which applies to this site. If the markup would only appear after JavaScript runs, describe the realistic options for this project and recommend one.
5. Choose the most specific Schema.org type that honestly describes each page. Do not add a type just because it exists. More markup is not better.
6. Use only facts that visitors can see on this website. Never invent or guess names, dates, prices, ratings, reviews, awards, credentials or contact details. Facts about things that appear across the site, such as the organisation or its people, may come from any page, such as an About page or the footer. If a useful fact is missing, add it to the questions for me instead.
7. Do not mark up content that visitors cannot see, or information that differs from what they see.
8. Identify the things that appear across many pages, such as the organisation, the website, authors, products or courses. Give each one a stable @id built from the live address (for example https://your-domain.com/#organization), so every page refers to the same thing in the same way. If a shared thing has its own website, such as a parent company, build its @id from that website's address instead.
9. Keep "valid Schema.org" separate from "eligible for a Google rich result". If you can read Google's current structured data documentation, check your recommendations against it and say that you did. If you cannot, say so and mark those judgements as unverified, because Google's rules change often.
10. Flag anything duplicated, contradictory, unnecessary or uncertain.
Write structured-data-plan.md with these sections, in this order:
## Summary
For someone who does not write code. Keep it under 150 words and use short sentences. Start with one sentence on whether the site is in good shape. Then list the most important problems or opportunities as up to five short bullet points. End with one sentence on whether search engines and AI crawlers will be able to see the structured data. Explain every Schema.org type you mention in a few simple words.
## Questions for you
Numbered, most important first, and no more than seven. Keep each question to one or two short sentences, followed by your recommended answer, so I can simply accept it. Include facts you could not find on the site that I could provide, such as a logo, social profiles or a founder's name. Only ask what changes the result. If you have no questions, say so.
Your recommended answers must not require changing what visitors see on the site. If a change to the visible content would help, list it under a separate heading, Optional content changes, and say that it will only happen if I ask for it.
## What will change
A short list of the pages or page types that will get structured data, most important first.
## Implementation details
This section is for the AI agent that implements the plan. Include:
- A table with one row per page or template: URL or template, page purpose, existing markup, proposed type(s), key properties and where each fact comes from, shared @id references, Google rich result relevance, and uncertainties.
- The shared entity model, with every @id value.
- Where in the code the markup will live, and how it will reach the HTML.
- Implementation rules.
- The checks to run after implementing.
## Other things I noticed
If you noticed problems that are not about structured data, such as broken pages or wrong canonical URLs, list them here briefly. Do not include them in the plan.
Then stop. Do not implement anything. In the chat, tell me in three or four sentences what you found, and ask me to read the Summary and Questions for you sections of structured-data-plan.md.
The plan can take a while. On our site, it took the agent about ten minutes.
Read the Summary and the questions
Open structured-data-plan.md. You only need to read the first two sections:
- Summary: under 150 words on what your site has now, the most important problems, and whether search engines and AI crawlers can see the markup.
- Questions for you: up to seven decisions, each with a recommended answer.
The rest of the file is written for your AI agent, so you can skip it.
While you read, check three things:
- Does every fact match your site? Invented details usually show up in names, prices and dates.
- Is anything about your business guessed? If a question asks for something you know, such as which logo to use or which social profiles are yours, answer it.
- Do you agree with the recommended answers? They're sensible defaults, and there's often more than one reasonable choice. When we ran the prompt twice on our site, the two plans disagreed on whether to keep our FAQ markup.
If something in the plan looks wrong, ask the agent to correct that part before you move on. If the plan has a wrong fact in it, the agent will put that wrong fact into your markup, even if the code itself is written correctly.
Ask your AI agent to add the schema markup
When you're happy with the plan, copy the second prompt. If you accept every recommended answer, you can use it as it is. If you don't, replace "Use your recommended answers." with your own answers, for example: "1: yes. 3: use /logo.png. For the rest, use your recommended answers."
Implement the structured data plan in structured-data-plan.md. If you cannot find that file, stop and ask me for it.
My answers to the questions in the plan: Use your recommended answers.
Rules:
1. The plan and my answers are the source of truth. Where I have not answered a question, use your recommended answer, except for facts about me or my business: leave those out rather than guess. If you think something outside the plan is needed, stop and ask me first.
2. Use JSON-LD.
3. Use the live address and the @id values from the plan. Describe shared things (such as the organisation, the website and authors) the same way everywhere, and refer to them by @id instead of redefining them differently on each page.
4. Include only facts that visitors can see on the site, or that I gave in my answers. Leave out anything unknown.
5. Do not change the visible text of any page, unless my answers explicitly ask for one of the optional content changes in the plan.
6. Keep existing markup that the plan says to keep. Remove or replace existing markup only where the plan says to.
7. Make sure every page ends up with exactly one copy of its structured data, including when a visitor moves between pages without a full reload.
8. If the JSON-LD includes text from a database or content system, escape it so the text cannot break the page (for example, write < as \u003c).
Check your work:
- Build or run the site and look at the actual HTML of at least one page of each type. Confirm the JSON-LD is present once, parses as valid JSON, and matches the visible content and the canonical URL.
- If the plan says the markup must be in the HTML the server sends, confirm it is there before any JavaScript runs.
- Check for duplicate entities, conflicting @id values and contradictory properties.
- Only report a check as passed if you actually ran it. Do not say a page is eligible for a Google rich result unless Google's current documentation supports that.
When you are done, add a section called "What changed" to the end of structured-data-plan.md: for each page type, what you added, changed or kept, which checks you ran and their results, and any warnings that remain. Then, in the chat, give me a short summary in simple wording and a list of three to five of my live URLs to test once the changes are published, using Google's Rich Results Test (https://search.google.com/test/rich-results) and the Schema Markup Validator (https://validator.schema.org).
None of the recommended answers change what visitors see on your site. The plan lists any changes to your visible pages separately, and the agent only makes them if you ask for them in your answers.
Test your pages
Once you've published, take the three to five pages the agent listed in its last message and paste each page's address into these two tools:
- Google's Rich Results Test shows which Google rich results a page can get.
- The Schema Markup Validator checks all of your markup against the Schema.org vocabulary, including types Google doesn't use.
What if ChatGPT says something wrong about my business?
OpenAI doesn't offer a way to correct facts about a business. You can tap the thumbs-down under a wrong answer to send OpenAI feedback.
When ChatGPT searches the web, it cites the pages it used, so start there:
- If the answer cites your website, the wrong fact may be on one of your pages, or in your schema markup. The planning prompt in step 5 checks your markup against your pages, so it will show where they disagree. Read the pages themselves for anything out of date.
- If it cites another website, such as an old directory listing or review site, that's the page to update yourself, or to ask the site's owner to correct.
- If it cites nothing, ChatGPT may be answering from what it learned during training, or it couldn't reach your site. Use the prompt in step 3 to make sure OAI-SearchBot is allowed.
The more clearly and consistently your own pages state the facts, the better the chance that AI tools repeat them correctly.
Make Your Vibe-Coded App Work for Real Customers
We're testing interest in an upcoming Little Parrot learning path called Make Your Vibe-Coded App Work for Real Customers. It covers the work that comes after a first prototype: putting your project in GitHub, testing sign-up and payments, finding evidence when something breaks, and getting ready to launch with a domain, analytics and SEO.
The learning path isn't available yet. If you'd like us to tell you when it opens, join the waitlist.
If you only do steps 1 and 2 today, you'll know within a few days whether Google has found your website, and the reason if it hasn't.
Frequently asked questions
How long does it take for my website to show up on Google?
Google says it can take a few weeks to notice a new website. Once you've asked it to index a page in Search Console, indexing typically takes a day or so, but it can take much longer, and Google doesn't guarantee it. Asking again for the same page won't make it faster.
How do I get my business on ChatGPT?
There's no form for adding a website to ChatGPT. Make sure your robots.txt file doesn't block OAI-SearchBot, the crawler ChatGPT search uses, and that your pages state what your business does clearly. OpenAI says any public website can appear in ChatGPT search, but placement isn't guaranteed.
How do I get my website on the first page of Google?
Nobody can promise that. Getting indexed comes first, which is what this guide covers. After that, where a page ranks depends on how well it answers what people search for compared with other pages on the same topic, and that usually takes time and links from other websites.
Can a lovable.app website show up on Google?
Yes, if it's published and public. Branded workspace addresses (your-app.your-workspace.lovable.app) are never indexed. Lovable recommends a custom domain if you want your website to show up in search results.
Do I need special files or markup to appear in Google AI Overviews?
No. Google says a page only has to be indexed and eligible to appear in Google Search with a snippet. There are no extra requirements or special AI files for AI Overviews or AI Mode.
What is schema markup in simple terms?
Schema markup is a label in your page's code that states the facts about the page in a format machines can read: what the page is, who it belongs to and how it connects to your other pages. Visitors don't see it, but search engines and AI tools read it.
Does schema markup help with AI search?
Nobody outside the AI companies can say how much it affects which sites AI tools cite. It gives them the same facts about your business, written in the same format on every page. AI tools can only read it if the markup is in the HTML your server sends, because some AI crawlers don't run JavaScript.
Is FAQ schema still worth adding?
FAQ rich results stopped appearing in Google Search on 7 May 2026. FAQ markup is still valid Schema.org, and other tools may read it, but its answers have to match the questions and answers visitors see on the page. The planning prompt in this guide asks you whether to keep it.