Guide
How to do competitor pricing analysis with AI
A prompt that extracts one pricing page into a fixed table, the method around it, and a checklist to run before you trust a single number.
AI assistants can read a competitor's pricing page, but pricing is the fact most likely to be stale or misread, because prices change without notice, pages hide numbers behind toggles and images, and models round and convert. The way to do it right is to give the assistant the exact pricing URL, turn on live web access, and make it fill a fixed table one competitor at a time: plan name, monthly price, annual price as the page expresses it, billing terms, seat minimums, the usage limits that gate each tier, free tier or trial, and whether purchase is self-serve or sales-led. Require every price quoted exactly as written, forbid rounding, and then verify every cell against the live page yourself and record the date.
Last updated: September 5, 2026
You are my pricing analyst. Open the live pricing page at the URL below right now, using web access, and extract what it says into the table below. Do not use anything you remember about this company. If you cannot open the page, say so and stop. Competitor: [name] Pricing page URL: [exact URL] My product, for context: [one line on what you do] Return one column per public plan, with these rows, in this order: 1. Plan name, exactly as written on the page 2. Monthly price, as stated, with currency symbol and unit (for example "$49 per user per month") 3. Annual price, and how the page expresses it (for example "$40 per user per month, billed annually" or "$480 per year") 4. Billing terms (monthly, annual, both, annual only, invoiced, prepaid credits) 5. Seat minimums or user limits (for example "minimum 3 seats" or "up to 5 users") 6. Usage limits that gate the tier (records, projects, API calls, storage, or anything counted) 7. Free tier or trial (which one, how long, what it includes) 8. How it is bought: self-serve checkout, contact sales, or both 9. The exact wording of any "Starts at", "Contact us", "Custom", or "Talk to sales" label, quoted word for word Rules: - Quote every price exactly as the page shows it. Do not convert currencies. Do not compute a monthly figure from an annual one or the reverse. Do not round. - If the page has a monthly and annual toggle, report both states and say which one is the default. - Where a value is absent, write "not shown on the page". Never guess or fill a gap from memory or another website. - If any price is shown as an image you cannot read, say so in that cell. - Below the table, list the source URL, today's date as the date checked, and any add-ons, overage fees, or footnotes on the page that change the effective price. - Do not add commentary or recommendations. The table and the notes are the whole answer.
What this guide covers, and who wrote it
This guide is about software pricing pages: plans, tiers, seat minimums, usage limits, annual versus monthly terms, and the line where "buy now" turns into "contact sales". Retail and e-commerce price scraping across thousands of SKUs is a different job with different tools, and this guide is not about that.
One thing before we start: we build Competely, a competitor analysis tool, and pricing is one of the eight dimensions every Competely report covers, under the name "Pricing & Sales". Everything below works in any AI assistant with web access. Near the end we say where a dedicated tool helps and where it does not.
Why pricing is the hardest part of competitor analysis to get right with AI
Of everything an AI assistant can tell you about a competitor, the price is the fact most likely to be wrong by the time you read it. Four reasons stack up.
Prices change without notice. Among the 500 large software companies whose pricing pages PricingSaaS tracks, there were more than 1,800 pricing changes in 2025, an average of 3.6 per company (Kyle Poyar, Growth Unhinged, January 2026, using PricingSaaS data). A number that was right in March can be wrong by June, and nothing on the page tells you it moved.
Pricing pages are built for people to read, and they are hard for software to parse. The monthly and annual prices often sit behind a toggle, so only one is visible at a time. Some pages render prices as images, some load the numbers with a script after the page appears, and some show a different currency depending on where the reader is. An assistant that fetches the page may see only the default state of the toggle, or no prices at all.
Models round and convert. Ask for a price and a model will happily turn "$45 per user per month, billed annually" into "$540 per year" or "about $45 a month". Either version hides how the price is expressed and what condition attaches to it.
Training data lags. Without live web access, an assistant answers from whatever pricing was in its training data, which can be a year or more old, and it states the old price with the same confidence as a fresh one.
What AI gets right, and where it hits a ceiling
With live web access turned on, the main assistants can open a pricing page and report what is on it. We checked each vendor's own documentation on September 5, 2026:
- ChatGPT's web search retrieves live results and links to sources, on the Free plan and every paid plan. OpenAI's own help page says results and citations can be incomplete, outdated, or incorrect, and asks you to open the cited source.
- Claude's web search reads live pages and cites them. Research, on paid plans, runs a longer multi-step investigation on top of web search.
- Perplexity searches the web for every answer and attaches numbered citations by default.
- Gemini grounds some answers on Google Search results, and its Deep Research mode uses Google Search as a default source.
All four also accept an uploaded image (ChatGPT on Free and paid plans, Claude in JPEG, PNG, GIF, or WebP, Perplexity in JPEG, PNG, or PDF, and Gemini as photos or documents). That matters for pricing pages, because when a price is rendered as an image or hidden behind a toggle, a screenshot with the toggle set the way you want is often the simplest thing you can hand the assistant.
Here is where the ceiling is. The assistant sees one snapshot of one page, as delivered to it, which may not be the page you see in your browser once scripts and toggles have run, and it has no way to know whether the page changed since. It cannot see negotiated prices or what a sales rep quotes on a call. And unless you force it with rules, it will summarize, round, and tidy the numbers, which is the opposite of what a pricing comparison needs.
The method, step by step
1. List the competitors and the exact pricing URLs
Write down each competitor and the exact URL of its pricing page. Do not let the assistant find the page, because it may land on a blog post, a third-party review with a stale number, or a regional version of the page. Open each URL yourself first and note whether the page has a monthly and annual toggle, and which state it shows by default.
2. Run the prompt with live web access, one competitor at a time
Turn on web search in whichever assistant you use, paste the prompt above, and fill in one competitor. Ask for five competitors in one message and columns start to blur between companies, so give each competitor its own chat and its own table.
If the page renders prices as images, or the assistant reports that it could not read a price, take one screenshot of the pricing table with the toggle set to monthly and another set to annual, attach both, and tell the assistant to read them as the source while keeping the URL as the citation.
3. Verify every number against the live page yourself
Open the pricing page next to the table the assistant produced and go cell by cell. Check the price, the unit (per user, per workspace, per 1,000 records), the billing condition ("billed annually"), and the seat minimum. Fix the table by hand where it is wrong. This is the step that turns a plausible draft into a fact you can act on.
4. Record the date
Write the date you checked at the top of each table. A price without a date is a rumor, and the date tells you when to re-run the check.
5. Compare packaging as well as price
Once the tables are filled and verified, line them up and read across the columns rather than down the price column. Three comparisons are worth more than the headline price: what each tier gates (the feature or limit that forces an upgrade), where the "contact sales" line sits (which company size gets pushed to a rep), and how deep the annual discount is (10 percent and 30 percent signal very different cash-flow priorities).
A worked example: Acme Analytics
Acme Analytics is a fictional competitor. Every value below is an illustration of the shape of a finished table, and none of it is a real price.
| Field | Starter | Team | Enterprise |
|---|---|---|---|
| Monthly price | $29 per user per month | $59 per user per month | not shown on the page |
| Annual price, as expressed | $24 per user per month, billed annually | $49 per user per month, billed annually | not shown on the page |
| Billing terms | Monthly or annual | Monthly or annual | Annual contract, invoiced |
| Seat minimums or user limits | 1 to 5 users | Minimum 5 users | not shown on the page |
| Usage limits that gate the tier | 3 dashboards, 100,000 events per month | Unlimited dashboards, 2 million events per month | Custom event volume |
| Free tier or trial | 14-day free trial, no card required | 14-day free trial, no card required | Demo on request |
| How it is bought | Self-serve checkout | Self-serve checkout | Contact sales |
| Exact label wording | "Start free trial" | "Most popular" | "Custom. Talk to sales" |
Source: acmeanalytics.example/pricing. Date checked: September 5, 2026. Notes: the annual toggle is the default state of the page. A footnote says events above the monthly limit are billed at $10 per additional 100,000 events on Team.
Two things in this table would be missed by a headline comparison. The Team plan has a five-seat minimum, so the real entry price for Team is five times the per-user figure. And the page defaults to annual pricing, so a casual reader remembers $49 when the month-to-month price is $59.
How to read the results
Positioning against your own tiers. Put your own plans in the same table format and compare tier by tier. If your mid tier costs more than a competitor's and gates the same features, you need a reason a buyer can see. If it costs less, check whether you are leaving money on the table.
Gaps in packaging. Look for features that one company gates behind its top tier while another includes them at the bottom. A gap like that is either a positioning opportunity for you or a sign the competitor has learned something about willingness to pay.
Seat minimums that exclude small teams. A minimum of five or ten seats quietly walks away from solo founders and two-person teams. If your competitors have minimums and you do not, say so in your marketing. If you have one and they do not, you should know which buyers you are losing.
A checklist before you trust the numbers
- Every price matches the live pricing page, plan by plan, with the toggle in the state the table names.
- Every price carries its unit and its condition: per user, per month, billed annually. A bare number is a warning sign.
- Nothing has been converted between currencies, and no annual figure has been computed from a monthly one or the reverse.
- Seat minimums, user caps, and the usage limit that gates each tier are recorded with the numbers the page uses, or the table says "not shown on the page".
- The exact wording of "Starts at", "Custom", and "Contact sales" labels is quoted, because "Starts at $500" and "$500" are different claims.
- Add-ons, overage fees, and footnotes are listed under the table, because they change the effective price.
- The source URL and the date checked are on the table.
- The free tier or trial is described with its limits, rather than only marked as present.
- You opened the page yourself and checked every cell, rather than trusting the assistant's citation.
Keeping the analysis current
A verified pricing table is right on the day you checked it. You have three honest options for keeping it that way.
By hand, on a calendar reminder. Save the prompt and the URL list, set a recurring reminder, and re-run the check every month or every quarter. Compare the new table to the old one and note what moved. This costs nothing but time, which adds up once you track more than a handful of competitors.
Build it with an assistant's scheduled tasks. All four assistants document a way to run a prompt on a schedule: Scheduled tasks in ChatGPT (OpenAI's help page lists Plus, Pro, Business, and Enterprise), scheduled tasks in Claude Cowork (paid plans, run in the cloud with your computer closed), Scheduled Tasks in Perplexity Computer (each run uses Computer credits), and scheduled actions in the Gemini app (up to 10 active at a time, with content prepared ahead of delivery, so it may not be the latest). Anthropic's help page lists tracking competitors as an example use. The catch is that each run hands you a fresh table, and comparing this run to the last one and deciding what counts as a change is still your work.
Buy a monitoring product. This is where our own product comes in. Competely re-reads each competitor's public pricing page on a schedule you set (every two weeks or monthly on any plan, weekly on Pro and Scale), compares it to the last read, and emails a short brief when something changed: a new tier, a moved seat minimum, a price increase, or a plan that disappeared. Monitoring is included on every paid plan. Competely is self-serve, from $39/mo, billed monthly or yearly, and you can cancel anytime.
Where Competely fits, and where it does not
Competely fits when you want the pricing table above, in the same fixed shape for every competitor, without running prompts one at a time. Its "Pricing & Sales" dimension covers plans, tiers, billing terms, discounting, and price transparency, and every data point carries a link to the page it came from, so verifying a number is a click rather than a hunt. A full analysis typically takes 30 minutes. You can read a full sample analysis without an account, for example the public Figma vs Adobe XD analysis.
It does not fit everywhere. Competely reads public pages only, so it does not see negotiated enterprise prices, volume discounts, or what a competitor's sales team quotes on a call. It is not a repricing engine, so it will not change your prices or recommend a number. It watches web pages, so it does not cover social media, press, or your CRM, and it does not track retail SKUs. It also does not replace the verification step for a number you are about to put in front of a customer. The source link is there so you can check.
If you are running this once for a board deck, the prompt and the checklist above are enough. If you find yourself re-running it every month, that is the point where a monitoring tool starts to earn its cost.
Frequently asked questions
- Can ChatGPT or Claude read a competitor's pricing page?
- Yes, when web access is on. ChatGPT web search, Claude web search, and Perplexity all read live pages and cite them. Gemini grounds some answers on Google Search and its Deep Research mode uses Google Search as a source, so check its own help pages for what ordinary chat fetches today. The limits are that they see one snapshot of the page as delivered to them, they may miss prices behind a toggle or inside an image, and they tend to round and convert unless you forbid it. Give them the exact URL, a fixed table, and strict quoting rules, then check every cell yourself.
- Why does AI get competitor pricing wrong so often?
- Four reasons. Prices change often, so anything from training data is stale. Pricing pages hide numbers behind monthly and annual toggles, render some prices as images, and load others with scripts, so a fetched page can be missing the numbers you see in a browser. Models round and convert unless told not to. And an assistant states an old or guessed price with the same confidence as a verified one, so the error is not visible until you open the page.
- Is there a competitor pricing analysis template?
- The table in this guide is one: plan name, monthly price, annual price as expressed on the page, billing terms, seat minimums, the usage limits that gate each tier, free tier or trial, how it is bought, and the exact wording of any "Starts at" or "Contact sales" label, with the source URL and the date checked underneath. Use one column per plan and one table per competitor. For a broader competitor template beyond pricing, Competely publishes a free competitive analysis template on its tools pages.
- What is the best tool for competitor pricing analysis?
- It depends on how often you need it. For a one-time comparison, any AI assistant with web access plus the prompt and checklist in this guide is enough, and it costs nothing beyond the assistant. For a recurring check, either schedule the prompt in your assistant and compare runs yourself, or use a monitoring product. Competely, our own product, re-reads competitor pricing pages on a schedule and emails a brief when they change. Retail price scraping across many SKUs needs different tools.
- How often should I check competitor pricing?
- Monthly is a reasonable default for a direct competitor, and quarterly for the rest of your set. PricingSaaS data reported in Growth Unhinged in January 2026 counted more than 1,800 pricing changes across 500 large software companies in 2025, so a check from six months ago is likely stale. Whatever cadence you pick, write the date checked on every table so you can tell at a glance how old the numbers are.
Related
Never miss a competitor move again
Get instant analysis and continuous monitoring of your competitors' pricing, features, messaging, and marketing
Capabilities and limits of the third-party tools described here are based on publicly available information and change frequently; check each tool's own site for current details. Product names, logos, and trademarks are the property of their respective owners. Competely is independent and is not affiliated with, endorsed by, or sponsored by any other company mentioned.