Back to blog
    Fine-Tune a Listing Description AI for Real Estate: Step-by-Step
    real-estatefine-tuninglisting-descriptionsautomationsegment:agency

    Fine-Tune a Listing Description AI for Real Estate: Step-by-Step

    Real estate agents spend 30-45 minutes writing each listing. A fine-tuned model trained on the brokerage's own listings generates on-brand descriptions in 2 minutes. Here's how to build it.

    EErtas Team·

    Real estate agents write the same types of sentences thousands of times. "Stunning open floor plan." "Chef's kitchen with quartz countertops." "Natural light floods every room." Generic AI tools produce these sentences too — so does every other brokerage using the same tool.

    A fine-tuned model trained on a brokerage's own listing archive writes descriptions that sound like this brokerage — their preferred language, their standard structure, their tone for different property types. Agents stop from scratch and start from a draft they recognize.

    Why This Is a Good First AI Agency Project

    The data is ready. Every brokerage has a years-deep archive of approved listing descriptions. These are already the right format: structured input (property facts) → quality output (accepted description). No labeling required.

    The ROI is immediate. A top-producing agent writing 30 listings/year saves 15-22 hours annually. For a team of 20 agents, that is 300-440 hours recaptured. The brokerage principal feels this.

    The retraining cycle is natural. Market language evolves. "Open concept" is everywhere; "intentional gathering spaces" is emerging. Quarterly retraining keeps descriptions feeling current. This justifies a retainer.

    Data Preparation

    Source: MLS data exports + brokerage listing archive. Most brokerage CRMs (Follow Up Boss, Chime, BoomTown) or MLS systems (Flexmls, Stellar MLS, CRMLS) allow CSV or API export.

    What you need per listing:

    • Property facts (beds, baths, square footage, year built, features list)
    • The approved description that ran on MLS/website
    • Property type (single family, condo, commercial, luxury, starter)

    Size target: 500-2,000 listings (enough to cover the property types in their market)

    Cleaning considerations:

    • Remove agent-specific phrases that reference the listing agent by name
    • Remove descriptions written during unusual market conditions (COVID language, 2021 bidding war language) unless the brokerage wants to retain those patterns
    • Filter out descriptions that were clearly auto-generated by a prior generic tool (these lower model quality)
    • Normalize property facts format so the model learns consistent input structure

    Constructing the JSONL:

    {"messages": [
      {"role": "system", "content": "You are the listing description writer for [Brokerage Name]. Write compelling, accurate property descriptions that match our brand voice: warm, professional, specific. Lead with the most distinctive feature. Use flowing paragraphs, not bullet points. 100-200 words."},
      {"role": "user", "content": "Write a listing description for this property:\nType: Single Family Home\nBeds: 4 | Baths: 3 | Sqft: 2,450\nYear Built: 2018\nFeatures: Open floor plan, chef's kitchen with quartz countertops and gas range, primary suite with walk-in closet and spa bath, covered patio, 3-car garage, corner lot\nNeighborhood: Lakewood Heights\nSchool District: Lakewood USD"},
      {"role": "assistant", "content": "Discover the perfect blend of modern elegance and everyday comfort in this beautifully maintained 2018 Lakewood Heights home. The chef's kitchen anchors an open floor plan designed for gathering — featuring quartz countertops, a professional gas range, and effortless flow to the covered patio and backyard beyond. Four generous bedrooms include a serene primary suite with a spa-inspired bath and custom walk-in closet. Three-car garage and a prized corner lot complete a home that checks every box, all within the highly regarded Lakewood USD school district. This is the one you have been waiting for."}
    ]}
    

    Include examples across all property types your brokerage typically lists — luxury, starter, condo, commercial if applicable. The model needs representative examples to calibrate tone for each type.

    Luxury vs Entry-Level: Tone Calibration

    One of the most valuable things a fine-tuned model learns is the tonal difference between property tiers. In your training data:

    • Luxury listings (top 20% of brokerage price range): more evocative language, slower pace, feature-first
    • Entry-level listings: practicality-forward, neighborhood emphasis, value signals
    • Investment/rental properties: yield and condition focus, square footage per dollar

    Include enough examples in each tier that the model calibrates appropriately. You can also add a tone hint to the prompt:

    Write a description for this property:
    Price tier: Luxury ($1.8M)
    [property facts]
    

    The model learns to adjust based on that hint.

    Training and Evaluation

    With 800-1,500 examples, training takes 30-60 minutes in Ertas. Use Llama 3 8B Instruct or Mistral 7B as the base model.

    Evaluation: Hold out 50-75 listings. After training, generate descriptions for each. Have the brokerage principal or senior agent rate them:

    • Would you publish this as-is? (3)
    • Would you publish with minor edits? (2)
    • Would you need to significantly rewrite? (1)

    Target: 60%+ at score 3, 30%+ at score 2. Less than 10% at score 1.

    The "publish with minor edits" category is still a significant win — agents edit for 5 minutes instead of writing for 40.

    Agent Workflow

    Before: Agent takes 30-45 minutes to write from scratch after a showing.

    After:

    1. Agent fills in property facts form (5 minutes)
    2. Model generates description (5 seconds)
    3. Agent reviews, edits if needed (5-10 minutes)
    4. Agent pastes to MLS

    Total time: 10-15 minutes. Time saved: 20-35 minutes per listing.

    For an agent listing 50 properties per year: 16-29 hours saved annually. For a team of 15 agents: 240-435 hours recaptured.


    Ship AI that runs on your users' devices.

    Ertas early bird pricing starts at $14.50/mo — locked in for life. Plans for builders and agencies.

    Further Reading

    Ship AI that runs on your users' devices.

    Early bird pricing starts at $14.50/mo — locked in for life. Plans for builders and agencies.

    Keep reading