Desk notes By David Krug 12 min read

Why ChatGPT Keeps Naming Your Competitor (And How To Make It Stop)

The model is repeating names it can find, in places it already trusts, written by people who are not you.

David Krug Editor · Austin

Open a private window.

Type the thing your buyer actually types.

“Best [your category] for [the job they hired you to do].”

Watch what comes back.

If you have done this in the last 30 days and felt your stomach drop, you are not imagining it. The model named three companies. One of them was the shop you beat on a demo last quarter. One of them you have never heard of. You were not on the list.

Then you did what every founder does. You asked the model why. It gave you a polite paragraph about “widely cited sources” and “established presence in industry coverage.”

That sentence is the whole game.

Not schema.

Not an llms.txt file.

Not a blog post you published on a Tuesday because the content calendar said so.

The model is repeating names it can find, in places it already trusts, written by people who are not you.

Your competitor is in the answer because a reporter put them in an article. You are missing because nobody did that for you. That is it. That is the whole mystery.

Look. This is not a “content” problem.

I keep seeing the same panic loop.

Someone screenshots a ChatGPT answer. They drop it in Slack. Marketing gets a thread with 40 replies. Somebody says GEO. Somebody says AEO. Somebody buys a tool that promises to “optimize your brand for AI search.” A consultant shows up with a deck about entities.

Two weeks later you have:

  • a robots-looking text file on your homepage
  • three comparison pages nobody links to
  • a rewrite of your about page that now says “trusted by teams worldwide”
  • a guest post on a site your own mother would not read

And the model still names the other guy.

Of course it does.

You treated a citation problem like a copy problem.

Copy is what you say about yourself.

A citation is what someone else was willing to put their name next to.

Those are not the same species.

If a journalist will not file your story, a language model has no reason to pretend they did.

How the model actually picks a name

I am going to skip the science-fair version.

You do not need a paper on embeddings. You need the dumb version that matches what you see when you test this on Monday.

The model has read a lot of pages. A lot of those pages are news sites, trade sites, analyst writeups, roundups, and explainers. When a question looks like a buying question, it reaches for names that show up in those pages with some consistency.

Not once.

Not in a press release that got syndicated onto 400 garbage domains in an afternoon.

In actual articles. In the body. Next to a sentence a human wrote on purpose.

That is why the “we got mentioned” report from your old PR shop is a joke.

A mention with no URL is a shrug.

A mention in a caption is a shrug.

A mention inside a paid contributor column that reads like it was written by a committee is a shrug.

A live URL, your name in the piece, in the body of something a reporter chose to file. That is a breadcrumb. Stack enough of those and you stop being invisible.

Your competitor did not out-smart you with prompts. They out-existed you in the record the model can see.

The three lies that keep you broke

Lie 1: “We just need more content.”

No.

You need different fingerprints.

You can publish 80 posts this year and still lose to a company that got quoted in six pieces a reporter already had to write. Volume on your own domain is owned media. Owned media is useful. It is not the same as a third party putting you on the map.

If owned media was enough, every company with a blog would be in the answer. They are not. You already knew that. You just hoped the new acronym would change the physics.

It did not.

Lie 2: “We’ll get a press release out.”

A press release is a letter you wrote to yourself and then paid a wire to photocopy.

Some reporters still skim wires for story ideas. Fine. That is a starting pistol, not the race.

Google has been clear for years about what it thinks of scaled, optimized links inside distributed releases. The model is not dumber than Google. If the page exists because you paid to spray it, it does not carry the same weight as a desk that chose you.

If your “PR” is a PDF and a hope, you do not have PR. You have stationery.

Lie 3: “We’ll hire an agency on retainer and they’ll work their relationships.”

Relationships are real. I am not doing the “fire all PR people” bit.

Here is what I am doing.

A retainer buys activity. Calls. Recaps. A slide that says “conversations in progress.” A monthly hour where someone explains why this month was “about seeding.”

None of that is a name in an article.

If the shop will not put a number in writing (this many qualifying placements, this many days, your money back if they miss), they are selling you the feeling of having a PR team.

Feelings do not get cited.

What a qualifying mention actually is

Strip the romance.

A placement that matters has a few boring traits.

There is a live URL. You can send it to a buyer today.

Your name is in the piece. Not “a leading vendor.” Your name.

It is in the body. Not a tag at the bottom. Not a logo farm. Not a “as seen in” strip you designed yourself.

The outlet is a real publication. Not a magazine that exists to sell you a page. Think sites journalists already write for, with real traffic, in the range a search team would not laugh at.

Follow versus nofollow is the outlet’s call. You do not get to negotiate the physics of their CMS. Stop making that the argument. Humans and models can both see the sentence.

If your last campaign cannot pass that checklist, you did not get coverage. You got a PDF of logos.

The test I use before anyone should spend a dollar

I call it the second question.

You pitch a story. The reporter asks one follow-up that is not in your brief.

If your answer is a feature list, you do not have a story.

If your answer is “we’re excited,” you do not have a story.

If your answer needs legal to invent a sentence, you do not have a story.

If the only human you can put on the record is a brand account, you do not have a story.

A reporter is not paid to advertise you. They are paid to file something their editor will not kill and their reader will not bounce from. That means a fact. A person. A reason this desk, this week.

Most companies fail that test and then blame the media.

The media is not broken. Your story is thin.

This is the part founders hate because it means the work starts before the outreach. You need a named human who will talk. You need one fact that is still true after someone pokes it. You need to let a pitcher work the beat instead of making them run every sentence through a committee of seven.

If you cannot clear that bar, do not buy PR. Fix the story. Then buy PR.

Why the Times is the wrong first target

Someone on your board said “get us in the Journal.”

Of course they did. That is what boards say. It sounds like strategy and it costs them nothing.

Here is what actually happens when you chase the biggest logo first.

You skip the desks that already cover your beat.

You skip the trade site your buyer already reads.

You skip the regional piece that would have given you a URL you can forward this afternoon.

You burn six months trying to jump the line.

Then you have nothing to show the national reporter anyway, because you never built the trail that makes you look real.

National coverage is easier when you already exist in the record. Local, then trade, then the bigger desk. That is not a motivational poster. That is how a reporter decides you are not a cold email with a dream.

And here is the part that matters for AI.

A well-indexed trade piece with your name in the body can do more for a model than a vanity logo that never mentions you in a way a machine can use. Traffic is not the same thing as usefulness. Affinity is not the same thing as a Super Bowl ad.

If a SaaS reporter already lives on a site with a fraction of the traffic of a general business daily, that is still the site the model will trip over when the question is about SaaS.

Stop buying prestige. Buy presence on the beat.

Guest posts will not get you out of this

I can hear the SEO person in the back.

“We can place 20 articles.”

You can. People do. Some of those articles even rank for something.

They do not solve the citation problem you opened this tab to solve.

A guest post is you, wearing a different URL. The byline is often you or a writer you paid. The angle is the angle you chose. The editor, if there is one, is not staking their desk on it the way a staff reporter stakes a story.

Models are not brilliant moral philosophers. They are also not stupid. A pattern of samey bylines across sites that exist to sell placements starts to look like what it is.

If your plan is “rent enough bylines until the machine gets confused,” you are in a race with every other company doing the same thing, and the price of those bylines only goes one direction.

Earned means a journalist chose it. That choice is the signal. Everything else is you talking louder.

What to do this week if you want this to change

Not a 40-point framework. A week.

Day 1. Run the prompts your buyer runs. Private window. Ten questions. Screenshot every answer. Write down the names that show up more than once. That list is your real competitive set, whether you like it or not.

Day 2. Search those names plus “said” and the category. Find the articles. Not their blog. The pieces other people wrote. Count the in-content mentions with URLs. That number is the gap.

Day 3. Sit with one person who can go on the record. Not “marketing.” A human with a last name and a job. Extract one fact that survives a second question. If you cannot, you are not ready. That is useful information. It is cheaper than a retainer.

Day 4. Look at the desks that already cover that fact. Not “tech media.” The actual reporters who wrote the last six stories like it. Read three of their pieces. If you will not do that, do not email them.

Day 5. Decide what you are buying. Activity or a floor.

A floor sounds like this. Five qualifying placements. Or ten. Or twenty. Ninety days. Live URL. Name in the piece. In the body. Real publications. If the number is not hit, the fee comes back.

That is a product.

“We’ll get you out there” is not a product.

Why a floor beats a vibe

People get weird about guarantees in PR.

They should.

Most of the industry cannot offer one because they cannot control the reporter. Correct. You cannot buy the article. That is the point of earned.

What you can control is whether you keep taking money after you missed.

If I miss the floor, you should not be financing my next month of “seeding.” You should have your money. I should go find a story that files.

That changes the work.

I will not take a pre-product company with a slide and a dream.

I will not take politics.

I will not take a claim that dies when you ask “says who?”

I will not spray 2,000 emails so a report can say we touched 2,000 people.

I will pitch desks that already cover the beat, keep going until the number hits, and send you the URL and a screenshot the day it files. You can forward that to a board, a buyer, or a client without translating it first.

Agencies that want to white-label the report can. The miss is still mine.

That is the opposite of a retainer. A retainer rewards the calendar. A floor rewards the file.

“But we need to go viral”

No you don’t.

You need to exist in enough independent pieces that a human and a model can both trip over you.

Virality is a lottery ticket people staple to a campaign so the campaign sounds like a movie.

Sometimes a real piece travels. Good. That is a bonus, not a plan.

A plan is a corpus. Five URLs you can put in a document. Then ten. Then twenty. Each one a sentence a reporter chose. Each one still live when a prospect Googles you at 11 p.m. the night before a procurement meeting.

That corpus is also what a search model has to work with.

You want to be the name that keeps showing up. Not the name that had one weird day on TikTok and then vanished from the record.

The uncomfortable part about your category

If you sell SaaS, fintech, cyber, healthcare, legal, ecommerce, insurance, or anything else a beat reporter already covers, you do not have an excuse.

The desk exists. The readers exist. The questions exist.

What usually does not exist is a company willing to put a human on the record with a fact that is not a launch announcement.

“We shipped a feature” is not news.

“Here is the thing in the market that changed, here is the number, here is the person who will talk about it” is news.

Your product can be in the second paragraph. It should not be the first sentence.

This is why so many B2B pitches die. They are ads with a greeting line.

Write the story the reporter would have written anyway. Then be useful enough to get in it.

What this looks like when it works

Before: you search your own name plus the category and you get your site, your LinkedIn, and a directory you forgot you paid for. A buyer asks ChatGPT and you are not in the paragraph. Your competitor is. The board asks why marketing cannot “get us some press.” Marketing hires a shop. The shop sends recaps.

After: you have a set of live URLs. Your name is in the body. You can send the pack the same day a piece files. A prospect who does the 11 p.m. Google sees someone else saying your name. A model that was trained on, and still retrieves, those pages has something to grab besides your homepage copy.

That is not branding. That is inventory.

Inventory you can count.

If you want a simple rule

Stop asking “how do we get into ChatGPT.”

Ask “who has already written the sentence a model would steal, and why would they write it about us.”

If you cannot answer that in one breath, do not buy a GEO tool.

Get the sentence written.

By a journalist.

In a publication that already exists.

With your name in the body.

On a URL you can click.

Do that enough times that it stops being a stunt and starts being the record.

Then run the private window test again.

If the model still skips you, you do not have enough of those sentences yet. You do not have a prompt problem. You have a thin record.

Fix the record.

The offer, because you will ask

I run campaigns with a number in writing.

Starter is five qualifying placements.

National is ten.

Titan is twenty.

Ninety days. Every dollar back if I miss the floor.

You give me a named human and a fact that survives a second question. I pitch the desks that already cover it. I send proof the day it files.

No retainer. No deck. No “let’s explore the narrative.”

If it will not file, I do not take it.

That is the whole product.

If you want to see whether the story files, start small. If you need a pack you can hand a buyer, go bigger. If you need volume, say so.

Just do not spend another quarter hoping a text file on your server will talk the model into loving you.

It will not.

A reporter might.

That is the work.

The floor

Ready for real press coverage?

A named human. A fact that survives a second question. Then we work the book.

5Starter
10National
20Titan

5, 10, or 20 placements · 90 days · money back if we miss.