Lumi.
Lumi · private beta · EU · LatAm · MENA

Your second brain
for closing deals.

Speak after a showing. Forward an email. Pull up a client. Lumi captures the soft signals, fills the brief, and feeds Claude — automatically.

  • Voice → CRM, auto. No forms.
  • Works offline. Syncs when you're back.
  • Free for agents in EU · LatAm · MENA.

10-min read · Updated April 2026

9:41

Lumi · Wednesday

Good morning, Niki.

Two showings · three leads need a nudge.

Clara Ruiz
Tomorrow 11am showing at Passeig de Gràcia 84 with Clara Ruiz. She wants to bring her partner.
Got it — creating the showing.
Suggested event · 92%

Showing · Passeig de Gràcia 84

Thu · 11:00–11:45Gràcia
What’s the HOA for Apt 4?
€210 per month, covers elevator, concierge, and rooftop.DOC 12
Ask Lumi or speak…
Calendar
Todos
Lumi
Clients
Settings
agent toolkit · field guide

1,000 cold WhatsApps.
22% reply rate.

Cold outreach has always been a numbers game for agents. What changed in 2026 is that the per-message personalisation cost dropped to near-zero — AI writes 3 specific lines per prospect from a public-record signal, and the reply rate jumps from the industry baseline of 4-6% to 22%. Same list. Same volume. Different content. Here's the ladder, the prompt, and the rules that keep your number from being banned.

10-min readUpdated April 2026Pack 10 of 30 · @lumi.estate
cold_message_v1.txt — example output
Saw your place on Rua das Janelas Verdes
came off the market in March.

Three buyers I'm working with asked about
Lapa ground-floor + balcony last week —
your specs.

Worth a 5-min call this week to see if
there's a fit?

— Andre

Three lines. One verifiable signal. One reason. One yes/no. No emoji, no link, no flattery.

Why cold works again.

Cold outreach got a bad reputation because the templates got worse. For a decade the dominant cold-message format was the “hope this finds you well” opener with a generic value-prop body and an open-ended call-to-action. That format converts at 4-6% on a good day and 1-2% on a bad one. It also trains the recipient's inbox filter to bury anything that looks similar.

What changed: per-message personalisation is now cheap. A model can read a prospect row, pull the relevant public-record signal, write three lines that fit their specific situation, and queue the message — for less than a fraction of a cent each. The agent reviews, approves, and sends. The whole protocol runs at a per-message marginal cost lower than it took to type “Hi” in the old world.

The 22% reply baseline isn't a hack. It's what happens when every cold message looks like a friendly local noticed something specific about the recipient. That recipient assumes — correctly — that the message wasn't blasted to a list. The fact that 1,000 others got equivalent specificity doesn't change their experience of receiving theirs.

“Cold isn't dead. The template is dead. Personalisation at scale is the difference between 4% and 22%.”

the math

From 1,000 messages to 5 transactions.

Each row is the funnel rate from the row above. The whole protocol runs on this ladder — every metric is observable, every conversion has a fix if it underperforms.

stage
count
rate
Sent
1,000
Delivered
950
95%
Read
620
65% of delivered
Replied
210
22% of sent
Booked call
45
21% of replies
Met in person
22
49% of booked
Active in pipeline
14
64% of met
Closed transaction (12 months)
5
36% of pipeline

The ladder is observable per-week — every number above can be tracked in a spreadsheet by Friday. When a number is off baseline, the upstream step is the one to fix. Read > baseline but Replied is low → line 3 isn't a clean yes/no. Replied baseline but Booked is low → reply handling is too slow.

the structure

Three lines. Each one earns its place.

Each line answers a specific question in the recipient's head. Every line that doesn't gets cut.

01

Line 1 · The signal

If the recipient sees their own street name or a verifiable fact about their property in the first 6 words, they assume the message is from a neighbour or a connection — not a mass-marketing blast. That assumption gets the second line read. Without the signal, the message gets thumb-swiped before line 2.

02

Line 2 · The reason

Tells the prospect why you're contacting them now (instead of any other time). The behavioural marker — '3 buyers asked about your specs last week' — converts the cold into a relevant. Most cold messages skip this and read as 'we cold every prospect every month' (true, but kills the trick).

03

Line 3 · The yes/no

The reply is a single tap. The cost of replying is functionally zero, the cost of ignoring is mild guilt. The 22% baseline reply rate exists because of this asymmetry. Open-ended questions drop reply rate to 6-9%.

anti-spam discipline

Five rules that keep your number alive.

Each rule exists because breaking it has killed somebody's deliverability score. The protocol works only inside these guardrails.

Max 30 sends per phone-number per hour.

Above that and WhatsApp's anti-spam ML flags the number. Once flagged, deliverability drops to ~40% and there's no easy recovery. The math: 30/hr × 4 hours per day = 120/day = ~600/week per phone — plenty for the protocol.

Two-burst rhythm — Tue/Thu mornings.

Mondays are inbox-clearing; Fridays everyone's mentally checked out. Tuesday and Thursday between 9-11 AM local hits the highest-attention window for cold messages. Two bursts of 60-80 messages each is the usable weekly cadence.

Pre-warm new numbers for 2 weeks.

If you're sending from a new WhatsApp business number, send under 10 messages/day for the first two weeks — to existing contacts, not cold. This is what builds the deliverability score. Skipping this kills the protocol on day one.

Stop after 3 unread per recipient.

If a prospect has received and not opened 3 messages, archive them for 90 days. Continuing to send to silent recipients hurts your sender reputation across the entire pipeline.

Reply within 90 minutes when one comes.

The 22% baseline reply rate collapses to ~7% conversion if you let replies sit. Calendar-block the 30 min after each burst — the replies arrive in waves of 15-25 within 90 minutes, then trickle.

the prompt that writes them

What to feed Claude.

The system prompt that turns one prospect row into one personalised 3-line message. Tested against Claude Haiku — generates a batch of 100 in under 60 seconds at $0.0003/message all-in.

cold_outreach_system_prompt.md
You are a real-estate agent's cold-outreach drafter.

INPUT
You will receive a row of structured data on
ONE prospect:
  - name (full)
  - phone (E.164, region-validated)
  - source: "deed_record" | "expiring_listing" |
            "fsbo" | "renter_lease_ending" |
            "absentee_owner" | "circle_prospect"
  - location: { neighbourhood, city }
  - signal: ONE specific public-record fact
            (last sale date, lease end date,
            permit pulled, prior listing
            withdrawn, etc.)
  - agent: { name, agency, language }

OUTPUT
A 3-line WhatsApp / SMS message in the agent's
voice and language. Total length: 35-55 words.
NO subject. NO sign-off block. Just the 3 lines
+ the agent's first name.

STRUCTURE — 3 lines, in this order:

  Line 1 · The signal (no flattery, no preamble)
    Reference the specific public-record fact.
    Names the neighbourhood if useful.
    Example: "Saw your place on Rua das
    Janelas Verdes came off the market in March."

  Line 2 · The reason (one sentence on why now)
    Connect the signal to a current local-market
    move or a buyer behaviour. Specific, not
    generic.
    Example: "Three buyers I'm working with
    asked about Lapa ground-floor with a balcony
    last week — your specs."

  Line 3 · The yes/no question (6 seconds to answer)
    A specific question the prospect can answer
    in one word. Not "let me know if you'd
    like to chat".
    Example: "Worth a 5-min call this week
    to see if there's a fit?"

  Sign with first name only.

RULES (non-negotiable)
1. The signal MUST be a verifiable public fact.
   Never claim to have data you can't prove if
   asked. If the source data is thin, name what
   you actually have ("noticed your place is
   listed for rent — your lease term wraps in
   3 months").
2. NO flattery. No "love your place", no "great
   neighbourhood". The whole point is signal-
   first.
3. NO emoji. Cold outreach with emoji reads as
   bot-driven and gets reported as spam.
4. NO link in the first message. Adding a URL
   triggers WhatsApp's automation filters and
   tanks deliverability.
5. NO mention of price unless the prospect's
   listing was the trigger and the price was
   public.
6. Match language to agent.language. Localise
   street names, building names, currency.

ANTI-PATTERNS (never produce these)
- "Hope this finds you well"
- "Just wanted to introduce myself"
- "I'm a top-producing agent in your area"
- "Please don't hesitate to reach out"
- Any agency-promotional language

Voice: a friendly local who happens to know
the market — not a sales script.
four ways the protocol breaks

The failure modes.

Each one is the result of treating cold as a volume play instead of a signal play. The fix is to remember why the 22% baseline exists.

failure mode

Sending the same template with name swapped.

AI personalisation is the entire moat. Without per-prospect signal-line, your 22% reply rate drops to 4-6% and your number gets flagged as spam within a week. The personalisation isn't optional polish — it's the deliverability strategy.

failure mode

Skipping the pre-warm on new numbers.

WhatsApp Business has a deliverability score that takes 14 days to establish. New number, day-1 burst of 100 messages = number flagged forever. Pre-warm for 2 weeks with under 10/day to existing contacts. Boring but load-bearing.

failure mode

Following up on silence with a second cold.

If they didn't reply to the first one, the second one is spam. Archive for 90 days, then re-send with a fresh signal (a new comp activity, a price move on their block). Sending two cold-version messages in the same month is the fastest way to ruin the protocol.

failure mode

Putting a calendar link in line 3.

Calendly URL in cold WhatsApp = bot signal. The yes/no question converts 4× better than the 'book a time' shortcut. Once they reply yes, then send the link in the second message.

built around the cold-outreach numbers ladder

Sending the message is step one.
Tracking the ladder is step two.

Lumi is the app that runs this workflow for you. You speak after a showing — Lumi captures the soft signals. You forward an email — Lumi updates the constraints. You open the app at 8am — the brief is already there, ready to feed Claude.

  • Voice → structured CRM, automatically
  • No forms. No data entry. No copy-paste.
  • Free for agents in EU · LatAm · MENA
9:41

Lumi · Wednesday

Good morning, Niki.

Two showings · three leads need a nudge.

Clara Ruiz
Tomorrow 11am showing at Passeig de Gràcia 84 with Clara Ruiz. She wants to bring her partner.
Got it — creating the showing.
Suggested event · 92%

Showing · Passeig de Gràcia 84

Thu · 11:00–11:45Gràcia
What’s the HOA for Apt 4?
€210 per month, covers elevator, concierge, and rooftop.DOC 12
Ask Lumi or speak…
Calendar
Todos
Lumi
Clients
Settings

A real-estate adaptation of the cold-outreach numbers thesis from agency-operator communities — AI personalisation collapses the cost-per-message to near-zero. Our slice: deed records, expiring listings, and absentee owners as the highest-yield public-record sources for residential cold lists.

More guides like this on @lumi.estate. Follow if any of this was useful — it's how we know to keep writing.