Advance Labs Inc. logo

Why isn’t my business showing up in AI search?

AI Search · 14 min read · Updated 2026-08-29

Short answer: If your business doesn’t show up in AI search, it’s almost never because the engine dislikes you. It’s because it can’t confirm who you are, can’t read your pages, or can’t find anything safe to quote. The usual culprits are missing Organization schema and sameAs links, content rendered by JavaScript that AI crawlers don’t execute, pages that open with slogans instead of extractable answers, no third-party corroboration, and sometimes an AI bot quietly blocked in your robots.txt. Each cause is concrete, diagnosable, and fixable — but only after you establish which of two very different problems you actually have.

## how_engines_decide

How does an AI engine decide whether to name you?

When someone asks ChatGPT, Perplexity, Claude, or Google’s AI Overview a buyer-intent question, the engine has to do three things before it will name a business: crawl and read the page, confirm which real-world entity the page is about, and find a short, defensible statement it can lift into its answer. If any one of those breaks, your business never makes it into the response. Most invisibility comes down to failing one of those three gates, and you can check each in a few minutes.

The mental model

AI engines don’t rank you, they cite you. A page that can’t be read, an entity that can’t be confirmed, and a claim that can’t be quoted are three separate failures with three separate fixes. Diagnose which gate is closed before you change anything.

There is a fork before all of that, and getting it wrong sends you down the wrong repair path entirely. Not appearing can mean two completely different things: the engine has nothing about you at all, or the engine knows exactly who you are and chose someone else. The first is a crawl or entity problem. The second is a relevance and corroboration problem, and every crawl or schema fix in this article will do nothing for it.

Not indexed, or not selected?

Ask an engine directly: “What is [your company name] in [your city]?” If it answers accurately, you are indexed and identified, and your problem is selection — the engine had you and preferred someone else. If it has nothing, is vague, or describes a different company, your problem is upstream at the crawl or entity gate. Run this before anything else; it splits the diagnosis in half.

## test_properly

Are you actually invisible, or did you run a bad test?

Most people arrive at this question after asking one engine one question once, seeing no mention of themselves, and concluding they are invisible. That is not a test, and acting on it wastes weeks. AI answers are not stable the way a search results page is: the same question asked twice can return different companies, and a logged-in session carries memory and personalization that a prospect’s session will not have.

  1. 01Ask by name first, then by category

    Start with “What is [company name] in [city]?” to establish whether you are indexed at all. Only then ask the category question a customer would actually ask, like “who does commercial roofing in London Ontario”. The gap between those two answers is the diagnosis: known but not chosen is a different problem from not known.

  2. 02Use a clean session with no memory or personalization

    Log out, or use a temporary or incognito chat. A logged-in assistant that has discussed your company before will name it in ways a stranger’s session never would, which produces a falsely optimistic result. You are trying to reproduce a prospect’s experience, not your own.

  3. 03Vary the phrasing and repeat several times

    Ask the same intent three or four ways — “best”, “who does”, “recommend a”, “top rated”. Answer engines retrieve different sources for different phrasings, and a single wording tells you almost nothing. Record which companies get named across all of them; consistent names are the real competitive set.

  4. 04Fetch your page the way a crawler does, not the way a browser does

    View the raw page source or fetch the URL with JavaScript disabled. The browser inspector shows the rendered DOM and will lie to you here. If your services, locations, prices, and answers are not present in that raw HTML, many AI crawlers cannot see them.

  5. 05Read your robots.txt for AI user-agents specifically

    Open yourdomain.com/robots.txt and look for GPTBot, ClaudeBot, PerplexityBot, and Google-Extended. A broad Disallow, or one inherited from a template or a staging config, blocks an entire engine silently. Nothing downstream matters if this is the problem.

  6. 06Confirm your Organization schema resolves to a verifiable entity

    Check that your Organization JSON-LD exists in the raw HTML and that its sameAs array points at records an engine can independently verify — your government business registry entry, your LinkedIn company page. Schema that only asserts your name proves nothing; the corroborating links are the entire point.

Write down who does get named

The competitors an engine names instead of you are the most useful diagnostic you have. They are a live sample of what that engine currently considers readable, identifiable, and quotable for your query. Comparing their pages against yours usually shows you the missing signal faster than any checklist.

## the_causes

What are the actual causes?

  • No entity confirmation: Without Organization structured data (schema.org JSON-LD) and a sameAs list pointing to authoritative records (your government business registry, LinkedIn company page, verified profiles), an engine can’t tell you apart from same-named businesses. Unsure who you are, it stays silent rather than risk naming the wrong company. This is the single most common reason.
  • JavaScript-rendered content: Many AI crawlers fetch your raw HTML and do not execute JavaScript. If your key facts, services, and answers only appear after a client-side render, the crawler sees an empty shell. Server-rendered or statically generated HTML is what they actually read.
  • Nothing extractable to quote: LLMs lift short, self-contained answer sentences. A page that opens with “We’re a passionate, results-driven team” gives the engine nothing to quote. A page that opens with “A roof replacement in Ontario costs $8,000–$15,000 and takes one to three days” does.
  • No structured data: Beyond Organization schema, the absence of FAQPage and HowTo markup means the engine has to guess at your content’s structure. Structured data is the format engines extract most reliably for answer boxes.
  • Blocked AI bots in robots.txt: Some sites disallow crawlers like GPTBot, ClaudeBot, PerplexityBot, or Google-Extended, sometimes deliberately, often by accident via an overly broad rule or an inherited template. A blocked bot can’t read you at all.
  • Thin third-party corroboration: Engines cross-check claims across sources. If no directories, industry lists, or independent pages mention you, your own website is the only evidence you exist, and a single self-published source is weak evidence.
  • A brand-new domain with no trust: A domain registered last month with no history, no inbound references, and no track record gives an engine little reason to treat it as authoritative. Trust compounds over time; new sites have to earn it through corroboration and clarity.
3 gates

An AI engine has to read your page, confirm your identity, and find something quotable before it names you. Most invisible businesses fail at the identity gate. They have no Organization schema linking them to authoritative records, so the engine never gets confident enough to cite them.

## symptom_to_fix

How do I match my symptom to the cause and fix?

SymptomLikely causeFix
Engine says it has no information about youNo entity confirmationAdd Organization JSON-LD with name, URL, logo, and a sameAs list to your registry and LinkedIn
AI describes you as a different companyWeak or missing disambiguationAdd sameAs to authoritative records; state plainly who you are and are not
Your page ranks on Google but is never cited by AIJS-rendered content crawlers can’t readServe key content as server-rendered or static HTML, not client-only
Engine summarizes your competitor instead of youNothing extractable to quoteOpen key pages with a short, factual answer to the buyer’s question
No AI engine seems to crawl you at allAI bots blocked in robots.txtAllow GPTBot, ClaudeBot, PerplexityBot, Google-Extended in robots.txt
You’re named only from third-party sites, never your ownThin corroboration / weak own-site signalsAdd structured data and build directory and profile listings
Engine describes you accurately by name but never recommends youSelection, not identity — you are indexed and being passed overBuild corroboration and publish directly comparable answers to the category question

Work the gates in order: read, then identity, then quotability. There’s no point polishing extractable answers on a page an AI crawler can’t fetch, and no point building corroboration if the engine still can’t confirm which business you are.

That last row is the one people misdiagnose most. If an engine describes you accurately when asked by name, your crawl and entity gates are already open, and adding more schema will change nothing. What is missing is a reason to prefer you for that specific question: an answer on your site that addresses it directly, and independent sources that corroborate the claim.

The checks above are per-page, and a site rarely fails on only one page. Our free audit crawls up to fifty of your pages and scores crawlability, metadata, schema, and AEO readiness out of 100, returning the failures as a prioritized list. That is the fastest way to tell whether a gate is closed sitewide or only on the one page you happened to inspect.

Run the free site audit

## fix_order

What’s the fastest thing to fix first?

  1. 01Check robots.txt for blocked AI bots

    Open yourdomain.com/robots.txt and confirm you’re not disallowing GPTBot, ClaudeBot, PerplexityBot, or Google-Extended. A single stray Disallow line can make you invisible to a whole engine. This is a five-minute check with an instant fix.

  2. 02Verify your pages render without JavaScript

    View the page source (not the inspector) or fetch it with JavaScript disabled. If your services, facts, and answers aren’t in the raw HTML, AI crawlers likely can’t see them. Move that content to server-rendered or static output.

  3. 03Add Organization schema with sameAs

    Add schema.org JSON-LD with your legal name, URL, logo, and a sameAs array linking to your government business registry and LinkedIn. This is the entity-confirmation gate and the highest-leverage fix once crawling works.

  4. 04Rewrite page openers as extractable answers

    Replace slogans with one plain, self-contained sentence that answers the question the page targets. Give the engine something safe to lift verbatim.

  5. 05Mark up FAQs and processes, then build corroboration

    Add FAQPage and HowTo schema, then claim directory listings and earn a few independent mentions so your own site isn’t the only evidence you exist.

The order is deliberate and it is roughly cheapest-and-fastest first. The first three are usually an afternoon of work between them, and they are the ones that unblock everything downstream. The last two are ongoing and compound, so starting them before the first three are done means waiting on work that cannot pay off yet.

## confirm_the_fix

How do I confirm the fix actually landed?

Fixing and verifying are different jobs, and skipping the second is why people conclude that AI visibility work does not do anything. The outcome you care about moves slowly and for reasons other than you. Separate what you are checking into four layers and hold each to its own clock, because a change that has not been crawled yet cannot possibly have changed an answer.

  • Markup layer, immediate: Did the signal actually ship? Re-fetch the raw HTML and confirm the Organization JSON-LD, the FAQ markup, and the answer sentence are present in the source rather than injected on render. This is binary and needs no waiting. Most disappointing outcomes trace back to a fix that never reached production HTML.
  • Crawl layer, days to weeks: Has anything actually fetched the change? Search Console’s URL Inspection shows the last crawl date and the rendered HTML Google is holding, so a stale copy there explains a stale answer. Your own server logs are the more direct evidence: look for GPTBot, ClaudeBot, PerplexityBot, and Google-Extended hitting the changed URLs.
  • Citation layer, weeks: Are engines naming you now? Re-run the exact prompts you recorded during testing, worded identically, in clean sessions. Changing the wording between runs invalidates the comparison, because a different phrasing retrieves a different set of sources. If you have Bing Webmaster Tools connected, its citation reporting shows which of your pages are actually being used to ground answers, which is the closest thing to a direct read on this.
  • Corroboration layer, months: Do independent sources now support the claim? Directory listings, profile pages, and third-party mentions accumulate slowly and are the slowest lever here. Treat movement at this layer as confirmation of a trend rather than as feedback on any single change.

Change one thing at a time if you want to learn anything

Shipping schema, a rewrite, and a robots.txt change together will probably help, but you will never know which one did it or what to do next on the following site. If you have the patience, fix the read gate, verify, then the identity gate, verify. The sequencing costs a week and buys you a repeatable process.

## faq

Why isn’t my business showing up in AI search?

Usually because an AI engine can’t do one of three things: read your page (content is rendered by JavaScript the crawler doesn’t execute, or an AI bot is blocked in robots.txt), confirm your identity (no Organization schema or sameAs links to authoritative records), or find something to quote (pages open with slogans instead of extractable answers). Thin third-party corroboration and a brand-new domain with no trust make it worse. Each cause is concrete and fixable.

Why is my company not appearing in AI search results?

Establish which of two problems you have before fixing anything. Ask an engine directly what your company is. If it answers accurately, you are indexed and identified, and the problem is selection: the engine had you and preferred a competitor, which points at thin corroboration and no directly comparable answer on your site. If it has nothing or describes a different company, the problem is upstream, at crawling or entity confirmation, and that is where the fix belongs.

Is my business blocked from AI search on purpose?

Sometimes, yes, by accident. Many sites disallow crawlers like GPTBot, ClaudeBot, PerplexityBot, or Google-Extended in robots.txt, often through an overly broad rule or an inherited template rather than a deliberate choice. Check yourdomain.com/robots.txt first; a blocked AI bot can’t read or cite you at all.

Can AI search engines read JavaScript-rendered pages?

Often not. Several AI crawlers fetch your raw HTML and don’t execute client-side JavaScript, so content that only appears after a render is invisible to them. If your key facts and answers aren’t present in the page source with JavaScript disabled, move that content to server-rendered or statically generated HTML. Check the raw source rather than the browser inspector, which shows the rendered DOM and will hide the problem.

How do I test whether AI search can find my business?

Use a clean session with no memory or personalization, because a logged-in assistant that has seen your company before gives a falsely optimistic result. Ask by name first to see whether you are indexed at all, then ask the category question a customer would ask, phrased three or four different ways. Record which companies get named across all the phrasings; those are your real competitive set and a live sample of what the engine currently finds quotable.

Why does AI describe my business but never recommend it?

Because your crawl and entity gates are already open and the problem is selection. The engine knows who you are and is choosing someone else, so more structured data will not change the outcome. What is missing is a reason to prefer you for that question: a page that answers it directly and plainly, and independent sources that corroborate the claim so your own website is not the only evidence.

How long until my business shows up after I fix this?

It depends which layer you are watching. Markup either shipped or it did not, and you can confirm that immediately in the raw HTML. Crawlers pick up changes in days to weeks, visible in Search Console’s URL Inspection or in your server logs as AI user-agents fetching the URL. Citation typically responds within weeks once the change has been crawled. Corroboration and domain trust compound over months, so start with the read and identity fixes for the fastest movement.

How do I know an AI visibility fix actually worked?

Check the layers in order rather than jumping to the outcome. Confirm the markup is in the production HTML, confirm something crawled it via Search Console or your server logs, then re-run the exact prompts you recorded before the change, worded identically in clean sessions. Identical wording matters, since a different phrasing retrieves different sources and invalidates the comparison. Fix one gate at a time if you want to know which change did the work.

## sources

## related_guides

## want_it_done_for_you

Not sure which gate is closing on you? Our AI-visibility audit runs the full 54-rule check (crawlability, entity proof, extractable answers, robots.txt) plus live tests of what ChatGPT, Google AI Overviews, Perplexity, and Claude say about you versus competitors, and hands you a prioritized fix list. CAD $750–1,500, three days.

See the AEO audit