Read signals over time · 13 min read · Updated 24 Sep 2026

Prompts to Detect a Competitor Pricing Change

Two copies of the same pricing page will differ in a dozen ways, and most of those differences are not pricing changes. The loud ones are usually the currency you were served or a row somebody renamed. The change that moves a buyer's bill is often a single cell in a feature table.

Two copies of a competitor's pricing page differ in many ways

Save a competitor’s pricing page today, save it again in six months, and put the two in front of a model. You will get a list of differences. Most of them will not be pricing changes.

A pricing page is not a document. It is a rendered application that decides what to show you. It reads your location and picks a currency. It remembers which side of the annual toggle you left selected. It may be running an experiment. Whoever last rewrote the comparison table renamed six rows while they were in there.

Every one of those produces a difference between your two copies, and a model reporting differences will report them all. That is the correct behaviour. It was asked what changed and it answered honestly. The problem is that the output puts a renamed row and a new seat cap on the same footing, and the reader has no way to tell them apart.

The four kinds of difference, and only one of them is news

A capture artefact comes from how you saved the page. A rename is the same thing in different words. A move is the same thing shown somewhere else. A change alters what a buyer pays or what a buyer gets. Ask for all four as separate lists, and the fourth one is usually short enough to read in ten seconds.

How you captured the page decides what the prices mean

Four things are worth writing down at the moment you save a pricing page, and none of them is on the page itself. The date. The country it was served to. The currency it displayed. Which side of the billing toggle was showing.

The middle two are the ones nobody records, and they are the ones that break a comparison. A page saved in the United States and the same page saved in Germany can show different numbers on the same afternoon. Put those two copies side by side six months apart and every price looks like it moved.

This is the same trap that catches a messaging comparison run across two vendors, where one page arrives in a different language and nothing in the pasted text says so. The price column is worse, because a number in the wrong currency still looks like a number you can subtract.

Prompts to compare two saved competitor pricing pages

Three passes, and the second one runs before you read anything. Sorting the noise out first is what makes the rest of the output short enough to trust.

The first pass, once both copies are labelled with how you captured them.

Here are two copies of [COMPETITOR]'s pricing page, the first saved [DATE A] and the second saved [DATE B]: [PASTE]. List every difference, grouped as: - price changes, with old and new figures - packaging changes: a capability moving between tiers, a limit changing, a plan renamed or removed - wording changes that alter what a buyer is promised - changes to trial, minimum seats or billing terms Packaging changes matter most and are the easiest to miss, so check tier by tier rather than reading the page top to bottom. If a feature appears in both copies but under a different plan, that is a packaging change, not a no-change. Say explicitly if nothing changed.

Before you read the diff, because it decides how much of the diff is real.

Here are two copies of [COMPETITOR]'s pricing page. Copy A was saved [DATE A], served to [COUNTRY A], showing prices in [CURRENCY A], with the billing toggle set to [ANNUAL OR MONTHLY]. Copy B was saved [DATE B], served to [COUNTRY B], showing [CURRENCY B], toggle set to [ANNUAL OR MONTHLY]: [PASTE]. Sort every difference between them into exactly one of four lists: 1. capture artefacts: differences that follow from currency, country, the toggle setting, or the order things render in 2. renames and rewordings: the same thing under different words, with both wordings quoted 3. moves: the same thing still offered, but shown somewhere else on the page 4. changes to what a buyer pays or gets Print all four lists even when one is empty. Never merge a rename into list 4, and never drop a difference because it looks trivial. If the two copies show different currencies, say plainly that no price in list 4 can be compared, and give the figures side by side without calling either one higher.

When you need to say what a buyer would actually pay, rather than what the page says.

Using the same two copies of [COMPETITOR]'s pricing page, work tier by tier rather than reading either page top to bottom. For each tier in each copy, write: the annual cost for [N] seats, every limit that applies at that seat count, and every named capability included at that tier. Then report only the cells that differ between the two copies, with the tier named. A capability that appears in both copies under different plans is a packaging change, not a no-change. A limit that appears in one copy and not the other is a packaging change even if no figure moved. Say explicitly which tier a buyer like [OUR TYPICAL CUSTOMER] would be on, and whether anything changed for them specifically.

The rule about printing empty lists matters more than it looks. A run that returns no renames has almost certainly folded them into the real changes. An empty list is evidence the comparison was done; a missing list is evidence of nothing.

What a pricing change prompt needs beyond the two pages

Four inputs, and two of them are lines you write rather than material you paste. The capture conditions take ten seconds and decide whether the price columns can be compared at all.

The same page saved twice, each copy dated

Where it comes from
Your own capture from last quarter, or an archived copy of the page. Where published prices live, and where they do not, is covered under finding competitor pricing.
What good looks like
Both copies complete, including the comparison table below the plan cards, saved as text you can paste rather than as screenshots.
Without it
There is no diff. The model answers from what it remembers about the vendor, which is the one thing guaranteed to be out of date.

How each copy was captured

Where it comes from
Four things noted at capture time: the date, which country the page thought you were in, the currency it printed, and which side of the billing toggle was selected.
What good looks like
One line per copy. It takes ten seconds and it decides whether the price columns can be compared at all.
Without it
A currency difference reads as a price rise, and a regional page reads as a repackaging. Both are confident and both are wrong.

The comparison table, not just the plan cards

Where it comes from
The same page, scrolled past the pricing cards. Most vendors put the limits and the included capabilities in a long table underneath.
What good looks like
Every row from both copies, including the ones that read as housekeeping. Seat caps and record limits live there.
Without it
The comparison only sees the cards. That is where the prices are, and it is not where the packaging is.

The configuration you are pricing

Where it comes from
One line you write: seats, term and billing period. Working out what a matched configuration costs at each vendor belongs to comparing competitor pricing.
What good looks like
Specific enough that a limit either binds or does not. "Twelve seats, annual" makes a ten-seat cap a finding rather than a footnote.
Without it
Every change reads as equally important, including the ones that could never apply to a buyer you compete for.
Then run it
Label each copy before you paste it, then paste them in date order, oldest first, so the newer one reads as the change.
Before the output leaves the building
Read the renames list first. An empty one means the model folded renames into real changes, and every other line in the output is then suspect.

Paste the comparison table as well as the plan cards. The cards carry the prices, and the table carries the limits. A change to a limit is the kind that costs a buyer money without any figure on the page moving, and it never appears in a screenshot of three cards.

When a competitor's price rise turns out to be a currency

We took one CRM vendor’s live pricing page, pulled an archived copy from a year earlier, and ran the comparison twice. Both copies are public and both runs can be repeated.

Attio's pricing page, archived 16 September 2025 and saved 24 September 2026, compared twice: once asked for differences, once asked to classify them.

Claude Opus 5handed both copies of a live CRM pricing page, one archived 16 September 2025 and one saved 24 September 2026, and asked for every difference, grouped as price, packaging, wording and terms

2026-09-24

Price changes: Plus moves from 36 to 39 per user per month on monthly billing and from 29 to 31 on annual; Pro moves from 86 to 93 monthly and from 69 to 74 annual; Free and Enterprise are unchanged. Packaging changes: the Plus seat limit goes from unlimited to 10; Enterprise seats move from Custom to Unlimited; credits are split into seat credits and workspace credits, adding a per-user allowance at every tier; Email sequences is removed and Sequences added; Migration assistance is removed and Migration service added; SAML and SSO is removed and Single sign-on added; eleven further rows appear, including Ask Attio, AI agents, MCP server and Workflows. Wording changes: all four plan descriptions rewritten; Priority support no longer appears in the Pro plan's headline bullets.

Checked against Attio's pricing page

Sixteen lines, and nothing tells a reader which one is a decision. The price block is not a price rise: the 2025 copy was served in dollars and the 2026 copy in euros, so those are four pairs of figures in two currencies. Three packaging lines are one row renamed, counted once as a removal and once as an addition. Priority support is still on Pro; it moved from the plan card into the comparison table. The line that changes a bill is in there and is the least prominent of the sixteen.

Conflation

Claude Opus 5given the same two copies, each labelled with its date, the country it was served to, the currency shown and the billing toggle, and asked to sort the differences into artefacts, renames, moves and real changes

2026-09-24

Capture artefacts: all eight price figures, because copy A shows dollars and copy B shows euros; no comparison between them is possible from these two captures. Renames and rewordings: Email sequences to Sequences; Migration assistance to Migration service; SAML and SSO to Single sign-on; Seat limit to Seats; Email sending to Email limits; bulk sending from 10 sends at a time to 10 emails at once; all four plan descriptions. Moves: Priority support, still included on Pro, now shown in the comparison table rather than on the plan card. Changes to what a buyer pays or gets: the Plus seat limit goes from unlimited to 10; a per-seat credit allowance is added at every tier alongside the existing workspace credits; the two largest credit add-ons rise while the two smallest keep their figures; eleven rows in the comparison table have no counterpart in the 2025 copy.

Checked against Attio's pricing page

The classification holds against both pages. Six differences the first run reported as changes are renames, and the one that matters is alone in a list of its own: Plus went from no seat limit to ten. What neither run can settle is whether the euro figures are higher than the dollar ones were. Nothing in either capture answers that, and only a third copy served to the same country would.

Sixteen differences, one decision

The first run is accurate and nearly useless. Every line in it is really there in one copy and not the other. Read as a report, it says a vendor raised prices, dropped priority support, and reorganised their packaging. Two of those three did not happen.

The prices did not rise. The 2025 copy was served in dollars and the 2026 copy in euros, which is a fact about where each capture came from. Priority support was not dropped either. It moved off the plan card and into the comparison table, where it still sits against the Pro column.

Six more of the sixteen are a single row renamed, counted twice: once as something removed and once as something added. Email sequences became Sequences. Migration assistance became Migration service. SAML and SSO became Single sign-on. Nothing changed for any buyer in any of those.

One competitor's pricing page a year apart, and what each difference turns out to be
What the page showedSeptember 2025September 2026
Middle tier, per user per month$36 monthly, $29 annual€39 monthly, €31 annual. A currency difference, not a comparison.
Middle tier seat limitUnlimitedUp to 10. The one change that moves a buyer's bill.
Largest credit add-on$300 monthly, $240 annual€515 monthly, €410 annual. The smaller add-ons kept their figures.
Priority support on the middle-upper tierListed on the plan cardListed in the comparison table. Still included, shown elsewhere.
Email sequencesA row called Email sequencesA row called Sequences. One rename, counted twice by a diff.

The evidence that two figures really moved

One block of numbers is worth reading closely, because it shows how to get an answer out of a mixed-currency comparison. The page sells extra credits in four sizes. The two smallest carry identical figures in both copies. The two largest do not: 225 becomes 285, and 300 becomes 515.

If the page had simply swapped the currency symbol, all four would have kept their numerals. Two did. So the reading that fits is that the symbol changed for everything and the top of the ladder was repriced as well. That is a conclusion drawn from what stayed the same, which is the only lever these two captures give you.

The line that changes a bill is the quietest on the page

The real change in that year sits in one cell. The middle tier used to say seats were unlimited. It now says up to ten. No price moved with it, no announcement went out, and it appears on the page as two words in a table row.

Work out what that does to a buyer. A team of twelve on the middle tier is now on the tier above it, or split across two workspaces. Nothing about the headline price predicts that, which is the whole reason a repackaging is the expensive thing to miss rather than a price rise.

What each kind of pricing-page difference costs you to miss
The differenceHow loud it isWhat it costs to miss
A headline price movesLoudest. Visible the next time anyone opens the page.Little. Everyone notices, usually within a week.
A limit appears or shrinksQuietest. Two words in a comparison table.Most. It changes which tier a buyer needs, and no figure on the page says so.
A capability moves between tiersQuiet. The row still exists, under a different column.A rep quoting a tier that no longer contains the thing they promised.
A row gets renamedLoud in a diff, silent on the page.Nothing, unless it is mistaken for a change and reported as one.

The reason to keep the old copy is in that table. A change of this kind is only ever visible as a difference, and the page will not tell you it used to say something else. A pricing teardown that records what each tier contained on a date is how the second capture becomes readable at all.

How to detect competitor pricing changes automatically

Every comparison on this page is a comparison of two moments you happened to capture. The change itself happened on a day nobody recorded, somewhere between them. A quarterly diff tells you a seat cap appeared at some point in ninety days.

Being three months late on a repackaging has a specific cost. Your reps go on describing a competitor’s middle tier the way it used to be, in front of buyers who are reading the current page. The credibility goes before the argument does.

There is a limit no amount of watching removes. A published page is the list price, and most deals are not done at list. What a competitor actually discounts, and to whom, never appears on any copy of any page, and the only place it shows up is in your own lost deals.

Flares keeps a dated copy of every competitor pricing page and reads the tier contents rather than the headline figure. A seat cap appearing arrives as a notification with both versions attached, which is the older half of the diff you would otherwise have to have saved.

Competitor pricing pages, captured before they move

Flares keeps a dated copy of each competitor pricing page, so the older half of a diff already exists.

Discover Flares

14-day free trial · 30-second setup

Spotting a pricing change FAQ

How do you detect a competitor's pricing change with AI?

Save the page twice, label both copies with how you captured them, and give an AI assistant the pair. The model is good at finding differences between two documents and poor at knowing which ones matter. The instruction that earns its place is the one that sorts them into real and not real.

Why do two copies of the same pricing page show different prices?

Currency is the usual answer. A pricing page often reads the visitor's location and shows local prices. A copy saved in the United States and one saved in Germany can carry different numbers on the same day. Regional price levels, running experiments and the annual or monthly toggle all do the same thing.

What counts as a competitor repackaging?

Anything that changes what a tier contains while leaving the price alone. A capability moving up a tier, a seat cap appearing, an allowance shrinking, or a plan quietly disappearing are all repackagings. None of them shows up in a comparison of headline prices, which is why they survive so long unnoticed.

How often should you check a competitor's pricing page?

Often enough that you find out before a buyer tells your rep. Monthly is a reasonable floor for a direct competitor, and the check is cheap. The analysis is the part worth doing quarterly, because a diff needs two states far enough apart to have something in between them.

Can an AI assistant watch a pricing page for changes?

Comparison is the part a model does. Watching is not. Nothing prompts it to look, and last month's version of the page was never in front of it. Somebody or something has to keep the copies. Once two exist, the reading takes a minute.

What should you do when a competitor raises prices?

Check who it applies to before anything else. Most price changes exempt existing customers for a term, which means the change affects your shared prospects immediately and their installed base much later. A rise that only touches new business is a different event from one that touches renewals.

Is an archived pricing page reliable enough to compare against?

Reliable for what it captured, and silent about what it did not. Archives often replay a page without the parts that load afterwards, so prices can be missing entirely. Check that the archived copy actually shows figures before treating it as a baseline, and record the country and currency it was served to.

How do you tell a price change from a page redesign?

Ask what a buyer pays and what a buyer gets, tier by tier, in both copies. A redesign moves things and renames them without touching either answer. The question survives a rewrite of the page, and asking what changed does not.

Should a pricing change reach the sales team straight away?

Yes, with the tier named and the date attached, and with the old figure beside the new one. What a rep needs is not that pricing moved but what to say to a buyer holding an old quote. The place that belongs is the competitor battlecard, updated the same week rather than at the next quarterly refresh.

Can you infer a competitor's strategy from a pricing change?

Sometimes, and rarely from one change. A single move up or down has too many explanations: a cost pass-through, a segment they have stopped wanting, an experiment. What carries meaning is a sequence in one direction over several quarters, which is why keeping the old copies matters more than reading any single diff.

Know about a repackaging in the same week

Flares watches competitor pricing and packaging, and flags a tier change on the day the page moves.

Discover Flares

14-day free trial · 30-second setup