Custom CRM · Real estate

Real estate CRM software development for brokerages and property teams

A CRM where a listing, a showing, an offer and a commission split are records with their own rules, not lines in a notes field. We design and build it around how your agents and offices work, and connect it to the portals, calendars and messaging they already use.

  • Intake Leadsource · budget · area · status converts to Contact (1–1)
  • Person Contactphone · email · role · consent attends Showing (1–n)
  • User Agentoffice · areas · license_no hosts Showing (1–n)
  • Property Listingaddress · price · status · mls_id is shown in Showing (1–n) receives Offer (1–n)
  • Event Showingstarts_at · feedback · agent_id
  • Deal Offeramount · contingencies · expires_at becomes when accepted Transaction (1–1)
  • Deal Transactionstage · closing_date · checklist pays out through Commission split (1–n)
  • Finance Commission splitparty · share · paid_at
Fig. 01A real estate CRM object model. A showing links a contact, a listing and an agent; an accepted offer becomes a transaction with commission splits.

What a real estate CRM is

A real estate CRM manages the people and the properties in a sale or rental together: leads arriving from portals and ads, contacts who may be buyers, sellers, landlords or tenants, listings, showings, offers, transactions and the commission splits at the end. A custom one models these as related records with their own workflows, so an agent sees the full picture of a client and a listing in one place.

Why generic CRMs strain in real estate

Packaged CRMs assume one customer moves through one pipeline. Real estate doesn’t work that way.

  • One deal, many properties

    A buyer views eight homes before making an offer on one. In a deal-per-customer pipeline, the seven others disappear into notes.

    MechanismShowings as their own records, linking contact, listing and agent.

  • Two sides of every transaction

    The same office may represent buyer and seller, or only one side, with different agents, documents and commissions.

    MechanismTransaction records with explicit sides and parties.

  • Commission splits

    Agent, team lead, office and referral partners each take a share, often with caps and different rules per agent.

    MechanismSplit records calculated from agreed rules and approved before payout.

  • Portal leads in many formats

    Each listing portal, ad platform and website form sends leads differently, some only by email.

    MechanismOne intake service that parses, normalizes and deduplicates before a lead reaches an agent.

  • Listings change outside the CRM

    Price, status and photos are updated in the MLS or your listing system, and the CRM must follow.

    MechanismScheduled sync from the licensed feed with the listing ID as the matching key.

The data model

The object model in the figure above, explained as the rules it enforces.

Real estate CRM objects and the rules they carry
ObjectHoldsRule it enforces
LeadSource, search criteria (area, budget, property type), first response time.Must be assigned within the agreed response window or escalate.
ContactPerson details, roles (buyer, seller, landlord, tenant), communication consent.One contact per person, matched by phone and email; roles can change over time.
ListingAddress, price, status, features, listing agent, external listing ID.Fields owned by the listing feed are read-only in the CRM.
ShowingTime, contact, listing, agent, feedback.Feedback required before the next showing for the same contact is booked.
OfferAmount, contingencies, expiry, documents.Expired offers close automatically; counter-offers are linked versions.
TransactionSides, parties, stage, closing date, checklist items.Cannot close until all checklist items are complete.
Commission splitParty, share, cap rules, approval, paid date.Shares must add up to the commission; approval before export to accounting.

Lead intake from portals and ads

Every source ends in the same place: one clean lead, with an owner, within minutes.

  1. EventNew enquiryPortal email, lead feed, website form or ad form
  2. Parse and normalizeExtract name, phone, listing IDPhone to international format, listing ID matched
    • parse failed
      Review queueUnreadable enquiryShown to an admin with the original message
  3. DeduplicateMatch existing contactBy phone and email; link to the existing owner if found
  4. CRMAssign and create taskBy area and price band; first-response task with a timer
  5. MessagingIntro by WhatsApp, SMS or emailLogged on the contact’s timeline
Fig. 02Lead intake flow. Unparseable messages go to a review queue instead of being lost.
  • Event-driven
  • Failure path

From listing to commission

The core workflow, with what the CRM does at each step.

  1. Listing intake

    A new listing is created from the seller appointment or imported from the licensed feed, with the listing agent set.

    CRM doesChecklist for photos, documents and disclosures; status sync with the feed

  2. Marketing

    The listing goes live on your website and portals; matching buyers are identified from saved search criteria.

    CRM doesMatched-buyer list and outreach tasks for agents

  3. Showings

    Showings are booked against agent and seller calendars; feedback is collected after each one.

    CRM doesCalendar invites, reminders, feedback request to the agent

  4. Offer

    Offers and counter-offers are recorded with amount, contingencies and expiry.

    CRM doesExpiry alerts; seller summary of all open offers

  5. Under contract

    The accepted offer becomes a transaction with a closing checklist: inspections, financing, appraisal, documents.

    CRM doesDue dates per checklist item, escalation when one slips

  6. Closing and commission

    At closing, splits are calculated from the agreed rules, approved, and exported to accounting.

    CRM doesCommission statement per party; export to accounting

Assignment rules, written down

How a new buyer lead finds the right agent. Every rule is specified like this before it is built.

Automation rule

Assign a new buyer lead

WHEN
Lead.created AND Lead.type = "buyer"
IF
Contact matched AND Contact.owner is active -> keep existing owner
AND
otherwise candidates = agents covering Lead.area with Lead.budget inside their price band
THEN
assign by round-robin within office; create Task "first response" due in 15 min; send intro message (template by language)
ELSE
no matching agent -> assign to office lead queue; notify office manager
OUTCOME
Task overdue -> reassign to next agent and log Lead.response_time
Example values (15 minutes, round-robin) are set with you during discovery.

Integrations

What a real estate CRM typically connects to, and how.

Typical real estate CRM integrations
SystemWhat movesHow
MLS / listing feedListings, status, price, photos (where licensed).Scheduled import through the RESO Web API or the feed your MLS provides, under its licensing and display rules.
Website and IDXListing display, saved searches, enquiry forms.Forms post to the intake service; saved searches feed buyer matching.
Listing portals and adsInbound leads.Lead feeds or webhooks where offered; parsed email where not.
WhatsApp and SMSConversations with buyers, sellers and tenants.Messages logged on the contact; see WhatsApp CRM integration.
CalendarsShowings and appointments.Two-way sync with agent calendars; the CRM owns showing details.
E-signatureOffers, agreements, disclosures.Envelope status written back to the offer or transaction.
AccountingCommission statements, payouts.Approved splits exported; payment status read back.
TelephonyCalls and recordings.Call events matched to contacts by phone number.

Each connection follows the same principles as our wider CRM integration services: one source of truth per field, retries, and a review queue for failures.

Roles and permissions

Who sees what is a business decision in real estate. The CRM enforces it.

  • Agent

    Own leads, contacts and listings

    Agents see their own records and shared office listings. Contacts owned by another agent show as taken, without details.

  • Team lead

    Team pipeline and reassignment

    Sees the team’s leads and transactions, reassigns overdue leads, approves splits within the team.

  • Office admin

    Listings, documents and checklists

    Manages listing data, transaction checklists and documents, without access to private client notes where policy says so.

  • Management

    Reports and commission approval

    Pipeline, response times and commission reports across offices; final approval of payouts.

  • Policy

    Confidential listings and consent

    Off-market listings visible only to named agents; communication consent stored per contact and respected by every outbound message.

Delivery, ownership and cost

A real estate CRM is a custom CRM. The same method applies.

We deliver it the way we deliver any custom CRM: discovery with agents and office staff, the data model and a prototype, a first usable release (leads, listings, showings and portal intake), then offers, transactions, commissions and integrations in increments. You own the code, the data and the hosting.

The full approach is on our custom CRM development page. For budgeting, the custom CRM cost guide explains which drivers matter most: in real estate, usually the number of lead sources, the listing feed, and commission rules. Other CRM work is covered under our CRM and integration services.

Questions about real estate CRM development

What should a real estate CRM include?

At minimum: leads and contacts with their search criteria, listings as records, showings that link a contact, a listing and an agent, offers and transactions with a closing checklist, and commission splits. Around that: lead intake from portals and your website, assignment rules, messaging and calendar integration, and reports on response time and pipeline by agent and office.

Can it import listings from our MLS?

Where your MLS and your licence allow it. MLS data access is governed by each MLS and its data licensing rules; many MLSs provide access through the RESO Web API, the industry standard interface. We build the import against the feed you are licensed to use and respect its display and refresh rules. Your own listings can always be managed directly in the CRM.

Can agents use it on their phones?

Yes. The CRM is built as a responsive web application, so agents can log a showing, update an offer or call a lead from a phone. If agents need offline access in areas with poor coverage, that is scoped as a separate mobile capability.

Can it handle rentals and property management too?

Yes, if the data model includes them from the start. Leases, tenants, maintenance requests and owner statements are separate objects with their own workflows. We decide in discovery whether they belong in the same CRM or in a connected property management system.

Can we migrate from our current CRM?

Yes. Contacts, leads, listings, notes and activity history are mapped to the new model, cleaned and deduplicated, loaded in trial runs and reconciled before cutover. The method is described on our CRM migration services page.

How long does it take to build a real estate CRM?

It depends on the number of workflows and integrations. A first release with leads, listings, showings and portal intake is planned in weeks; offers, transactions, commissions and a client portal follow in increments. The general approach and timing factors are on our custom CRM development page.

Next step

Show us how a lead becomes a commission

Describe your lead sources, how agents work, and where deals get lost today. We’ll come back with questions and a proposal for scoping.

Discuss a real estate CRM

Useful to have ready

  1. Lead sources: portals, ads, website, referrals
  2. How leads are assigned today, and expected response times
  3. Your MLS or listing system and the access you are licensed for
  4. How commissions are split, and which accounting tool pays them

Not everything is needed. A rough answer is enough to start.