Evalgent
Back to Blog
Voice AI Testing

AI Cold Calling for Real Estate: Compliance and Accuracy

Deepesh Jayal
15 min read
AI Cold Calling for Real Estate: Compliance and Accuracy
On this page

This post is for product teams at investor data and dialer software. Your customers are wholesalers, flippers and agents with skip-traced owner lists. Search for AI cold calling real estate tools and you find voice demos, not consent gates. Your software decides which numbers get dialed, what the agent says, and what lands back in the CRM. This is not legal advice. Treat it as an engineering map of the rules, and have counsel sign off on your gates.

Two neighbouring posts cover adjacent ground. Measuring motivated seller AI calls scores seller qualification accuracy. Real estate speed-to-lead AI covers inbound leads who asked to be called. This post covers the hard case: outbound calls to owners who never asked. For the wider testing picture, start with the real estate lead testing playbook.

$500
Statutory damages per violation, up to 3x if willful (47 U.S.C. 227(b)(3), (c)(5))
31 days
Max age of the DNC registry copy for the safe harbor (47 CFR 64.1200(c)(2))
10 business days
Max time to honor an internal do-not-call request (47 CFR 64.1200(d))
8 a.m.–9 p.m.
Federal calling window, called party's local time (47 CFR 64.1200(c)(1))

What AI cold calling for real estate actually means

AI cold calling: an outbound call to a person with no prior relationship, where a synthetic voice driven by a language model speaks and listens in place of a human caller.

The list usually comes from public property records, with phone numbers appended by a skip-trace vendor. A wholesaler might pull absentee owner records with high equity in three ZIP codes. The dialer loads 8,000 numbers. The AI asks if the owner would consider an offer, captures timeline and condition, and books a callback.

Every step creates a compliance or accuracy fact. Skip tracing guesses the owner's number. The scrub and the clock decide whether and when you may call. The write-back decides whether the next campaign repeats a mistake. That chain is what real estate cold calling compliance has to cover for an AI caller.

Dialer vendors already build some controls. DealMachine's TCPA guide for investors describes a "Scrub DNC" option on its dialer. It also describes AI review that flags calls pitching goods or services to DNC numbers. An AI voice adds a second rule set on top.

Most investor-tool docs focus on the Do Not Call list. For AI voice cold calls, that is the wrong first gate. The TCPA has two separate tracks.

Track 1 is the voice track, 47 U.S.C. 227(b). It bars calls "using any automatic telephone dialing system or an artificial or prerecorded voice" to a cell phone without "prior express consent." Section 227(b)(1)(A)(iii) applies to any call, not just sales calls. Section 227(b)(1)(B) covers artificial-voice calls to residential lines.

Track 2 is the DNC track, 47 U.S.C. 227(c). It bars "telephone solicitations" to numbers on the National Do Not Call Registry. The FTC's Telemarketing Sales Rule has a parallel ban at 16 CFR 310.4(b)(1)(iii)(B).

In February 2024 the FCC joined the two. Declaratory Ruling FCC 24-17, released February 8, 2024, says the artificial voice rules "encompass current AI technologies that generate human voices." It adds that such calls "require the prior express consent of the called party." Your LLM agent with a cloned or synthetic voice is an artificial voice. A clean DNC scrub does not supply consent.

Then there is the "offers to buy" argument. Two federal district courts held that calls offering to buy a house are not telephone solicitations. In Cofey v. Fast Easy Offer (D. Ariz., June 5, 2025), the court said it could not "rewrite what Congress wrote." TCPAWorld's summary covers it. Aussieker v. Aghazadeh (E.D. Cal., July 18, 2025) followed it, as TCPAWorld reported.

Read those rulings narrowly. They decide only whether an offer to buy is a telephone solicitation under the DNC track. The 227(b) voice track has no solicitation element. They are district court rulings, and some state laws expressly reach offers to buy. An agent prospecting for a listing sells a service, so the defense does not fit agents.

Call scenarioAI voice to a cell phoneDNC registry applies?What your gate needs
Wholesaler offer to buy, no consentPrior express consent required (227(b))Contested; two courts said noBlock, or human dial only
Agent prospecting for a listingPrior express written consent (64.1200(a)(2))YesConsent record plus scrub
Owner who filled in a "get an offer" formConsent per the form's termsUsually not, if it was invitedConsent record, scope check
Reply to an owner who called you firstDepends on what they asked forUsually notLog the inbound call as the basis

The result is blunt. A non-consenting skip-traced list is a human-dialer list. The February 2026 class action against a Michigan mortgage lender shows the pattern. Inman reported that it alleges calls to cell phones using a "synthetic or prerecorded voice" without prior express written consent.

Decision tree of six pre-dial gates for an AI cold call to a property owner: consent, written consent, registry age, internal DNC, National DNC and local time

The pre-dial gates, in order

Each gate is cheap and runs before the dialer touches a trunk. The most decisive check runs first.

1. Voice and line type. If the AI voice will speak, look up the line type. Wireless and residential lines trigger 227(b).

2. Consent record. Is there consent for this number, this caller and this purpose? Store who gave it, when, the exact form text, and the source URL.

3. Purpose. Tag each campaign as an offer to buy or a service pitch. Listing prospecting is a service pitch. A mixed script counts as both.

4. Registry age. Was this number checked against a registry copy no more than 31 days old? That is the telephone solicitation safe harbor at 47 CFR 64.1200(c)(2)(i)(D).

5. Internal DNC. Has anyone on this number ever asked this customer to stop? Section 64.1200(d) requires honoring that within 10 business days and keeping it for five years.

6. State rules. Some states run their own DNC lists and require telemarketer registration. Check each state your customers call into with counsel.

7. Local time. Is it between 8 a.m. and 9 p.m. where the called person is? Florida's window ends at 8 p.m. and caps calls on the same subject at three per 24 hours, per Jones Day's summary of the 2021 amendments.

8. Reassigned numbers. Skip-traced numbers go stale. The safe harbor at 64.1200(m) protects callers who checked the FCC's reassigned numbers database first and relied on a "no" answer.

The time zone trap

The calling window runs on "local time at the called party's location." Your system does not know that location. It has three guesses, and they often disagree.

The area code is the weakest guess, because numbers port across the country. The property address is wrong for absentee owners by definition. The skip-traced mailing address is the best of the three, and it can still be stale.

The safe rule is to call only inside the overlap of all three windows. Take an Ohio rental owned by someone with a 602 number and a Phoenix mailing address. Ohio runs on Eastern time. In summer, Phoenix is three hours behind Eastern. The intersection is 11 a.m. to 9 p.m. Eastern, which is 8 a.m. to 6 p.m. in Phoenix. You lose three dialing hours on that row and remove a violation you cannot detect afterwards.

A simplified pre-dial gate in Python

This is a simplified sketch, not a compliance engine. Field names are illustrative. Wire each one to your own consent store, registry download and internal DNC table.

from dataclasses import dataclass
from datetime import datetime, date, time
from zoneinfo import ZoneInfo

@dataclass
class Row:
    phone: str
    line_type: str            # "wireless" | "residential" | "business"
    consent_scope: set        # e.g. {"ai_voice", "marketing"}; empty if none
    registry_checked: date    # date of the registry copy used for the scrub
    on_national_dnc: bool
    on_internal_dnc: bool
    tz_candidates: list       # from area code, mailing address, property
    state_window_end: int = 21  # 20 for Florida

def gate(row: Row, campaign_purpose: str, ai_voice: bool, today: date, now_utc: datetime):
    if ai_voice and row.line_type in {"wireless", "residential"}:
        if "ai_voice" not in row.consent_scope:
            return "BLOCK: no consent for artificial voice (227(b))"
    if campaign_purpose == "service_pitch" and ai_voice and "marketing" not in row.consent_scope:
        return "BLOCK: telemarketing needs written consent (64.1200(a)(2))"
    if (today - row.registry_checked).days > 31:
        return "HOLD: registry copy older than 31 days"
    if row.on_internal_dnc:
        return "BLOCK: internal do-not-call"
    if row.on_national_dnc and campaign_purpose != "offer_to_buy":
        return "BLOCK: National DNC"
    for tz in row.tz_candidates:
        local = now_utc.astimezone(ZoneInfo(tz)).time()
        if not (time(8, 0) <= local < time(row.state_window_end, 0)):
            return f"HOLD: outside window in {tz}"
    return "DIAL"

The sketch lets a National DNC hit through on an offer to buy, but only after the consent gate passed. Whether to block those rows too is a call for counsel. The case law is two district courts.

What the AI says: accuracy is a compliance surface

Once the call connects, the risk moves from the list to the words. An LLM agent improvises within a prompt. It will fill silence with plausible claims unless you test it.

Identity and disclosure

Section 64.1200(b)(1) requires artificial-voice messages to "state clearly the identity of the business" at the start. Section 64.1200(b)(2) requires a callback number. If the call is telemarketing, the TSR's 310.4(d) adds disclosures such as "the identity of the seller."

Two state AI rules matter for disclosure. California's Public Utilities Code 2874, as amended by AB 2905 from January 1, 2025, requires automatic dialing-announcing calls to "inform the person called if the prerecorded message uses an artificial voice." Utah's amended AI law, effective May 7, 2025, requires disclosure when a consumer makes "a clear and unambiguous request" to know, per Davis Polk. The safe product default is simple. Disclose up front, and answer "Am I talking to a robot?" truthfully every time.

The five claims an AI cold caller must not invent

Test for each of these claims by name. Each one is a misleading statement your customer owns, and each is easy for a model to produce under pressure.

1. A fake buyer. "I have a cash buyer ready for your street." Unless the CRM says so, it is invented.

2. A fake price. "Homes like yours are getting $310,000." The agent should not quote values it did not retrieve.

3. A fake urgency. "Your property was flagged for tax default." Distress data may exist in the list. Saying it aloud is a different act.

4. A fake identity. "I'm calling from the county" or a human first name with no disclosure.

5. A fake relationship. "Following up on your request." On a cold list there was no request.

Owner and address confirmation

The person who answers may be the owner, a spouse, a tenant, an heir or a stranger. The agent must confirm two facts before it qualifies anything: who it is talking to, and which property.

Address errors are subtle in speech. "Four eighteen Elm" and "four eighty Elm" are one phoneme apart. Absentee owners often hold several properties. If the agent says the wrong address and the owner agrees to "talk about the house," the record links the wrong parcel. A practical rule is to read the address once with the street number digit by digit. Then ask the owner to confirm it, and store the confirmation flag.

Opt-outs and write-back: where errors repeat

An opt-out the AI hears but does not store is the worst bug in this product. The next campaign calls that number again. Statutory damages under the DNC track need "more than one telephone call within any 12-month period," so the repeat call is what turns a mistake into a claim.

What counts as an opt-out

Callers rarely say "add me to your do-not-call list." They say "take me off," "stop calling here," "don't ever call me again," or hang up after cursing. Some say "this isn't his number anymore" or "he passed away in May." Each of those must change the number's status, not just the lead's status.

The rules on revocation are moving. The FCC's revocation order, FCC 26-67, was adopted September 30 and released October 1, 2026. Per Kelley Drye and Nixon Peabody, it narrows "revoke-all" for informational calls and lets callers name exclusive opt-out methods. It takes effect 30 days after Federal Register publication, which had not happened as of October 7. For cold sales calls, the safe design treats any spoken stop request as final.

Four cold-call moments where the CRM stored the wrong thing, including a stop request saved as a 30-day callback and a wrong street number

Write-back rules that survive

  • Key on the phone number, not the lead. One number can appear on many leads and many campaigns. The opt-out must follow the number.
  • Write the opt-out before the call ends. If the call drops mid-sentence, the stop request still needs a durable record.
  • Store the evidence. Keep the timestamp, the utterance text and an audio offset.
  • Re-check on every upload. A customer who re-imports a list must not resurrect a blocked number.
  • Separate "wrong person" from "not interested." A wrong-party answer means the skip trace failed. Feed it back so the number leaves that owner's record.

Multi-tenant products have one more trap. Section 64.1200(d) frames the internal list per "person or entity on whose behalf" calls are made. Your platform may serve 400 investors. Keep each customer's list separate, and enforce it at dial time, not in a nightly job. The multi-tenant voice agent testing guide covers how to test one agent across hundreds of customer configs.

Worked math: what one write-back bug costs

These numbers are illustrative assumptions, not data.

Say a release breaks opt-out write-back for one customer for five days. That customer's AI places 1,500 connected calls a day. Assume 2% of connects say "stop calling." That is 30 opt-outs a day, or 150 over five days.

Assume the cadence re-dials each number twice more within two weeks. That is 300 repeat calls to people who said stop. Under 227(c)(5), each violating call can carry up to $500. That floor is $150,000. If a court finds the violation willful or knowing, the cap triples to $450,000.

Now the test math. You want evidence that the agent misses fewer than 1% of spoken opt-outs. With zero misses in n trials, the 95% upper bound on the miss rate is about 3/n, the "rule of three." Zero misses in 300 varied opt-out utterances supports a miss rate under 1%. For under 0.5%, you need 600. One miss in 300 does not pass.

How to test an AI cold calling agent before each release

Run this on every prompt, model or flow change. The outbound voice agent testing plan covers answer rates and voicemail. This sequence is the compliance and accuracy layer on top.

1. Unit-test the pre-dial gate. Build a fixture list with known answers. Include a wireless number with no consent, a registry copy 32 days old, an internal DNC hit and a Phoenix owner of an Ohio house. Every row must land on the expected verdict.

2. Generate opt-out scenarios from the prompt. List every state where the owner can speak: greeting, disclosure, address read-back, qualification, scheduling. Put a stop request in each state. Evalgent generates scenarios like these from an agent's prompt and flows, including branches the prompt does not mention.

3. Vary the caller. Opt-outs said over the agent, in a noisy car or in Spanish are the ones that get missed. Run each scenario across caller profiles with different accents, pace, interruption levels and background noise. Evalgent's caller profiles cover those settings, and its simulator reaches the agent over PSTN, SIP or WebRTC.

4. Judge from the audio. A transcript can show "stop calling" while the agent talked over it and never acted. Score the recording for barge-in handling and talk share, not only the text. Our accent robustness guide explains why speech recognition misses cluster on certain speakers.

5. Check the record, not the reply. After each test call, read the CRM row and the internal DNC table. Pass only when the number is blocked and the evidence fields are filled.

6. Run the claim checks. Ask the agent about buyers, prices, distress and its own identity. Fail any answer that invents a fact the CRM does not hold. The hallucination rate guide gives a scoring method.

7. Hold the release gate. Ship only when every gate in the scorecard below passes. Version the prompt so you can roll back, as described in shipping prompt changes safely.

8. Keep scoring production calls. Evalgent's production monitoring takes pushed call recordings, maps them to scenarios and flags policy failures, PII leakage and tool-call failures with fix recommendations.

Release scorecard for an AI cold calling agent with six checks, what each is measured on, and an illustrative pass gate such as zero missed opt-outs in 300 varied utterances

Who this matters for, and when to skip it

Investor dialer and data platforms adding an AI voice: build the consent gate first. CRMs that only summarise human calls: the voice track does not apply, but opt-out write-back and address accuracy still do. Teams calling inbound leads only: start with the speed-to-lead TCPA checks. Brokerages buying rather than building: use the real estate lead voice agent vendor checklist.

Frequently asked questions

AI cold calling for real estate is legal only where consent rules are met. The FCC's 2024 ruling FCC 24-17 treats AI voices as artificial voices. Calls to cell phones then need prior express consent, and written consent for telemarketing. A non-consenting skip-traced list therefore fails the voice rule even when every number passes a Do Not Call scrub.

Can you use an AI voice to cold call homeowners on a skip-traced list?

An AI voice on a skip-traced list of cell numbers runs into 47 U.S.C. 227(b), which requires prior express consent for artificial-voice calls. Skip-tracing does not create consent. Residential landlines face a parallel rule. Most compliant products route non-consenting lists to human callers and reserve the AI voice for owners who opted in.

Do real estate investors have to scrub the Do Not Call list?

Real estate investors making pure offers to buy have won two district court rulings in 2025 holding such calls are not telephone solicitations. Those rulings cover only the Do Not Call track and are not appellate law. Agents prospecting for listings are soliciting services, so the registry applies. Most dialer platforms scrub every list anyway.

How often should you scrub against the National DNC Registry?

The National DNC Registry safe harbor requires a registry copy obtained no more than 31 days before the call. That appears at 47 CFR 64.1200(c)(2)(i)(D) and 16 CFR 310.4(b)(3)(iv). A product should store the registry date per number and hold any row whose last check is older than 31 days.

What hours can you cold call homeowners?

Federal rules allow solicitation calls between 8 a.m. and 9 p.m. in the called person's local time. Some states are stricter; Florida ends at 8 p.m. Because area code, property address and mailing address can sit in different time zones, the safest dialer calls only inside the overlap of all three windows.

Does an AI cold caller have to say it is an AI?

AI disclosure duties come from both federal and state law. Federal rules require artificial-voice calls to identify the business at the start. California's Public Utilities Code 2874 requires telling the person when an automated call uses an artificial voice. Utah requires disclosure when a consumer clearly asks. Disclosing at the start is the simplest product default.

What should an AI cold caller do when the owner says wrong number?

A wrong-number answer means the skip-trace match failed, not that the owner declined. The AI should apologise, end the call and mark the number as not belonging to that owner. It should also add the number to the internal do-not-call list. Logging it only as "not interested" keeps the bad match alive for the next campaign.

How do you test an AI cold calling agent for compliance?

Testing an AI cold calling agent covers three layers. First, unit-test the pre-dial gate with fixture rows. Second, run simulated calls with opt-outs placed in every conversation state, across accents and noise. Third, check the CRM record after each call. About 300 varied opt-outs with zero misses supports a miss rate under 1%.

The bottom line

AI cold calling for real estate is a consent problem first and a Do Not Call problem second. Gate every dial on consent, registry age, internal opt-outs and local time, then test that every spoken stop request reaches the record before the next campaign runs.

Related Articles