AI reads. Rules decide.
AI pulls details out of notices, emails and photos. Whether a lead qualifies, who a buyer fits and what the offer range is come from written rules I can explain line by line.
The system
This is what I use on my own wholesale deals in St. Louis: a CRM built for how a wholesaler works, buyer matching, and deal tools for sizing up a property. Here’s how a deal moves through it, from the first call to a buyer shortlist.
Lead to buyer
Every screenshot uses sample records. No real sellers, buyers or addresses appear on this site.
Sellers reach me through my websites, a call, a meetup or a list I’m working. Every lead lands in one CRM with where it came from. Today puts new inquiries first, then anything overdue, then today’s calls and appointments.

Every lead sits in one stage on the Pipeline, from new to contacted, appointment, offer, under contract and assigned. Each card carries its next step. When a lead turns into a deal, the card shows both, so I can see at a glance which conversations have a property under offer.

Type in an address and the research console pulls nearby sales from county records, then gives a value range and a confidence level. Fewer than three good comps means no dollar figure. You can step through recorded lookups below.
Enter a property and see which buyers fit and why. A buyer’s ceiling is their max purchase minus my assignment fee. Location, property type and repairs are hard filters. Each buyer lands as a confirmed fit, a possible fit or missing information, and the shortlist names what’s missing. Automatic emails to buyers stay off, so I see every match before anyone is contacted.

From the deal’s page I save the shortlist. The deal keeps each buyer’s buy box as it was that day, along with the price and fee it was matched against, so I can always see why a buyer was on the list.

Walk the property, take photos and notes, and send them in. You get back a repair estimate and a property brief with an offer range, ready for review. It worked well on my deals and my client’s, and it’s becoming part of the Wholesaler’s Toolkit.
Contracts and closing are the next stages. They’re planned and haven’t been built yet.
Size up the deal
Five recorded lookups from St. Louis County public records, with the addresses removed. Pick one to see what the console did and why. Nothing here calls a live service.
Attended county facts and a 17-row sold-comp capture. Six comps selected; the subject parcel’s own earlier sale is retained as evidence but excluded from selection.
EnteredSubject A (a single-family parcel in Crestwood, MO 63126)
$348,000$315,000 – $379,000
score-weighted $/sqft over selected comps: weighted-median point, weighted P25/P75 band widened by ±0.25×CV dispersion, rounded to the nearest $1,000
Stated gaps| # | Sold | Price | Sq ft | $/sq ft | Dist. | Score | Decision |
|---|---|---|---|---|---|---|---|
| 1 | 10/3/2023 | $334,000 | 1,400 | $239 | 0.07 mi | 94.3 | includedrank 1 of 12 by similarity score (94.31) |
| 2 | 10/30/2023 | $339,900 | 1,320 | $258 | 0.49 mi | 85.1 | includedrank 2 of 12 by similarity score (85.07) |
| 3 | 9/21/2023 | $376,000 | 1,368 | $275 | 0.49 mi | 84.9 | includedrank 3 of 12 by similarity score (84.88) |
| 4 | 6/15/2022 | $412,000 | 1,391 | $296 | 0.21 mi | 81.4 | includedrank 4 of 12 by similarity score (81.42) |
| 5 | 10/4/2024 | $700,000 | 2,893 | $242 | 0.06 mi | 64.3 | includedrank 5 of 12 by similarity score (64.28) |
| 6 | 4/1/2025 | $455,000 | 1,931 | $236 | 0.07 mi | 63.9 | includedrank 6 of 12 by similarity score (63.88) |
sold-comp evidence is limited to the county assessment study window 2022-01-01 to 2025-04-01 — sales after the cutoff do not exist in this source
Keystone platform County demo evidence set, regenerated offline from retained public-record fixtures and anonymized for this site. Recorded 2026-09-01. Arms-length means the county validity code is X; anything else is treated as not arms-length. Fewer than 3 accepted arms-length comps means no dollar output.
How it decides
AI pulls details out of notices, emails and photos. Whether a lead qualifies, who a buyer fits and what the offer range is come from written rules I can explain line by line.
A confident wrong number is worse than none when you’re making an offer. If there aren’t at least three good comps, the system says so instead of guessing.
Anything AI produces is a suggestion until I look at it. Nothing gets sent to a seller or a buyer on its own.
Built for a client
Before it was one system, these were separate tools I built for a paid client and used on my own deals.
30+ qualified leads a month, sent the same day
Public foreclosure notices go up about 20 days before the auction. I built a tool that checked them every day, pulled out the details, looked up the property and emailed my client the qualified ones the same day, with a starting offer range.
3 sites every inquiry in one CRM
Separate sites for homeowners facing foreclosure, families with a probate property and investors looking for deals. Each spoke to its own reader, and every inquiry landed in one CRM. When the engagement ended, I handed them over with written notes.
Inbox to brief photos and notes to a reviewed estimate
After a walkthrough, I emailed in photos and notes and got back a repair estimate, a property brief and a CRM record. It ran on my deals and my client’s.
2,934 distressed-property leads in one ranked list
Vacant, tax-delinquent, condemned and expired listings pulled into one list, matched across sources and ranked by written signal rules and my client’s buy box, so we knew who to call first.
Where it stands
Have a deal, a process that’s slowing you down or a question? I’d like to hear it.