AI Visibility / GEO · The Darkroom

Your competitor is cited in ChatGPT and you aren't

How to find out why in one afternoon — no tools, no dashboard, just the same prompts your customers are already typing.

2026-07-22 · 10 min read · by Italo Campilii
A clear water channel cutting straight through tall grass toward the horizon, Everglades Holiday Park
The short answer

Open ChatGPT, Perplexity, and Google, ask the questions your customers actually ask, and read exactly what gets cited when your competitor shows up instead of you. Nine times out of ten it's one of three things: your site is hard for AI crawlers to read, your content never says the answer in a quotable sentence, or your competitor has more consistent proof scattered across the web. You can find out which one applies to you in an afternoon, for free.

Owners keep asking me some version of this

I hear it in almost the same words every time. A business owner pulls up ChatGPT on their phone, types the question they know their customer types, and watches a competitor's name come up in the answer instead of theirs. Then they ask me the only question that matters: "Why them and not me? We do the same thing, we've been around longer, our site looks better."

The honest answer is that "looking better" was never the metric. An AI engine isn't browsing your homepage the way a person does. It's pulling passages it can extract cleanly, checking whether those passages actually answer the question, and cross-checking the claim against other things it has read about you elsewhere. A gorgeous homepage that says everything in a hero image and nothing in text is invisible to that process, no matter how good it looks to a human.

The good news is this isn't a mystery you have to pay someone to solve for you, at least not the first pass. You can run the same diagnostic I run for clients, in one sitting, using nothing but the AI tools you already have open in another tab right now.

What's actually happening under the hood

Before the checklist, it helps to know what these systems are doing when they answer a question. Two separate things determine whether you show up: whether the engine's crawler can retrieve and understand your pages at all, and whether what it retrieves gives it a clean, citable answer.

On the crawling side, the major AI engines publish exactly who they are and how to control them. OpenAI documents its GPTBot crawler and how to allow or block it in robots.txt. Anthropic documents ClaudeBot the same way. Perplexity documents its crawlers, including PerplexityBot and Perplexity-User. If any of these can't reach your pages, you're not in a ranking battle — you're not even in the room.

On the content side, Google's own guidance for AI Overviews and AI Mode is a direct extension of its long-standing Search Central documentation on AI features: pages need to be indexable, well-structured, and directly answer the query in language a system can lift. That's not a new set of rules — it's the same crawlability and clarity fundamentals Google has published for years, now applied to a generative layer instead of ten blue links.

And on the "does the system trust this claim" side, structured data still matters. The Schema.org vocabulary gives engines an explicit, machine-readable statement of who you are, what you offer, and how those facts relate to each other — which is exactly what a model needs when it's trying to decide between two similar-sounding businesses.

A QUESTION LANDS ON AN AI ENGINECan it reachyour pages?Is the answerquotable?Do other sourcesback it up?You getcitedWHERE MOST BRANDS DROP OUT OF THE CHAINBlocked / JS-onlyVague marketing copyInconsistent factsEach stage below its matching checkpoint is the specific reason a business drops out at that step.
Three checkpoints, three ways to fall out of the running before you're ever compared to a competitor.

The one-afternoon teardown

This is the same sequence I run before I'll take on a client, because it tells both of us whether the problem is fast to fix or structural. Set aside two to three hours, pull up a notes doc, and work through it in order.

1. Write down the five questions your customer actually types

Not your keywords — the real, conversational questions. "Best wedding photographer in Miami for a small ceremony," not "Miami wedding photographer." AI engines are answering conversational intent, and the phrasing changes what gets surfaced.

2. Ask each question in ChatGPT, Perplexity, and Google (AI Overviews or AI Mode)

Run each of your five questions in all three. Screenshot or paste the full answer into your notes doc, including any linked sources shown. Do this in a fresh, logged-out or incognito session where possible so you're not seeing a personalized answer skewed by your own search history.

3. For every answer, log three things

That third column is where the real information lives. If the same three competitor sources keep showing up across different questions, you've found the specific proof points the engines trust in your category.

4. Check whether the AI crawlers can even see you

Open yourdomain.com/robots.txt in a browser and look for GPTBot, ClaudeBot, PerplexityBot, or a blanket Disallow: /. If any of these are explicitly blocked, that alone can explain a total absence, and it's a one-line fix. Then view-source on your two or three most important pages — if the answer to your customer's question only appears after JavaScript renders it, and your page is otherwise a near-blank shell in the raw HTML, a crawler that doesn't execute your scripts sees nothing worth citing. Our deeper breakdown of the JavaScript problem covers how to confirm this and what to do about it.

5. Check whether your content actually states the answer

Go to the page you'd expect to rank for each of your five questions and read it the way a model would: does a single sentence, in plain language, directly answer the question? Or does the answer only exist as an implication spread across a paragraph of brand voice? If you have to infer the answer, so does the model — and it usually won't. This is the single most common gap I find, and it's a rewrite, not a redesign.

6. Check whether your schema tells the truth about who you are

View-source and search for application/ld+json. If it's missing, or it's a generic template that never mentions your actual services or location, that's a second easy fix. Validate what you have against the current Schema.org types for your business category — LocalBusiness, Organization, Service, whatever applies — rather than guessing at field names.

7. Check consistency, not just presence

Search your business name plus your city on Google and note whether your address, hours, and core description match across your site, your Google Business Profile, and the top two or three directories that show up. AI engines reconcile conflicting facts by trusting whichever version they see most often. If your own site disagrees with your Google Business Profile, you're voting against yourself. This is worth its own pass — see fixing inconsistent brand facts across the web if this turns up more than one or two mismatches.

By the end of step 7 you'll have a notes doc with five questions, three engines' worth of answers, and a column for each of crawlability, content clarity, schema, and consistency. Whichever column has the most red marks is where you start.

Reading the results honestly

Most teardowns land in one of three patterns. Learn to recognize yours before you start fixing anything, because the fix is different for each.

Pattern one — you're invisible everywhere. If you don't appear in any of the fifteen answers (five questions across three engines), start with crawlability. Nothing else matters if the engines can't read you. Fix robots.txt and JavaScript rendering first, then re-run the same five questions in two weeks.

Pattern two — you appear sometimes, never first. This usually means the crawling is fine but the content isn't quotable, or your proof is thinner than your competitor's. Rewrite the specific pages tied to your five questions so the answer is stated, not implied, in the first two sentences. See how schema and structured language work together to make a page easier for a model to extract cleanly.

Pattern three — a competitor is cited from a source that isn't even their site. A review platform, a "best of" roundup, a local directory. This tells you the engine trusts third-party proof over brand claims in your category, which means your next move isn't a content rewrite at all — it's earning presence on the same third-party sources. That's a different project with a longer timeline, and it's worth reading how ChatGPT actually decides which brands to recommend before you invest in it.

What to do with what you found

Don't try to fix everything from one afternoon of notes. Rank the gaps by how many of your five questions they touch, and start with whichever single fix would move the most questions at once — usually crawlability or a rewritten answer on your highest-intent page. Make the change, then re-run the exact same prompts in two to three weeks. AI engines update on different cycles than traditional search, so give it real time before judging the result, and keep the same notes format so you're comparing apples to apples.

If you want a repeatable version of this instead of a one-time pass, the DIY AI visibility audit turns this into a structured 45-minute routine, and how to audit your own AI citations goes deeper on tracking the pattern over months instead of one afternoon.

Questions people ask

Why does ChatGPT recommend my competitor and not me?

Usually one of three things: the AI engine can't crawl or read your site cleanly, your content never directly answers the question being asked in a citable sentence, or your competitor has more consistent third-party mentions across the web that back up their claims. Run the prompts yourself and read what gets cited to see which one applies to you.

Can I check this without any paid tools?

Yes. Everything in this teardown uses things you already have: a ChatGPT, Perplexity, and Google account, your site's robots.txt, and a view-source tab. A paid crawler or tracking tool speeds up monitoring over time, but the first afternoon of diagnosis needs none of that.

How often should I re-run this teardown?

Monthly is reasonable for most businesses, since AI engines update their indexes and training on different cycles and your competitors are publishing too. If you're actively fixing gaps, check weekly for the first month so you can see whether specific changes moved specific prompts.

— Italo & Ale
written from the studio floor · developed in the darkroom

Want the full teardown done for you?

We'll run this diagnostic against your real competitors, map every citation gap, and hand you a ranked fix list — not a generic PDF.

Get a free AI Visibility Audit →

Want to know if AI actually recommends your brand?

Run your free AI visibility audit →Start a 90-day GEO sprint →