Can AI Prepare a CMA? What Realtors Must Still Verify

Coding Liquids tutorial cover featuring Sagnik Bhattacharya for Can AI Prepare a CMA? What Realtors Must Still Verify.
Coding Liquids tutorial cover featuring Sagnik Bhattacharya for Can AI Prepare a CMA? What Realtors Must Still Verify.

Use your MLS or CMA tool to pull and adjust the comps, then use an AI assistant for the narrative and for error checks on the exported data. Verify every comp, adjustment and total yourself. Never present AI output as an appraisal or a valuation: a CMA is your opinion of a price range.

The common failure is asking a chatbot "what is my listing worth?" and getting a confident number with invented sales behind it. The safer way round is to keep the facts in the MLS, where sales are recorded, and use AI only on material you have exported: summarising, spotting inconsistencies, doing a second check of the arithmetic and drafting the plain-English explanation a seller reads.

Follow me on Instagram@sagnikteaches

What the assistant sees, and what it must never supply

A CMA has four ingredients: the subject property's facts, the comparable sales, the adjustments between them, and the opinion of a price range. Only one of those, the narrative that explains the range, is something a language model is naturally good at. The other three depend on data and judgement.

Connect on LinkedInSagnik Bhattacharya
IngredientSourceAI role
Subject facts (size, beds, baths, lot, condition, upgrades)Your inspection, public record, sellerChecks the sheet for gaps and inconsistencies
Comparable sales and listingsMLS exportChecks the list against your criteria; never finds sales itself
AdjustmentsYour market knowledge, paired sales, local dataRechecks arithmetic and direction; never sets the amounts
Price range and strategyYouDrafts the explanation once you decide

That division keeps the number defensible. If a seller or another agent challenges a comp, you open the MLS record. You cannot do that with a number a chatbot produced.

Subscribe on YouTube@sagnikteaches

When the CMA tool itself has AI built in

"MLS tool first" increasingly means a tool with AI inside it. Realtors Property Resource (RPR), the data platform run by the National Association of Realtors, offers AI seller, buyer and lease CMAs in its mobile app (its help page says the AI CMA is not on the website at this time). The help page explains how each part works, and each one tells you what to verify:

  • Comp scores. System-selected comps are ranked by a score, and tapping a score shows the similarities and differences from the subject. A high score is a starting point; still open the MLS record and read the remarks.
  • Subject facts. You can edit beds, baths and living area before the analysis runs, and the page singles out square footage, bed and bath counts and lot size. Correct these first, because every comp is compared against them.
  • Adjustments. You rate each comp's overall condition against the subject on a slider from inferior to superior, add optional adjustment notes, and the AI turns that into a dollar adjustment. The page says it uses no fixed formula, weighing living area, bedrooms and bathrooms, year built, property characteristics and your notes.
  • Comp count. Up to 25 comps are offered and you can choose up to 20; the page says 6 to 10 typically give the most balanced analysis.
  • The value. The page notes that the AI CMA value may differ from the property's automated valuation, because each uses a different calculation.

"No fixed formula" is the line to act on. You cannot recompute an adjustment you did not set, so for any comp that carries weight in your range, write your own adjustment and its source (paired sales, local data) beside the tool's figure. Where the two differ by more than you can explain, go with your evidence and say why in the pack. The same habit applies to any CMA module with AI in it: find out from its help pages which parts are automated, because those are the parts you check by hand. The rest of this tutorial assumes the comps and adjustments come from your MLS or CMA tool, and a general assistant checks and explains them.

The Complete Excel Course with AI Integration thumbnail

The Complete Excel Course with AI Integration

From formulas and pivot tables to Power Query, DAX, VBA and AI with Copilot, ChatGPT and Claude — hands-on from the first lesson.

By Sagnik Bhattacharya and Virginia Thorn, Primetime Emmy Award winner

Buy now

Step one: set the comp criteria before you pull anything

Write the criteria first, in a line or two, and keep them with the file. Typical ones: same neighbourhood or subdivision, closed within the last three to six months (shorter in a fast-moving market, longer where sales are thin), size within 10 to 20 percent of the subject, same bedroom count and property type, and similar age and condition. Your MLS may use its own filters; apply the same criteria each time so two CMAs by the same agent are comparable.

Then ask the assistant to sense-check the criteria against the subject, not to choose the comps:

Subject: 3-bed, 2-bath, 1,650 sq ft, built 1998, updated bathrooms, dated kitchen, 2-car garage,
0.18-acre lot, busy road at the rear. Market: moderate activity, about 40 sales a quarter in the
subdivision. Suggest search criteria for closed comps (time window, size range, features to match)
and list three reasons a comp might look right on paper but be wrong. Do not name any sales.

Illustrative reply: a six-month window and size within 15 percent, with a note to match the busy-road factor, and warnings about comps backing onto parks, sales to relatives and sales with seller concessions. The final reasons are the useful part: they prompt you to check remarks fields in the MLS for concessions and non-arm's-length sales.

Step two: export, then check the list

Export the candidate comps from the MLS as a spreadsheet or table, with the fields the system allows: address, status, close date, list and sale prices, days on market, size, beds, baths, lot, year built, garage, remarks. Check the export terms of your MLS first. Its rules may limit how listing data is shared with third-party tools, and your brokerage may have a policy. If you are not sure, ask before you paste.

Below is an MLS export of 12 candidate comps and my criteria. Using only this data:
1. Flag any comp that breaks a criterion and say which one
2. Flag any comp whose remarks suggest a non-standard sale (concessions, relative,
   short sale, estate, new build, distressed)
3. Flag duplicates or near-duplicates (same address, relisted within 90 days)
4. Calculate price per square foot for each, and the median
5. Do not add information that is not in the table
[criteria and export pasted here; seller details removed]

An illustrative result: two comps flagged for size (one is 28 percent larger), one for "seller paid closing costs" in the remarks, one as a relist. Price per square foot ranging from 226 to 262, median 241. What you fix: open each flagged record in the MLS and check the flag. The assistant can misread remarks, and it can only check what is in the table. Recalculate the median yourself in a spreadsheet, since models make arithmetic slips.

Spot the comp that is wrong in a way the data does not show

Some problems are not in the export: a comp that backs onto a railway, a house with an unpermitted extension, a sale that closed before a rate change shifted buyers' budgets. You find those by driving past, looking at photos and calling the listing agent. No assistant does it. Record each manual check in the file, such as "viewed 5 Mar, rear garden faces the road, adjust".

Step three: adjustments, with the arithmetic checked twice

Adjustments correct for differences between each comp and the subject. The rule for direction is simple and the easiest to get backwards: adjust the comp, not the subject, and if the comp has something the subject lacks, subtract; if the comp lacks something the subject has, add. The amounts come from your market knowledge, paired-sales evidence and local data. The assistant's job is to check the table you built.

Here is an illustrative main example. The subject is a 3-bed, 2-bath, 1,650 sq ft house with a two-car garage and a dated kitchen. A size adjustment of 110 per square foot is used here for illustration only; use what your market shows.

CompSale priceAdjustmentsNetAdjusted priceGross adjustment as % of price
A, closed 2 months ago412,000Size: comp 70 sq ft larger, minus 7,700. Garage: comp has one-car, subject two-car, plus 6,000-1,700410,30013,700 = 3.3%
B, closed 4 months ago389,000Size: comp 50 sq ft smaller, plus 5,500. Kitchen: comp updated, subject dated, minus 10,000-4,500384,50015,500 = 4.0%
C, closed 5 months ago405,000Extra half bath in comp, minus 4,000. Time adjustment for market movement, plus 2,000-2,000403,0006,000 = 1.5%

The mean of the three adjusted prices is (410,300 + 384,500 + 403,000) divided by 3, which is 399,267, and the range is 384,500 to 410,300. Comp C, with the smallest gross adjustment, carries the most weight in the argument. A reasonable opinion might be a listing range of about 390,000 to 410,000, with the reasoning stated. The point is that the range comes from you reading three comps, not from an average alone.

Now the check prompt, using only the table:

Here is my adjustment table. Without changing any amount:
1. Recompute each net adjustment, adjusted price, gross adjustment percent, and the mean
2. Check that each adjustment's direction is consistent with the note beside it
3. Flag any gross adjustment over 15% of price, and any single adjustment over 5%
4. List any adjustment with no reason noted
[table pasted here]

If the assistant reports that comp B's kitchen adjustment should be positive, check why. It may be right: the direction convention is easy to flip. Or it may have misread the note. Decide by reading the comp's photos, not by trusting either the table or the tool.

Step four: the narrative, drafted after you decide

Once the range is yours, draft the explanation. The seller needs to understand how you got there and what could move it. An assistant can turn your notes into a plain-English page, but the figures must be the ones you decided, and any claim has to be traceable to a comp.

Write a one-page explanation of my price opinion for the seller, in plain English, warm and
direct, 350 words. Use only the figures and comps below. Include: the range (390,000 to
410,000), why comp C carries the most weight, why comp B is lower (updated kitchen we do
not have), the effect of the busy road, and two things that could move the number (kitchen
update, season). End by saying this is my opinion of a likely price range for marketing, not
an appraisal, and that the market sets the final price. Do not promise a sale price or a
time to sell.
[comps, adjustments, notes pasted here]

A sample result, illustrative, is a clean page with the range, three short paragraphs on the comps and a closing disclaimer. What you fix: any sentence that sounds like a guarantee ("your home will sell for"), any comp described more favourably than the data supports, and any number that does not match your table. Read it aloud. If you would not say it across a kitchen table, rewrite it.

Keep the closing disclaimer, whatever else you cut. The National Association of Realtors' valuation policy says non-appraisal opinions, a CMA among them, must make it clear to the intended user that they are not appraisals, and your licensing rules or brokerage may require wording of their own. A disclaimer the assistant drafted is fine, provided you have checked it against those.

A worked listing appointment: from request to pack in one afternoon

Take an illustrative agent with a listing appointment at 5pm. By 1pm she has the subject's details from the seller's form and her own notes from the previous week's visit.

1.00pm (15 minutes). She writes the criteria and runs the sense-check prompt, which reminds her about concessions and the busy road.

1.15pm (30 minutes). She exports 12 candidates from the MLS, runs the checking prompt, and opens the four flagged records. She drops two and keeps ten.

1.45pm (45 minutes). She narrows to three comps, plus two actives and one pending for context, and drives past two. She builds the adjustment table from her own market knowledge.

2.30pm (15 minutes). The arithmetic prompt confirms her totals and queries one direction, which she verifies and keeps.

2.45pm (30 minutes). She sets the range, drafts the explanation page with the assistant, edits it and prints the pack.

A rough sum, illustrative: the same pack, built by hand, takes about three hours; this takes about two and a half. The saving is modest, and honest. Most of the time is the judgement, and that is as it should be. The assistant saves effort on the checking and the writing, and the main gain is fewer errors going out of the door.

Context that frames the range: actives, pendings and months of supply

Closed sales tell you what buyers paid. Active and pending listings tell you what buyers are choosing between now, and that is what a seller competes against. Keep them in a separate block of the CMA, not in the adjustment table, and use them for the strategy conversation.

Export the active and pending listings in the same area and ask the assistant for a simple summary, using only the table: how many are active, how many pending, the median list price and price per square foot, the median days on market for the pendings, and how many of the actives have had a price cut. Then work out months of supply yourself: active listings divided by the number of sales in the last month or quarter, expressed in months. With 18 actives and 14 sales a month in a subdivision, that is about 1.3 months, which points to a seller-friendly market (illustrative). The thresholds that separate a seller's market from a balanced one are a matter of local convention, so use the ones your market and brokerage use.

What you fix after the summary: check that pendings were not counted as actives, and open any listing the summary calls "price reduced" to confirm it. A single misread status changes the picture, and it is exactly the kind of slip a model makes when the export has a status column with inconsistent labels.

Pricing strategy scenarios the seller can choose between

A range is more useful when you tie it to a plan. With the illustrative figures above, a three-line scenario page works well for the appointment:

Scenario 1: List at 410,000. Top of the range. Expect fewer showings; plan a review at day 14.
Scenario 2: List at 399,000. Middle of the range. Matches the adjusted average of the three comps.
Scenario 3: List at 389,000. Below the range to draw multiple offers. Only if the seller wants speed.

Give the assistant these three lines and your notes, and ask for a plain-English paragraph on each: what the seller can expect, what you would watch, and when you would revisit the price. Tell it not to forecast days on market, because it has no data on this market, and not to promise an outcome. What you fix: any sentence that implies a number you did not provide, and any reassurance that sounds like a guarantee. The seller should leave the meeting understanding the trade-off, not holding a promise.

A CMA file checklist, filled in

A short checklist kept with each CMA turns good habits into a record, useful if a seller later asks how you reached the number. A filled-in extract (illustrative):

  • Subject facts confirmed: size 1,650 sq ft from the seller's survey, checked against public record; kitchen dated, bathrooms updated 2022 (seller invoice seen).
  • Criteria written before search: six months, size within 15 percent, same subdivision, no concession sales.
  • Comps opened in the MLS: A, B and C; remarks read; no concessions found; C viewed from the street on 5 March.
  • Adjustments sourced: size at 110 per sq ft from the last six paired sales; kitchen 10,000 from two sales with and without; garage 6,000 from the same sources.
  • Arithmetic rechecked: by spreadsheet and by the assistant; one direction query resolved, no change.
  • Range set by: the agent, with reasoning noted; second opinion from a colleague, 5 March.
  • Disclaimer included: opinion of a price range for marketing, not an appraisal.

The colleague's second opinion is worth the five minutes. Ask them to look at the comps and the range without seeing your number first, then compare. A gap of more than a few percent tells you something about a comp or an adjustment, and it usually shows up before the seller does.

A quick case from a different kind of listing

A property with no good comps, such as a converted barn with a large lot, breaks the three-comp model. The temptation is to ask an assistant for a figure. Don't. Widen the search area and the time window, show your reasoning for each stretch, and say plainly in the pack that the evidence is thin and the range is wider. If the gap is too large, recommend a professional appraisal for the seller's decision. Saying so builds more trust than a tight number built on weak data. An assistant can help draft that honest paragraph once you have written down the limits of the evidence, and it can list the questions a buyer's agent would ask about it. The decision to widen the range is yours.

Five things that go wrong

The invented comp. A general chatbot asked for "recent sales near 12 Elm Street" returns three addresses with prices. None exist. Rule: sales come from the MLS only.

The sign flipped. An agent adds 10,000 to a comp that has an updated kitchen the subject lacks. The adjusted price comes out high, and the seller's expectation with it. The direction check catches it.

The stale market. A six-month-old comp is used unchanged after rates move and buyer demand shifts. Add a time adjustment or choose newer comps, and say so in the narrative.

The overconfident line. A draft says "buyers will pay a premium for the renovated bathrooms". The comps do not show a premium. Replace it with what the data says.

A before and after. Before: "Your home is worth 405,000." After: "Based on three recent sales, I'd suggest listing between 390,000 and 410,000. Where in that range we land depends on the kitchen and how much we price in the busy road." The second is honest and helps the seller decide.

Fair housing, privacy and disclosure

A CMA describes property, not people, and the narrative should keep it that way. Do not let an assistant add commentary on neighbourhood demographics, schools described in coded terms or who "would like" the area. That language risks breaching fair housing rules and does nothing for a price opinion. Strip it from any draft. See the fair housing checklist for leasing chatbots for the wider issue.

On privacy, use a business plan with no training on your content (OpenAI and Anthropic both state this for their business tiers; on a consumer account, check the training setting yourself), remove the seller's name and contact details, and follow your MLS rules on data. If you use a virtual staging or photo tool, disclose edited images, as covered in AI virtual staging costs and disclosure. For how AI errors in listings mislead buyers, AI listing mistakes and how to check shows a method that carries over to CMAs.

Where the CMA fits in your wider workflow

A CMA is the start of a conversation, not the end. After the listing appointment, follow-up with the seller often decides who gets the listing, and automating buyer and vendor follow-up shows how to keep it consistent. If your CRM already offers AI summaries, the CRM comparison helps decide what is worth paying for. The AI hub lists the rest of the series.

How to check the routine works

After each closed sale, compare your range with the final sale price and note the difference and the likely reason (concessions, multiple offers, condition found at inspection). Over a dozen files you will see whether your adjustments run high or low, and whether the arithmetic check ever catches an error. If the AI check never finds anything, either you are careful or you are not giving it enough to check, so try feeding it the notes behind the table as well. And once a quarter, read one seller page cold, as the seller would, and ask whether every statement can be traced to a comp in the pack. If it can, the routine is working. If not, tighten the prompt, and keep the opinion yours.

Questions agents ask about AI and CMAs

Can ChatGPT or Claude pull comps for me?

Not reliably. A general assistant has no access to your MLS and may invent sales that look plausible. Pull comps from the MLS or your CMA tool, export them, and give the assistant that data to work from. Anything the assistant says about a sale you did not supply is unverified.

Is an AI-generated CMA an appraisal?

No. A CMA is an agent's opinion of a likely listing or sale price range for marketing purposes. An appraisal is a licensed appraiser's valuation for a lender or legal purpose. Never present AI output, or your CMA, as either an appraisal or a guaranteed value.

How many comps should a CMA use?

There is no fixed number. A tight set of three to six recent, similar, nearby closed sales is easier to defend in an adjustment grid than a long list of loose matches, with active and pending listings shown separately as context. RPR's help page for its AI CMA says 6 to 10 comps typically give the most balanced analysis, with a hard limit of 20.

How do I check an adjustment is sensible?

Compare it with paired sales or with local market data, and check the direction: if the comp has a feature the subject lacks, adjust the comp's price down. Set your own warning line for gross adjustments, for example 15 percent of the sale price, and treat a comp above it as weak: look for a closer sale before you rely on it.

Should I tell sellers I used AI?

Be open about it if asked, and make clear that the price opinion is yours. Sellers care that the numbers are right and that you can explain each comp. Check your brokerage's policy and your local rules on technology and client data before uploading client details to any tool.

Further reads

Sources: RPR help page for AI CMAs in the RPR app; NAR article on the RPR AI CMA launch; NAR Responsible Valuation Policy on CMAs and non-appraisal opinions; OpenAI business-data page and Anthropic privacy centre on training defaults. All read 4 November 2026. Your MLS rules and brokerage policy govern the details.

Want a CMA routine your whole team can run?

On a 1:1 call we'll look at how you build a CMA today, decide which narrative and checking steps AI can take on, and keep the comps and the price opinion firmly yours.

Book a 1:1 call with me