Back to the build library
Real estate
Starter

Property Inquiry Speed-to-Lead

Answer every portal and website inquiry in seconds, qualify it in the same conversation, and book the showing before a competitor replies.

Industry
Real estate
Build effort
Starter
Typical time to launch
1–2 weeks
On this page
The problemWhat gets builtHow it runsAutomations in detailWhat changesBefore you start
Want this built for you?

Bring your stack to a call and we will scope it against how your business actually runs.

Book a call
01

The problem

A property inquiry has a shelf life measured in minutes. Someone browsing listings at 9pm sends the same message to four agents, and the one who replies first gets the conversation. The others get a polite non-reply the next afternoon, if that. Every agency knows this and almost none of them are set up for it, because the inquiries arrive out of hours, into an inbox, from a portal that strips the phone number into the body of an email, and nobody is on duty.

The practical failure is simple arithmetic. Inquiries arrive evenings and weekends, which is exactly when the office is closed. A lead that waits twelve hours for a reply is competing against three agents who replied in two. And when the reply does come it is usually a generic acknowledgement that restarts the conversation from zero: no reference to which property they asked about, no question about financing or timing, no booking link. So the agent spends three more exchanges establishing facts that could have been captured in the first sixty seconds.

Then there is the volume problem underneath. A busy office might take sixty portal inquiries a week, of which perhaps a dozen are serious, properly financed buyers ready to view in the next two weeks. Nobody has time to sort them by hand, so either everyone gets the same treatment and the good ones are under-served, or the agent picks by instinct and the quiet serious buyer is ignored in favor of the loud time-waster. The build below answers in seconds, qualifies in the same thread, books the showing without human involvement where it can, and puts a human on the leads that deserve one.

02

What gets built

Pipeline and stages

One pipeline, Buyer Inquiries, with eight stages:

  • New Inquiry - captured, not yet responded to. Nothing should sit here longer than five minutes.
  • Auto-Responded - first reply sent, awaiting a response.
  • In Qualification - BO is working through the qualifying questions.
  • Qualified - Hot - financed, timeline inside 90 days, specific about the property.
  • Qualified - Warm - genuine but longer timeline or finance not yet arranged.
  • Showing Booked - an appointment exists on an agent's calendar.
  • Showing Attended - confirmed by the agent.
  • Unqualified or No Response - closed with a reason recorded.

A lead moves to Qualified - Hot only when finance status, timeline and property interest are all populated. Do not let the stage become an opinion.

Calendars

  • Property Showing - per-agent calendars with travel buffer built in: 15 minutes before and 20 minutes after each slot, so back-to-back showings across town are impossible to book.
  • Buyer Discovery Call - 15-minute phone slot for leads who are not ready to view but are worth a conversation.
  • Open House Slots - capacity-limited time blocks for a scheduled open house, used when individual showings are not practical.

Custom fields

  • inquiry_source - which portal or website form the inquiry arrived from.
  • property_ref and property_address - the listing they asked about. This is the single most important field in the build; a reply that names the property outperforms a generic one every time.
  • inquiry_received_at and first_response_at - the pair that lets you measure response time honestly rather than guessing.
  • finance_status - cash / mortgage approved in principle / applying / not started / unknown.
  • buying_timeline - this month / 1–3 months / 3–6 months / 6 months plus / just looking.
  • has_property_to_sell - yes / no / under offer. Drives the valuation cross-referral.
  • budget_range - a band, captured as a range rather than a figure.
  • areas_of_interest and bedrooms_min - used downstream by listing alerts.
  • lead_score - computed from finance, timeline and engagement.
  • assigned_agent and assignment_reason - round robin, property owner, or area specialist.
  • unqualified_reason - out of area / budget mismatch / not a buyer / already purchased / no contact detail.

Tags

  • source-portal, source-website, source-phone, source-walk-in.
  • sla-breached - applied automatically if first_response_at is more than 5 minutes after inquiry_received_at. This tag is a management report, not a punishment.
  • finance-approved, finance-needed - the second drives a mortgage adviser referral where the client has one.
  • has-property-to-sell - the highest-value tag in the build, because it is a listing instruction hiding inside a buyer inquiry.
  • hot-buyer, warm-buyer, investor, first-time-buyer, cash-buyer.
  • out-of-area, no-contact-detail, duplicate-inquiry.
  • needs-human - BO has handed off and a human has not yet picked it up.

Forms and pages

  • Property Inquiry form on each listing page - name, mobile, email, the property reference pre-filled from the page, and one optional question on timeline. Keep it to five fields; every extra field costs you leads at exactly the stage you are trying to protect.
  • Buyer Qualification form - the longer version, sent as a link when a lead prefers typing to a conversation. Writes directly to finance_status, buying_timeline, has_property_to_sell, budget_range and areas_of_interest.
  • Showing Confirmation page - address, what three bedrooms actually means at this property, parking, access notes, and the agent's name and photo.
  • Out of Area page - a short page for inquiries outside the patch, with a referral path where the agency has one. A courteous no protects the brand.

BO's role and guardrails

BO is the first responder on every channel, every hour of the day. This is the core of the build.

  • BO acknowledges within seconds, by name and by property, and asks at most two questions per message.
  • BO may answer factual questions already published on the listing: asking price, bedrooms, tenure, council tax band, floor area, year built, parking, and what is included. Everything factual comes from the listing record - BO never improvises a property detail.
  • BO captures and writes finance_status, buying_timeline, has_property_to_sell, budget_range and areas_of_interest.
  • BO books, reschedules and cancels showings on the assigned agent's calendar, respecting travel buffers.
  • BO must not negotiate on price, speculate on whether an offer would be accepted, comment on other offers received, give mortgage or legal advice, discuss survey or structural matters, make any statement about an area's schools, crime or demographics, or comment on who the neighbors are. Each of those routes to the assigned agent with needs-human.
  • Any message mentioning an offer, a attorney, a survey, a chain, discrimination, or anything a reasonable person would call a complaint exits BO immediately and notifies the assigned agent and the office manager.
  • BO always identifies itself as an assistant on first contact and offers to put the inquirer through to a person. Never let an automated responder pretend to be a named agent.

Numbers and channels

  • One dedicated local number per office for SMS and voice, so every inquiry threads to one place and the office's own number stays free.
  • Inbound voice routing: during office hours calls ring the duty agent then the office; out of hours they go to a voice assistant that takes the name, number and property reference, creates the contact, and triggers the same speed-to-lead workflow a portal inquiry would.
  • SMS as the primary qualifying channel - portal inquirers answer texts far more readily than they answer calls from unknown numbers.
  • Email as the secondary channel, from an authenticated domain, carrying the listing details and the booking link.
  • Portal inquiries captured by direct integration where the portal offers one, and by inbound email parsing where it does not. Parse the property reference, name, phone and email out of the notification body into the matching fields.
  • A shared inbox with a New Inquiry view sorted oldest first and a visible five-minute clock.
03

How it runs, step by step

  1. At 21:40 on a Tuesday a buyer sends an inquiry about a three-bedroom semi through a listing portal. The portal notification arrives and is parsed: name, mobile, email and property_ref are extracted, inquiry_source is set, and inquiry_received_at is stamped.
  2. A contact is created, deduplicated against existing records by mobile and email. An opportunity opens in Buyer Inquiries at New Inquiry, assigned by round robin to the on-duty agent, with assignment_reason recorded.
  3. Within 40 seconds BO sends an SMS naming the buyer and the property: a short acknowledgement, confirmation that the property is still available, and one question about when they would like to see it. first_response_at is stamped and the opportunity moves to Auto-Responded.
  4. The buyer replies two minutes later asking whether the garden is south-facing. BO answers from the listing record, then asks whether they have a mortgage arranged. The opportunity moves to In Qualification.
  5. The buyer says they have an approval in principle and need to move within two months. BO writes finance_status = mortgage approved in principle and buying_timeline = 1–3 months, and applies finance-approved.
  6. BO asks the question most agents forget: whether they have a property to sell. They do, and it is not yet on the market. has_property_to_sell = yes and tag has-property-to-sell are applied, which silently opens a valuation opportunity on a separate pipeline.
  7. lead_score is recalculated and crosses the hot threshold. The opportunity moves to Qualified - Hot and the assigned agent gets a push notification with the full qualification summary - at 21:48, while the buyer is still on their phone.
  8. BO offers the two nearest showing slots on the agent's calendar that respect travel buffers. The buyer takes Thursday at 5:30pm. The opportunity moves to Showing Booked and all nudge sequences stop.
  9. A confirmation SMS and email go out immediately with the address, access notes, the agent's name and the Showing Confirmation page link. The showing is written to the agent's calendar with the buyer's qualification summary in the appointment notes.
  10. Because has_property_to_sell is yes, a separate, deliberately low-key message is scheduled for after the showing rather than before it. Never cross-sell a valuation before you have earned the showing.
  11. Thursday morning: reminder SMS with a reschedule link. Two hours before: a short confirmation naming the agent who will meet them.
  12. The agent marks the showing attended. The opportunity moves to Showing Attended and a feedback request goes to the buyer that evening - a genuine question about the property, not a satisfaction survey.
  13. The valuation message now sends: one line offering a no-obligation market appraisal of their own place, with a booking link. The second opportunity moves to its first active stage.
  14. The buyer's areas_of_interest and bedrooms_min feed the listing alert build, so even if this property is not the one, they stay matched against new instructions instead of going cold in a spreadsheet.
04

Automations in detail

1. Inquiry Capture, Dedupe and Routing

Trigger: any of - portal integration webhook; parsed portal notification email; website Property Inquiry form submission; inbound call captured by the voice assistant; inbound SMS to the office number.

Conditions and branches:

  • Stamp inquiry_received_at, set inquiry_source, apply the matching source tag.
  • Parse and write property_ref and property_address. If the reference cannot be parsed, flag the inquiry for a human within 2 minutes rather than sending a generic reply - a reply that gets the property wrong is worse than a slow one.
  • Dedupe branch: match on mobile first, then email. If an open opportunity already exists for this contact, apply duplicate-inquiry, append the new property_ref to the existing opportunity, and notify the already-assigned agent. Do not create a second thread or send a second first-response.
  • No contact detail branch: if neither mobile nor email is present, apply no-contact-detail, create a task on the office queue, and exit.
  • Assignment branch: if the property has a named listing agent, assign to them. Otherwise round robin across agents on duty, skipping anyone outside working hours. Write assignment_reason.
  • Create the opportunity at New Inquiry and hand to workflow 2 immediately. No wait step of any kind.

Exit: handed to workflow 2, or closed as a duplicate or contactless inquiry.

2. Instant First Response

Trigger: opportunity created at New Inquiry.

Conditions: branch on time of day and whether a cell number is present.

  • Mobile present, any hour: send within 60 seconds. SMS: "Hi {{first_name}}, thanks for your inquiry about {{property_address}} - it's still available. I'm {{assistant_name}}, the assistant at {{office_name}}. When were you hoping to see it? I can get you booked in now."
  • Stamp first_response_at, move to Auto-Responded, and start workflow 3.
  • Out of hours (after 21:00 or before 08:00 local): still send immediately but adjust the opener: "...I know it's late - happy to sort this now by text, or someone will call you in the morning, whichever you prefer." Speed matters more than politeness about the hour, but acknowledging it costs nothing.
  • Send the email version in parallel: listing summary, three photographs, the showing booking link and the agent's name.
  • Email only, no mobile: send the email version and ask for a cell number in the first line, so the conversation can move to the channel that actually converts.
  • Working hours and lead_score already above the hot threshold from a prior record: ring the assigned agent's mobile at the same time as the SMS sends. Do not make a known hot buyer wait for a text exchange.

Exit: first response sent and logged.

3. Conversational Qualification and Scoring

Trigger: inbound reply on an inquiry thread.

Conditions: BO handles the thread unless a guardrail keyword is present.

  • Move to In Qualification. BO asks at most two questions per message, in this order: timeline, then finance, then property to sell, then areas and minimum bedrooms. Never ask budget before finance - it reads as a credit check.
  • Write each answer to its field as it arrives: buying_timeline, finance_status, has_property_to_sell, budget_range, areas_of_interest, bedrooms_min.
  • Recalculate lead_score on every field write. Suggested weighting: finance approved or cash +30; timeline this month +25, 1–3 months +20, 3–6 months +10; property to sell not yet listed +15; replied within 10 minutes +10; asked a specific question about the property +10; budget consistent with the asking price +10. Just looking, or timeline beyond 6 months, -20.
  • Score at or above 55: move to Qualified - Hot, apply hot-buyer, notify the assigned agent by push and SMS with the full summary, and offer showing slots in the same message.
  • Score 25 to 54: move to Qualified - Warm, apply warm-buyer, offer a showing and, if declined, a Buyer Discovery Call.
  • Score below 25, or buying_timeline = just looking: move to Unqualified, set unqualified_reason, and enroll in the listing alert nurture rather than closing. A browser today is a buyer in nine months.
  • Guardrail branch: any mention of making an offer, a attorney, a survey, a chain, or a complaint - exit BO, apply needs-human, notify the assigned agent and the office manager, and create a task due within 30 minutes.
  • Finance not started: apply finance-needed and, where the agency has a mortgage adviser relationship, offer an introduction. BO states plainly that it cannot give mortgage advice.

Exit: showing booked, discovery call booked, handed to a human, or moved to Unqualified.

4. No-Response Nudge Ladder

Trigger: opportunity has been at Auto-Responded with no inbound reply.

Conditions: no reply received, no STOP, not a duplicate.

  • Wait 20 minutes. SMS: "{{first_name}}, I can hold a showing slot at {{property_address}} - {{slot_one}} or {{slot_two}}? Either works." Two concrete options beat an open question.
  • Wait 3 hours, or until 09:00 if that falls inside quiet hours. Place an outbound call attempt from the assigned agent, or the voice assistant out of hours.
  • Wait until the next working morning. Email with three comparable listings from the same area and price band, plus the original property. The alternatives are what rescue this lead.
  • Wait 2 days. Final SMS: "Last one from me, {{first_name}} - still interested in {{property_address}}, or shall I send you new listings as they come up instead? Reply NEW for alerts."
  • Wait 3 days. Move to No Response, enroll in the listing alert build using whatever preferences were captured, and exit.

Exit: any inbound reply - hand to workflow 3 - or the ladder completes. Maximum four outbound touches.

5. Showing Booking, Reminders and No-Show Recovery

Trigger: appointment booked on Property Showing, Buyer Discovery Call or Open House Slots.

  • Immediately: confirmation SMS and email with address, access notes, parking, the agent's name and the Showing Confirmation page. Move to Showing Booked and stop workflow 4.
  • Write the appointment to the agent's calendar with lead_score, finance_status, buying_timeline and has_property_to_sell in the notes, so the agent arrives informed.
  • If the property is tenanted or owner-occupied, notify the vendor or tenant with the required notice period and hold the confirmation until access is agreed. Never confirm a showing the vendor has not accepted.
  • 24 hours before: reminder SMS with a one-tap reschedule link.
  • 2 hours before: "See you at {{appointment_time}} outside {{property_address}}. {{agent_first_name}} will meet you there - {{agent_mobile}} if you're running late."
  • Attended: move to Showing Attended, start workflow 6.
  • No-show: wait 15 minutes past the slot, then SMS: "Missed you at {{property_address}} - everything alright? Happy to rearrange: {{booking_link}}". Wait 1 day, one more rebook offer. If neither lands, move to No Response and enroll in listing alerts.
  • Canceled by the buyer: ask one question about why, write it to the opportunity notes, and offer two alternatives before closing anything.

Exit: attended, or two rebook attempts exhausted.

6. Post-Showing Feedback and Next Step

Trigger: opportunity moves to Showing Attended.

  • Wait 3 hours. SMS: "{{first_name}}, what did you think of {{property_address}}? Honest answer is genuinely useful - the vendor will want to know either way."
  • Branch on the reply. Positive and asking about next steps: notify the assigned agent immediately with needs-human; BO does not discuss offers. Positive with reservations: BO asks what would need to be different and writes it to the opportunity. Negative: BO thanks them and asks what to change in the search criteria.
  • Wait 1 day. Email three alternative listings matched on areas_of_interest, bedrooms_min and budget_range, whatever the feedback was.
  • Relay the buyer's feedback to the vendor on the listing - an automated, honest showing feedback note is one of the highest-value things an agency can send a vendor, and almost nobody does it consistently.
  • Wait 3 days with no offer and no further contact: enroll in listing alerts, keep the opportunity open at Showing Attended for 14 days, then close it with a reason.
  • If has_property_to_sell = yes: wait 2 days after the showing, then send one low-key valuation offer. One attempt, then hand the valuation opportunity to its own pipeline.

Exit: offer made and handed to a human, or 14 days with no movement.

7. Out of Area and Unqualified Handling

Trigger: unqualified_reason is set, or the inquiry address falls outside the agency's patch.

  • Out of area: apply out-of-area, send the Out of Area page with a referral path where one exists, and close the opportunity. One message, no sequence.
  • Budget mismatch: do not close. Send the three nearest listings inside their actual band and enroll in listing alerts at that band.
  • Not a buyer - a tenant, a nosy neighbor, a canvassing competitor: close silently, tag appropriately, suppress from marketing.
  • Already purchased elsewhere: close, and schedule a single message 18 months out. Buyers move again, and nobody else will remember.
  • Every unqualified close writes a reason. An unqualified pile with no reasons is the same problem this build exists to fix.

Exit: closed with a reason, or redirected into listing alerts.

8. Response-Time SLA Monitor

Trigger: scheduled check every 5 minutes against all opportunities at New Inquiry, plus a daily roll-up.

  • If an opportunity has been at New Inquiry for more than 5 minutes with no first_response_at, apply sla-breached and notify the office manager with the inquiry details. Something in the capture chain is broken and it needs finding today.
  • If a needs-human tag has been unclaimed for 30 minutes during working hours, escalate to the office manager. At 2 hours, escalate to the owner.
  • Daily at 08:00: internal digest to the manager - inquiries received, median seconds to first response, slowest five, SLA breaches, needs-human items still open, and showings booked.
  • Weekly: the same cut split by inquiry_source and by assigned_agent, so you can see which portal produces leads worth paying for and which agent lets threads go cold.
  • Monthly: inquiry-to-showing and showing-to-offer rates by source, which is the number that should decide next year's portal spend.

Exit: none - this workflow runs permanently. It is the one that keeps the rest honest.

05

What changes

Every inquiry gets a named, property-specific reply within a minute, at any hour, on the channel the inquirer actually uses. The agency stops competing on luck - who happened to be at a desk - and starts competing on a system. The 9pm portal inquiry that used to be answered at 2pm the next day is now a booked showing before the buyer has closed their laptop.

Qualification stops being three days of phone tag. Finance status, timeline, budget band and whether they have a property to sell are all in structured fields before an agent spends a minute on the lead, so agents work the leads worth working and the browsers get nurtured instead of ignored. The has-property-to-sell tag alone changes the economics of the channel: a proportion of every agency's buyer inquiries are undiscovered listing instructions, and almost nobody asks.

Management gets something it has probably never had: an honest response-time number. Not an impression, a median, measured from the timestamp the inquiry arrived to the timestamp the first reply went out, split by source and by agent. That one number makes portal spend arguable with evidence instead of anecdote.

Metrics to watch

  • Median seconds to first response, and the 90th percentile. The average will flatter you; the long tail is where leads die.
  • SLA breach count - opportunities sitting at New Inquiry past five minutes. Should be near zero; anything else means a capture integration is failing.
  • Inquiry-to-conversation rate - inquiries that produce at least one inbound reply. The first message's quality moves this.
  • Inquiry-to-showing-booked rate, split by inquiry_source. This is the number that should drive portal spend decisions.
  • Showing attendance rate - the reminder sequence moves this, and it is usually the cheapest improvement available.
  • Qualification completeness - the share of opportunities with finance, timeline and property-to-sell all populated. Below 60 percent and the scoring is not trustworthy.
  • Vendor leads discovered per 100 buyer inquiries - the hidden return on the build.
  • Showing-to-offer rate by agent and by property, which separates a lead problem from a pricing problem.
  • BO handoff rate and median time to claim a needs-human item.
06

Before you start

Prerequisites

  • A listing data source BO can read from - a feed, an export, or a synced collection carrying reference, address, asking price, bedrooms, tenure, key features and availability status. BO answering factual questions depends entirely on this, and a stale feed means BO will confidently offer a property that sold last week.
  • A written list of exactly which questions BO may answer and which it must not. Draft it with the office manager and the compliance person, not from a template.
  • Agreed working hours, duty rota and an out-of-hours policy. Decide deliberately whether BO books showings out of hours or only captures and qualifies.
  • Agent calendars with real availability, including travel time. A booking engine pointed at a fictional calendar produces double-booked agents and canceled showings.
  • A vendor access policy per property: which can be viewed on short notice, which are tenanted, and what notice the tenant requires.
  • An escalation owner for needs-human during and outside office hours.

Integrations

  • Portal lead delivery: direct integration where the portal provides one, otherwise inbound email parsing of the notification. Test the parser against real notification emails from every portal before launch - formats differ and change without notice.
  • Website listing pages, with the property reference passed into the inquiry form as a hidden field.
  • Google Calendar or Outlook for agent availability, two-way so a personal appointment blocks a showing slot.
  • Your property management or agency software, if it holds the listing record, ideally via an available API or a middleware connector such as Zapier or Make.
  • A voice provider for the dedicated number, inbound routing and out-of-hours voice capture.

Numbers and messaging setup

  • Provision one dedicated local number per office, with an area code matching the patch. An out-of-area number noticeably reduces answer rates on property inquiries.
  • Complete A2P 10DLC brand and campaign registration before launch in the United States, under the correct use case for conversational lead response. Carrier approval takes days to weeks and unregistered traffic is filtered - which in a speed-to-lead build means the whole value proposition silently fails.
  • Outside the US, confirm the destination country's sender registration and consent rules. Some markets restrict automated commercial SMS more tightly than others.
  • Authenticate the email domain with SPF, DKIM and DMARC before the first send.
  • Test the whole chain end to end with real inquiries from each portal before going live, and re-test monthly. A broken parser is invisible until someone notices the inquiry volume dropped.

Consent, opt-out and quiet hours

  • A portal or website inquiry is an inbound request about a specific property, which is normally a sound basis for replying about that property. It is not consent for ongoing marketing, listing alerts or newsletters - capture that separately and explicitly, and record the source and date.
  • Honor STOP, UNSUBSCRIBE, QUIT, END and CANCEL globally. Include opt-out language in the first message of each sequence and in every marketing send.
  • This build deliberately replies outside normal quiet hours, because a property inquiry is a direct request for a reply and speed is the entire point. Keep the window to 08:00-21:30 local for automated first responses, apply standard 09:00-20:00 quiet hours to every non-triggered nudge and marketing message, and keep the out-of-hours opener acknowledging the time.
  • Cap outbound touches at four per inquiry in the nudge ladder, enforced centrally.
  • BO must identify itself as an automated assistant on first contact in every jurisdiction, and some require it explicitly. Never imply a named human sent the message.

Compliance and legal

  • Fair housing and anti-discrimination rules apply to automated messages exactly as they do to an agent's words. BO must never answer questions about the demographics, religion, ethnicity or family makeup of an area or its residents, never steer buyers toward or away from areas on those grounds, and never comment on schools or crime as a proxy. Build these as hard refusals with a human handoff, and review BO's transcripts regularly - this is the single largest compliance exposure in the build.
  • Property descriptions and availability statements can engage consumer protection and misdescription rules. BO should only ever repeat what the listing record says, never summarize or embellish it.
  • Lead data handling engages GDPR and UK GDPR, the TCPA, CAN-SPAM, PIPEDA and various state privacy laws, with different rules on consent for ongoing marketing and on retention.
  • Agency-specific regulation - estate agency licensing, mandatory disclosures, client money rules, anti-money-laundering identity checks - varies by jurisdiction and governs what may be said and when.
  • This guide describes a mechanism, not legal advice. Have the client confirm BO's permitted-answer list, disclosure wording, fair housing guardrails and retention policy with their own counsel and compliance adviser before launch.

For scoping, portal integration testing and a build plan for your office, book a call at bookings.appbo.io.

Build it with us.

Every build on this page is something we configure, test and hand over with the SOPs your team needs to run it.

Book a call