What customers said · 12 min read · Updated 3 Oct 2026

Win Loss Analysis Prompts for Competitive Deals

Ask a model why you lose and it returns an ordered list of believable reasons. It reads like research, and the ordering is a claim about numbers that nothing measured. The material for this job is yours and private, so the failure is not that the model lacks the facts. It is that the model will finish the thought. These prompts code against a scheme you supply, keep what a buyer said apart from what you concluded, and report the deals that never reached the set at all.

Download our CI Prompts Library

Stop rewriting prompts every time you analyse competitors. Steal our 112 prompts, with the instructions they need to run precisely and be deterministic.

What a ranking of competitive loss reasons counts

What this job almost always produces is a list: five or six reasons, in order, sometimes with counts beside them. It travels further than anything else competitive intelligence makes, and it is read as a description of why buyers choose somebody else.

It is a description of the write-ups. Three filters run between a deal ending and a line appearing in that list. Somebody decided the deal was worth writing up. Somebody asked questions in their own words, which shaped what got answered. And somebody chose which sentence in the answer was the reason. A model reading the set sees the result of all three filters, and none of the filters themselves.

The first filter matters most, because you cannot see it working. Deals nobody wrote up are not under-represented in the list. They are missing from it. And the deals least likely to produce a write-up are the ones that faded rather than ended. So the reason that never appears is often the most common thing that happens. Naming it is a set problem rather than a coding one, and the no-decision tier has to appear in your competitor set before it can be counted anywhere.

Three questions worth asking of any ranked list of loss reasons

How many deals closed against this competitor in the period, and how many of them are in this set? What did the person running the interviews actually ask? And which of these reasons is the easiest thing for a buyer to say to somebody they have just turned down? A list that cannot answer the first question measures nothing. The third question is why price sits at the top of nearly every one of these lists ever produced.

What a competitive win/loss synthesis has to be given

Four inputs, and two of them are not documents. The code list and the denominator are numbers and definitions you bring to the run. Leave either out and this stops being an analysis and becomes a summary.

The write-ups themselves, each labelled won or lost and tagged with the competitor in the deal

Where it comes from
Interview transcripts where you run them, close notes where you do not. What a proper programme of win/loss interviews produces is better material by a wide margin. A set of rep-written close notes is still worth running, as long as the output says which of the two it read.
What good looks like
One document per deal, the outcome on it, the competitor named, and the date it closed. Anonymised if any of it is going near a tool you do not control.
Without it
Wins are absent, so no reason can ever be shown to appear on both sides. The most useful output of this job then cannot be produced at all.

Your reason-code list, agreed before the run rather than during it

Where it comes from
Whatever your team already uses, even if it lives in a spreadsheet. Seven or eight codes is the workable size. Settle the list before the first prompt runs, because a scheme invented inside a conversation lasts exactly as long as that conversation.
What good looks like
A closed list, written down, with one line on what belongs in each code and an explicit bucket for anything that does not fit.
Without it
Every run produces its own vocabulary. Two quarters of work cannot be added together, and the trend you wanted does not exist.

The denominator: how many deals closed in the period, and how many of them are in this corpus

Where it comes from
Your own pipeline record. Your CRM's deal counts are the population. The write-ups are a sample of it, and nobody chose that sample on purpose.
What good looks like
Two numbers at the top of the brief: deals closed against this competitor in the period, and deals represented in the corpus.
Without it
Every count in the output reads as a count of your deals. It is a count of the deals somebody got round to writing up.

The deal record beside each write-up: size, segment, stage reached and close date

Where it comes from
The same pipeline export. A reason means one thing in a deal that died at security review and another in one that died before a demo. The write-up almost never says which.
What good looks like
Four fields per deal, in the same block as the write-up rather than in a separate file the model has to join.
Without it
Large and small deals carry the same weight, so one enterprise loss and one self-serve loss count the same.
Then run it
One block per deal, each opening with the four record fields and then the write-up, so the model never has to join two lists. Put the code list and the denominator in the brief above them. At the end, a long set of write-ups will bury them.
Before the output leaves the building
Pull five rows at random and read the coded sentence against the write-up it came from. Then compare the two coding passes and look only at the rows that moved. Those are the codes your scheme has not defined tightly enough, and fixing the definition is worth more than re-running the analysis.

Put the denominator in the brief rather than in your head. An output that opens “across 19 write-ups, from 64 deals closed against this competitor” can be argued with. The same output without those numbers cannot. It takes one sentence to arrange. Where nobody is running the interviews at all, a list of win/loss questions is the cheapest way to start, because the hard part is asking rather than analysing.

Win/loss analysis prompts for deals you lost to a competitor

Four passes, and they are deliberately not one pass. Ask for the coding and the ranking together and the ranking starts steering the coding. A model that has already decided price is the headline has a reason to read the next unclear sentence as being about price.

Start here once the corpus is labelled. The reason that appears in both columns is the finding, and it only appears if wins are in the set.

Here are [N] win/loss interviews, each labelled WON or LOST and tagged with the competitor in the deal: [PASTE]. Identify why deals were won and lost against [COMPETITOR], ranked by how often each reason appears. For every reason, split the evidence into two columns: - SAID: the buyer stated this. Quote them. - INFERRED: I am reading it from what they said. Say what you are reading it from. Then flag any reason that appears in both won and lost deals, since those are usually the ones being mislabelled internally.

Run this when you want counts rather than themes. The code list comes from you, and the last instruction is the one that keeps it honest.

Here are [N] win/loss write-ups: [PASTE]. Code each one against this list and nothing else: [YOUR REASON CODES]. Return one row per deal with: deal id, outcome, competitor named, primary code, the sentence you coded it from, and a second code only where the write-up genuinely supports two. Then list separately every write-up you could not fit to a code, with the sentence that did not fit. Do not widen a code to absorb it and do not invent a new one. Report the number of rows coded, the number unfitted, and nothing else as a total.

Use this on the same corpus in a fresh conversation. What moves between the two passes is the part of your scheme that is ambiguous.

Here are [N] win/loss write-ups and this reason code list: [PASTE]. Assign one primary code per write-up, with the sentence you coded it from. Work from the write-ups alone. Do not attempt consistency with any earlier coding of this material, and do not ask me what a previous pass decided. Return the rows only.

Run this last, and read it as raw material for sales rather than as a finding about the competitor.

Here are [N] win/loss write-ups involving [COMPETITOR]: [PASTE]. Pull every passage where the buyer reports something that competitor told them about us. Quote it exactly, with the deal id and the outcome beside it. Group the quotes by the claim being made, and count how many distinct deals each claim appears in rather than how many times it appears. Do not assess whether any claim is true, and do not write a response to any of them. Where a passage is our own team's account rather than the buyer's, put it in a separate list.

Almost nobody runs the second pass, and it repays the twenty minutes faster than anything else here. Run the same set cold, in a fresh conversation, then compare the two codings. What moved is what two careful readers would disagree about. Those codes are where a year of counting quietly goes wrong, and no amount of re-running the analysis finds them.

What AI gets wrong about competitive loss reasons

We asked a model to rank why deals go to a real competitor, supplying nothing, and read what came back against that competitor’s published pricing.

Why buyers choose HubSpot Sales Hub, 21 September 2026, asked with no deal data and checked against the live pricing page.

Claude Opus 5asked to rank the top five reasons deals go to HubSpot Sales Hub, no deal data supplied

2026-09-21

1. Price and packaging. A free tier and a low entry price make the first decision easy to justify internally. 2. All-in-one suite. Marketing, sales and service in one place beats assembling a stack. 3. Speed to value. Shorter implementation, less administration, quicker to a working pipeline. 4. Ecosystem. A large marketplace, and integrations already running at the buyer. 5. Familiarity. Buyers arrive having read their material for years before evaluating anyone.

Checked against HubSpot Sales Hub pricing page, read 21 September 2026

All five are reasons buyers genuinely give, and the list would pass unremarked in most competitive reviews. The defect is the numbering. An ordered list is a claim about numbers written as prose. It says price outweighs the suite, which outweighs speed to value. Nothing supplied could establish any of that, because no deal was consulted. The one part checkable from outside sits inside the first reason. On that vendor's own pricing page the entry tier is $7 per seat per month on annual billing. Professional is $90 per seat per month with a one-off $1,500 onboarding fee, and Enterprise $150 with $3,500. Whether price helped them or hurt them depends entirely on which tier the deal was in, and a ranking built from nothing neither asks nor says. Nothing was invented here. An order was asserted with more confidence than the evidence could carry. That is what this job produces when the write-ups are missing, and what it keeps producing, less visibly, once they are there and nobody asks what the counts are counting.

False precision

An ordered list is a number in disguise

Nothing in that answer would be challenged in a meeting. Each reason is real, each is put carefully, and there is not a statistic anywhere in it to argue with. That is the whole difficulty. A list numbered one to five says the first outranks the second, which is a claim about how often each happens. It arrives in a form nobody knows how to question, because it never printed a figure.

The same shape survives when the material is real. Nineteen write-ups produce a ranked list just as readily as nothing does, and the list looks identical. The only difference is whether the output says how many deals sit behind each position, and how many deals it never saw. That is why both of those are required inputs above rather than nice additions.

What each row in a coded win/loss output is actually evidence of
Where the row came fromWhat a count of it measures
A code taken from a sentence the buyer saidWhat buyers are willing to tell somebody who has just lost their business.
A code taken from the seller's own close noteWhat your team believed at the moment they closed the record, often at quarter end.
A code the model inferred with no supporting sentenceHow familiar that reason is in writing about your category, and nothing else.
A deal with no write-up at allNothing, and it is usually the largest group. Absence of a record is not absence of a reason.

There is no grounded counterpart to the run above, and the reason is worth stating plainly rather than leaving as a gap. The grounded version of this job reads your own customers talking about their own companies. Nobody can publish that. Comparisons like this normally show the same question answered twice. This one cannot, and any article showing you a tidy set of win/loss interviews has written them. The nearest publishable equivalent is churn reason analysis, which has the same privacy problem and a larger sample.

Never let the model invent your competitive reason codes

Ask for themes and a model will give you six, well chosen, fitting the material neatly. Ask again next quarter and it will give you six again, also well chosen, also fitting, and not the same six. Both outputs are good. Together they are worth nothing, because a trend needs two measurements on one scale.

A coding scheme is plumbing rather than analysis. It gets agreed once, written down, and changed rarely and on purpose. That is what a coded archive has always needed. A model changes only the speed, and speed is exactly what hides the drift. Nobody re-reads a scheme that took four seconds to produce.

Read the unfitted pile before the counts

That is why every prompt above insists on somewhere to put the write-ups that do not fit, and forbids widening a code to swallow them. A closed scheme with an honest overflow tells you something a tidy one never will. Three deals that fit no existing reason is how a new competitor, a new objection or a changed buying process first shows up in your own data, usually a quarter before anybody names it.

The quotes are the other thing to protect. A coded row with the buyer’s sentence attached can be handed to a sceptical sales leader. The same row with a paraphrase will not survive one “did they actually say that?”. Verbatim material also travels further than analysis does. The passages worth pulling are the ones carrying a competitor’s argument back to you in a buyer’s own words, months after the deal. That is the raw material for a battlecard that argues with something real. The same quotes, heard while the deal was still open, are what competitor mentions in sales calls catch months earlier.

How to automate win/loss analysis upkeep

A synthesis describes deals that have already closed, which makes it the most backward looking thing competitive intelligence produces. By the time thirty write-ups exist, the oldest is a year old. The competitor in it has repriced, renamed something, or shipped the feature the loss was about.

That is not an argument against doing it. It is an argument for reading the findings against a current picture of the competitor, rather than on their own. A loss reason from March and a pricing page from March are one story. The same loss reason read in September, against September’s pricing page, is a different one. Only the second is the question your sales team is asking.

Loss reasons also travel upwards, and the shape changes on the way. A ranked list becomes a single sentence in an executive summary, and the recommendation it ends on is the one line no set of write-ups can supply. Give it the denominator, not the conclusion.

The output needs somewhere to live that is not a deck. A win/loss report holding the coded rows, the denominator and the quotes can be compared against the last one. That comparison is the only way a set of reasons becomes a trend rather than a fresh opinion every quarter.

Flares tracks what competitors change and dates every change. A set of loss reasons can then be read beside what was true when each deal closed, and what is true now. Why one buyer chose somebody else is not something monitoring can recover, and asking them is still the only method that works.

Keep win/loss findings next to current facts

Flares tracks what competitors change, so last quarter's loss reasons are read against this quarter's pricing.

14-day free trial · 30-second setup

Win/loss synthesis FAQ

How do you use AI for win/loss analysis?

For the synthesis, not for the judgement. A model will hold thirty write-ups at once, code each against a scheme, quote the sentence it coded from, and flag the ones that do not fit. That is a day of work, and the part people put off until the archive is unusable. Deciding what the codes mean, which deals belong in the set, and what to do about the result stays with whoever owns the programme.

What should a win/loss analysis prompt ask for?

One row per deal, the sentence each row was coded from, and a separate list of everything that did not fit. Ask for themes first and you get a tidy story that cannot be checked against anything. Ask for rows and you get something a sceptical sales leader can open, find their own deal in, and either confirm or dispute. Work nobody can check at that level gets nodded at and then ignored.

Can AI analyse win/loss interviews?

Long unstructured text is what models handle best, and a set of buyer interviews is exactly that. The caution is not about what a model can do. Transcripts contain named people talking candidly about their own employer and about vendors. Where that text goes, and what the tool does with it, is worth settling before the first paste rather than after it.

Why does AI rank loss reasons it has no data for?

Because a ranked list is the expected shape of an answer to that question, and producing the expected shape is what these systems do. Asked why you lose with nothing supplied, a model gathers the reasons companies like yours usually report, in the order those reasons usually appear. It then presents them as an analysis of your business. Every word may be defensible in general, and none of it is about your deals.

Should the model create the reason codes?

No, and this is the most important instruction on the page. A scheme invented in one conversation will be invented differently in the next. The counts from March and the counts from June then share a vocabulary by luck alone. Supply a closed list, require a bucket for what does not fit, and change the list rarely and on purpose. A coded archive needs that whether or not a model is doing the coding.

What does it mean when a reason appears in both won and lost deals?

Usually that the code is doing two jobs. A reason recorded on deals that went both ways is not explaining the outcome. Either it names something present in every deal, or two different situations are being filed under one word. Splitting it almost always produces something useful. It is also the clearest argument for keeping wins in the set, because a loss-only set hides the pattern completely.

How do you stop a win/loss summary turning quotes into paraphrase?

Require the sentence, not the sentiment, and put that requirement in the same instruction as the code. A paraphrase of a buyer is a second-hand account of a second-hand account. Two steps later, nobody can establish what the person actually said. Quoted material also survives disagreement, which matters because the findings most worth having are the ones somebody senior will reject at first.

Can you run win/loss analysis on CRM closed-lost reasons instead of interviews?

You can, and the output answers a narrower question than people read it as answering. A closed-lost picklist records what a seller selected while closing a record, often in the last minute of a quarter. What it produces is partly a fact about the picklist. Running the free-text note beside the code is the cheap improvement. Comparing the two is itself a finding about how well your team reads its own deals, which is the win/loss ratio conversation nobody enjoys having.

How do you keep a win/loss synthesis from being about one loud deal?

Count deals rather than mentions, and make the prompt say how many distinct deals sit behind every claim. One account raising a point across four conversations is one account. Three unrelated accounts raising it once each is a pattern. The difference decides whether something belongs in your messaging, or in a footnote about one frustrated buyer.

Is it safe to put win/loss interviews into an AI tool?

Safety here turns on the tool and on what you promised the buyer. Answer both before you assemble the material, not after. Check whether inputs are used for training, whether a data-processing agreement exists, and what your interviewer told participants about how the recording would be used. Stripping names and company identifiers before the paste removes most of the exposure and costs almost nothing, because the codes do not depend on who said them.

What does a win/loss synthesis produce that a person cannot?

Consistency across more write-ups than anyone will read twice. A person coding thirty of them drifts between the fifth and the twenty-fifth, and nobody notices, because nobody re-reads the fifth. A model given the same set and the same brief drifts differently. That is worse in one way and testable in another: run it twice, and the rows that move are the ambiguous codes. No single human pass produces that.

How often should a win/loss synthesis be re-run?

When enough deals have closed to change the picture, not on a calendar. A quarterly rhythm suits most teams, because that is when enough write-ups exist. The trigger worth watching for is a competitor changing something material. Deals that closed before a repricing and deals that closed after it are answering different questions. The competitors you never meet deserve the same attention, because a deal that ended in no decision rarely produces a write-up and is the most common outcome there is.

Ground competitive deal reviews in dated evidence

Flares monitors competitor pricing, messaging and product changes, and dates every one it finds.

14-day free trial · 30-second setup