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.
9-min read · Updated April 2026
Lumi · Wednesday
Good morning, Niki.
Two showings · three leads need a nudge.
Showing · Passeig de Gràcia 84
Every IG comment
is a lead. You're losing 90%.
Most agents post listings on Instagram and treat the comments as engagement metrics. But every “is the kitchen south-facing?” and every “how far to the train?” is a high-intent signal — usually higher than the cold leads agents pay for. The problem is reply speed: comment buyers go cold within an hour.
@isabella_lx (commented 47s ago): "Is the kitchen south-facing? And how far to the train?" draft (auto-sent): "South-facing — best light in winter. Train is 8 min walk, runs to Lisbon every 20. Saturday at 11 work for a viewing?"
Two sentences. Both her questions answered. One yes/no question. CRM lead created in parallel with full context.
The 90% you're losing.
Look at any agent's last 10 IG listing posts. Count the comments. Of those comments, how many got a DM reply within an hour? Across the agents we've audited, the answer is roughly 10-15%. The remaining 85-90% either got a reply hours later (effectively never) or got no reply at all.
The problem is not lack of will. The agent saw the comment, meant to reply, got pulled into a showing, came back, the comment was buried under three new posts. By the time they got around to it, the commenter had moved on, scrolled, forgotten. The comment-buyer window is roughly 60 minutes — measurable across thousands of cases — and almost no agent operates inside it.
The fix is not “reply faster”. The fix is removing the agent from the critical path on hot-tier comments entirely. The agent reviews and audits at the end of the day. The agent does not have to be in the loop for every “south-facing kitchen?” question — that's a question their classifier should answer in 90 seconds, in their voice, while they're showing a different property.
“The fix is not ‘reply faster’. The fix is removing the agent from the critical path on hot-tier comments entirely.”
What the classifier looks for.
Six patterns that separate a hot-tier buyer comment from a cold compliment from a spam bot. Each one gets weighted by the prompt; tier is decided on the strongest single signal.
Five steps. Ninety seconds.
The end-to-end flow: comment posted → CRM lead created with full brief → DM auto-sent in agent's voice. The agent never touches the critical path.
- 01
ManyChat catches the comment within 30 seconds.
ManyChat (or any IG comment-to-DM tool) fires when a comment hits the listing post. The webhook ships the comment text, commenter username, and post context to your stack within 30 seconds — well before the commenter has closed Instagram. Speed-of-reply is the single biggest factor in conversion at this stage; a reply within the same session feels like a person, a reply 2 hours later feels like an autoresponder.
- 02
Public profile enrichment runs synchronously.
Pull the commenter's public bio, follower count, recent post types, and (where allowed) public LinkedIn match. This adds 1-3 seconds to the latency budget but is what lets the classifier hit hot-tier confidence. Don't skip this step — without it, the classifier is reading a single comment in a vacuum and will misclassify ~30% of the time.
- 03
Claude classifies + drafts in one call.
Single LLM call: comment + profile + listing + agent voice samples in. JSON-shaped object with tier, signals, and draft reply out. Use Haiku for cost (~$0.0003/comment) and speed (~1.2s p50). The classifier and the drafter are the same prompt — splitting them adds latency without adding accuracy.
- 04
Hot replies go out automatically. Warm queue for review.
Hot-tier replies auto-send within the original session (target: <90s from comment to DM). Warm-tier drafts queue for the agent's review — these are the comments where the auto-reply could sound off, so the agent eyeballs and approves before sending. Cold and spam are silently logged and never replied to. The agent reviews the day's classifications in a 5-minute end-of-day pass.
- 05
CRM card created on every hot/warm — even before reply.
The moment the classifier returns hot or warm tier, a CRM lead is created with the commenter's profile, the listing context, the intent signals, and a 4-sentence brief (using the dossier protocol, see /prompt-dossier). By the time the agent sees the auto-reply went out, the lead is already in the pipeline with full context — no manual entry, ever.
Three replies that kill the conversion.
The classifier produces these without enough voice samples or without the rules above. Each one is a real reply we've seen agents auto-send before tightening the prompt.
“Hi! Thanks for your interest in this beautiful property. Please send me a DM and I'd love to chat about scheduling a viewing!”
Doesn't answer the question. Doesn't reference the south-facing or the train. Reads like every IG-marketing autoresponder. The commenter sees this and assumes it's a bot — accurately.
“Yes! €825,000, fully renovated, 168m². The kitchen has been redone last year. When can you visit?”
Leads with the price (the commenter didn't ask). Skips the question they did ask. Pushes a viewing before answering. Three failures in three sentences.
“Great question! Yes, the kitchen is south-facing — perfect for plant lovers and morning coffee ☀️ The train is just 8 minutes walking distance, super convenient! Would you like to schedule a viewing this weekend? Saturday or Sunday work for you? I can also send more photos! Just let me know! 😊”
Three exclamation marks and two emojis the agent doesn't use. Asks two questions in a row instead of one. Offers more photos before the commenter asks. Voice mismatch — the agent's actual replies are 1-2 sentences, no emoji.
The classifier input.
What the prompt receives on every comment. The voice samples are the single most important field — without them the reply will sound like a generic IG bot.
# ── ig comment intent classification input ──────
comment_text: "Is the kitchen south-facing?
And how far to the train?"
commenter:
username: "@isabella_lx"
bio: "Mum of two · Lisbon → Cascais soon"
recent_posts: ["beach photo", "kid's birthday",
"moving boxes"]
followers: 412
following: 387
listing_context:
price: "€825,000"
neighbourhood: "Cascais — Praia do Tamariz"
beds: 3
bath: 2
surface: "168 m²"
features: ["sea-glimpse", "south-facing
kitchen", "8 min walk to
Cascais train", "garden
90m²", "garage 2 cars"]
agent_voice_samples:
- "Yes, both bedrooms south-facing — best
light in winter. Want a Saturday slot?"
- "Garage fits two — one's a charging port.
11am Saturday work for you?"
- "Sea view from balcony, not from kitchen
— sending the photo set. Still want it?"
What to feed Claude.
One prompt does both jobs — tier classification and voice-matched reply drafting. Splitting them adds latency without accuracy gain.
You are a senior real-estate agent's
IG-comment intent classifier and auto-replier.
INPUT
You receive: the comment text, commenter
username, public profile snippet (bio,
location, recent posts), the listing the
comment is on (price, neighbourhood, beds),
and the agent's voice samples (3-5 prior
DM replies the agent has actually sent).
OUTPUT
A JSON object with three keys:
intent_tier: <one of:
hot — explicit interest in
seeing/buying the
property
warm — clarifying or info-
gathering question
cold — vague compliment, no
purchase signal
spam — bot, foreign-language
spam, irrelevant
>
intent_signals: <array of 1-3 specific
signals from the comment
or profile that drove the
tier classification>
draft_reply: <a 1-2 sentence DM reply,
in agent's voice, that
moves the conversation
forward IF tier is hot
or warm. Empty string for
cold/spam.>
RULES (non-negotiable)
1. Match the agent's voice samples — sentence
length, punctuation rhythm, emoji policy
(if the agent uses zero emoji, use zero).
2. NEVER mention the listing's price unless
the commenter asked. Listing prices in
first-touch DMs feel pushy.
3. Hot tier: end the reply with a 60-second
yes/no question (a date, a viewing slot,
"sending the floor plan?"). Never an
open-ended "let me know".
4. Warm tier: answer the question, then drop
ONE specific detail about the listing
that wasn't in the comment (a feature
the commenter would care about based on
what they asked).
5. Cold/spam: return empty draft. The agent
reviews and either ignores or sends a
brief like-acknowledgement themselves.
ANTI-PATTERNS (never produce these)
- "Thanks for your interest in this property!"
- "I'd love to chat — DM me?"
- "Yes, this property is still available"
- Any sentence longer than 18 words
- Any emoji unless the agent uses them
- Generic "feel free to" / "let me know"
The commenter should read the reply in 4
seconds and feel like they got a useful
answer from a person — not a CRM autoresponder.Use Haiku for the latency budget. Pipe ManyChat webhook into the classifier; auto-send hot tier, queue warm for review.
What Claude returns.
JSON for tooling, plain prose for the agent's review queue. Tier hot → auto-send. Tier warm → queue. Tier cold/spam → silent log.
{
"intent_tier": "hot",
"intent_signals": [
"explicit feature questions (south-facing, transit)",
"bio signals 'moving' — life-event match",
"recent posts include moving boxes"
],
"draft_reply":
"South-facing — best light in winter. Train
is 8 min walk, runs to Lisbon every 20.
Saturday at 11 work for a viewing?"
}Replying in 90 seconds is step one.
Trusting the classifier 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
Lumi · Wednesday
Good morning, Niki.
Two showings · three leads need a nudge.
Showing · Passeig de Gràcia 84
Pipeline
Active
8
Warm
4
Cold
2
Clara Ruiz
Active€1.8M · 3BR
Passeig de Gràcia showing · 11:30
Andreas Moreno
Active€2.4M · 4BR
Send comps by 18:00
Dimitri Schneider
Warm€900K · 2BR
Contract review today
Silent 3d · last 3 days ago
Sarah Mitchell
Cold€1.2M · 3BR
Draft re-engagement
Silent 9d · last 9 days ago
A real-estate adaptation of the keyword-DM funnel pattern from ManyChat power-users in e-commerce. Our slice: IG listing-comment intent and the sub-90-second reply window where the conversion lift compounds.
More guides like this on @lumi.estate. Follow if any of this was useful — it's how we know to keep writing.