All promptsAnalysis and reporting

Run a competitor analysis in four passes, one input at a time

A four pass competitor analysis prompt that runs one stage at a time, refuses to move on without the inputs, and states what it cannot see.

Works in
ChatGPT, Claude, Gemini
You need
Homepage and pricing page text from both sites · Both URL lists, from each sitemap · One page of yours and one of theirs targeting the same query
Written for
best chatgpt prompts for competitor analysis
98A

Scored by our own engine

This page, run through the audit we sell. Measured 4 August 2026.

Score your own page →

Ask a model to analyse a competitor and it will write you something. It has never seen their site, their traffic or their links, so what arrives is a well organised guess in the voice of a consultant. The prompt below splits the job into four passes and refuses to run any of them without the inputs that pass needs, which turns most of the guessing into a request for a file.

Why one big competitor prompt always fails

A model handed one instruction covering positioning, content, pages and strategy will answer all four, because stopping is not a behaviour it has unless you give it one. Three of those four answers rest on nothing.

Passes fix that by making each stage depend on a specific paste. Pass 1 needs two homepages. Pass 2 needs two URL lists. Pass 3 needs two page texts. If the paste is missing, rule 1 makes the model ask for it and stop, so a thin input produces a short reply instead of a long invention.

Which pass to run, and when

Run pass 1 when you are new to the competitor and pass 3 when you already know them and are losing one specific query. The passes are ordered, not compulsory.

Positioning is the pass to run before a pricing change or a homepage rewrite. Coverage is the one to run before planning a quarter of content, and it is narrow enough to deserve its own page: the two sitemap content gap prompt does that job alone, with tighter rules about what a URL can and cannot tell you. Page against page is the pass to run the week you notice a competitor above you on something you care about.

Pass 4 is the only one that produces recommendations, and it can only use what the first three found. That constraint is the whole design.

The line that matters most

Every pass opens by naming what it cannot tell you. Read those four lines as a set at the end.

They will say the same sort of thing each time: nothing about links, nothing about traffic, nothing about how either page currently ranks. That is not a weakness in the prompt, it is the honest boundary of what any pasted input contains. A competitor analysis that never mentions its blind spots is not more complete, it is less careful. For everything inside the boundary, the model reads two pieces of text against each other better than most people do under time pressure.

Once you have the findings, work through the rest of the analysis prompts for whatever pass 4 pointed you at.

The prompt 502 words
You are a competitive SEO analyst. We are going to run a competitor analysis
in four passes. You will run exactly one pass per reply and then stop.

What you cannot see, and must never estimate or assert: traffic, backlinks,
domain authority, rankings, search volume, keyword difficulty, revenue or ad
spend, for either company. You have no live search results page. You know
nothing about either business except the text I paste below.

The four passes:

PASS 1, positioning. From the homepage and pricing or product page text of
both sites: who each one says it is for, what each one leads with, what each
one charges, and the single claim they make that we do not.

PASS 2, coverage. From both URL lists: the subjects their site covers that
mine does not, and mine that theirs does not, read from the URL paths alone.

PASS 3, page against page. From my page and their page for one shared query:
which one answers the query sooner, which one is structured so a passage can
be lifted out of it whole, and what specifically theirs does that mine does
not.

PASS 4, the plan. From passes 1 to 3 only: the three moves worth making, in
order, each one traced back to a specific finding from an earlier pass.

Rules you must follow:

1. Run only the pass I name. If the inputs for that pass are missing or
   partial, say exactly what is missing, ask for it, and stop. Do not run the
   later passes early and do not summarise them.
2. Open every pass with one line naming the conclusions this pass cannot
   reach from what I gave you for it.
3. Mark every statement as observed, meaning you can quote my input for it,
   or inferred, meaning it is a reading that could be wrong. Never present an
   inference as an observation.
4. Do not describe the content of any page whose text I did not paste. A URL
   tells you a subject exists, not what it says or whether it is any good.
5. "No meaningful difference between these two" is a permitted finding and is
   often the true one. Do not manufacture a contrast to fill a section.
6. In pass 4, do not order the moves by traffic, volume or difficulty. Order
   them by how directly each one answers a finding, and say in one line that
   this ordering is not based on any volume data, because you have none.

Format every pass like this, with no tables:

CANNOT TELL YOU: one line.
FINDINGS: short blocks, each with a three word heading, the finding in one or
two sentences, the quoted input it rests on, and the word observed or
inferred.
NEXT: the one input that would make the following pass worth running.

Pass to run now: [PASS NUMBER]
My business: [ONE SENTENCE ON WHAT YOU SELL AND TO WHOM]
My competitor: [COMPETITOR NAME AND DOMAIN]
Inputs for this pass: [PASTE EXACTLY WHAT THIS PASS ASKS FOR]

What to change

Everything in square brackets is yours to replace. Nothing else needs editing.

[PASS NUMBER]
Write "1", "2", "3" or "4". Running them in order matters, because pass 4 is only allowed to use findings the earlier passes produced. Starting at 4 gets you a plan built on nothing, which is what a single unstaged competitor prompt returns every time.
[ONE SENTENCE ON WHAT YOU SELL AND TO WHOM]
Both halves are load bearing. "We sell rota software to independent pub groups" makes a competitor selling to hotel chains a partial competitor rather than a direct one, and the analysis changes completely. Without the buyer, the model compares two products in a vacuum.
[COMPETITOR NAME AND DOMAIN]
One competitor per run. Pick the one that turns up when your buyers are choosing, not the largest company in your category. Comparing yourself to the market leader produces a list of things you will never do.
[PASTE EXACTLY WHAT THIS PASS ASKS FOR]
Pass 1 wants homepage and pricing text from both sites. Pass 2 wants both URL lists. Pass 3 wants two full page texts and the shared query. Pass 4 wants nothing new. Paste text rather than links, because most assistants either cannot fetch a page or fetch a version that differs from what you see.

How to run it

  1. 01
    Pick one competitor and write the one line brief

    Choose the competitor your buyers actually weigh you against, which is rarely the biggest name in the category. Then write the sentence describing what you sell and to whom. That sentence decides whether the analysis is about two products or about two audiences.

  2. 02
    Run pass 1 on the pages that make the promise

    Copy the visible text of both homepages and both pricing or main product pages. This pass tells you what they lead with and what they charge, which is the context every later finding is read against. It takes four copy and paste actions and it is the pass people skip.

  3. 03
    Run pass 2 from the two URL lists

    Open yourdomain.com/sitemap.xml and theirs, and paste both URL lists. The model reads subjects from paths, so it can tell you what they publish about that you do not. It cannot tell you whether any of those pages is good, and rule 4 stops it pretending otherwise.

  4. 04
    Run pass 3 on one query you both target

    Pick a single query you both have a page for, then paste both page texts with the headings intact. This is the only pass that compares quality rather than coverage, and it is worth repeating for two or three queries before you move on.

  5. 05
    Read the CANNOT TELL YOU lines together

    Before you run pass 4, look back at the four refusal lines as a set. They are a list of the questions this method never answers, and most of them are answered by a rank tracker or a backlink tool rather than by a better prompt.

  6. 06
    Check whether their page is simply more quotable

    If pass 3 said their page answers sooner and yours buries the answer, run your URL through the free AI content readiness check for the measurement behind that judgement. Structure is the one competitive gap you can close in an afternoon.

Questions people ask

What are the best ChatGPT prompts for competitor analysis?

The ones that run in stages against real pasted inputs rather than asking for everything at once. A single prompt saying "analyse my competitor" returns a plausible essay assembled from the model training data, because it has no access to either business. Splitting the job into positioning, coverage, page comparison and plan means every stage is answerable from something you pasted.

Can ChatGPT see my competitor traffic or backlinks?

No, and it will produce numbers for both if you ask. Traffic, backlink counts, domain authority and rankings are not inferable from page text, and a model asked for them reaches for figures that look exactly like real ones. Get those from a tool that measures them, and use the model for the reasoning it can actually do.

How many competitors should I run this on?

One per run, and three or four in total. Batching competitors into one prompt produces a comparison table that averages them into a single generic rival, which is nobody. Running them separately takes longer and gives you findings you can act on individually.

Why does the prompt stop after each pass?

Because a model given four jobs at once completes the ones it has inputs for and invents its way through the rest, in the same confident register. Gating each pass on its own inputs means an empty pass produces a request for data rather than a paragraph of fiction.

What should I do when a pass says there is no meaningful difference?

Believe it. Two sites in the same category usually say similar things, and a prompt that always finds a contrast is finding one because it was asked to. A genuine null result on positioning tells you the difference has to be made somewhere other than the homepage.

A new prompt, most days One working prompt for a real SEO or AI visibility job, what to change in it, and a worked example. No sequences, no offers dressed as newsletters.

Unsubscribe in one click. We never pass your address on.

Run your first audit
in about a minute

Free account, no card. Paste your URL and get a real, scored report of your AI and search visibility.

Measuring rankings in