My wife's best friend is a real estate agent in King County. Solo, 8 years in the business, 14-18 closings a year. For most of that time she paid $89/month for Top Producer. At some point she downgraded to Wise Agent at $32/month because she was only using 15% of TP's features. Six months ago she asked me to look at her workflow and tell her what CRM she should actually use.
Answer: she didn't need another commercial CRM. She needed a CRM built for solo agents that doesn't try to be a team-lead-route-tool-with-drip-campaigns-and-AI-scoring.
agentdesk is the result.
What It Does
- Contacts. Buyers, sellers, past clients, leads. Full activity log — every call, email, showing, note. Tag-based segmentation. Birthday + home-anniversary reminders for past clients.
- Properties. Your listings + prospected properties. Photos, beds/baths/sqft, asking, status. Attach to a contact when you show or they're interested.
- Showings. Log date, property, attendees. Capture buyer feedback in structured + free-text form. Build a history you can share with the seller at price-adjustment conversations.
- Transactions. Full lifecycle: offer → accepted → inspection → appraisal → clear-to-close → closed. Per-stage checklist of required docs. Milestone dates with reminders.
- Market comps. Comparable sales within a radius, filtered by beds/baths/sqft. Plot on a map. Export a CMA PDF for listing presentations.
The Transaction Pipeline
This is where most CRMs go wrong for solo agents. They give you a pipeline with 14 stages (Lead / Qualified / Nurture / Appointment Scheduled / Listing Agreement / ...) that nobody uses.
agentdesk has 5 transaction stages, which is what actually happens in a real transaction:
- Offer. Offer written or received. Docs: offer, pre-approval, earnest money receipt.
- Accepted. Mutual acceptance. Docs: ratified contract, disclosures delivered, inspection window calendared.
- Inspection. Inspection period. Docs: inspection report, repair request, repair response, addendums.
- Appraisal. Financing contingency period. Docs: appraisal report, loan commitment, title report.
- Clear to Close. Pre-closing. Docs: final walkthrough confirmation, settlement statement, wire instructions.
Each stage has a required-documents checklist. As you complete docs, they check off. If a docket is incomplete when the stage is supposed to advance, the system flags it. You never close a deal without the file being complete.
The Anniversary Reminder Feature
Every past client has a home-anniversary (the date they closed). Every year on that date, agentdesk fires a reminder for the agent to reach out. "Hey Sarah, happy one-year-in-the-house. How's the living room paint holding up?" Costs five minutes. Generates repeat business.
Birthdays similarly. Reasonable spacing: agents who are too ON with every past client feel fake. Two personal touches a year (birthday + home anniversary) feels right. agentdesk schedules both.
The CMA Generator
Comparative market analysis. The thing you hand a seller during the listing presentation that says "based on these 5 recent sales of similar properties, your home should list at X."
agentdesk pulls comparable sales within a radius, filtered by bed/bath/sqft criteria you set, and generates a PDF with:
- Cover page with subject property photo and your branding.
- Map of comparable sales.
- Per-comp page: photo, address, sale date, sale price, days on market, $/sqft, feature delta vs subject.
- Summary page with suggested list price range.
MLS data import depends on your MLS — some have APIs, some have FTP exports, some require a direct integration that's per-region. Hosted Pro handles the integration for most western US MLS systems. Self-host requires you to drop the CMA CSV in manually.
The Build
Flask + SQLAlchemy + Postgres (SQLite for self-host if you want). The CMA PDF generation uses WeasyPrint. Maps use Leaflet.js with OpenStreetMap tiles (free; no Google API key required for self-host).
git clone https://github.com/Dangercorn-Enterprises/agentdesk.git
cd agentdesk
pip install -r requirements.txt
echo "AUTH_PASSWORD=agentpass" >> .env
python app.py
# → http://localhost:8730
Pricing
- Self-host: $0. Full features including CMA generation (with manual data import).
- Hosted Pro: $39/mo. Managed, automated anniversary reminders, MLS import for supported regions, email support.
- Team: $99/mo. Team accounts with lead routing, Docusign integration, Zillow/Realtor.com lead sync, SSO.
Who It's For
Solo agents with 6-30 closings/year. Small teams (2-5 agents). The agent who's considering leaving their brokerage and doesn't want to lose their contacts in the switch. Anyone looking at $89/month and wondering if it's actually worth it.
The agents who win long-term are the ones who keep good records and follow up. The CRM's only job is to make both of those easy enough that they actually happen.
Related
vacaypro if the agent also has STR listings. coachboard for brokers coaching newer agents. meetingmind for team meetings if you're on one.
Repo: github.com/Dangercorn-Enterprises/agentdesk.
What's On the Roadmap
The next two features I'm building toward for agentdesk:
Per-transaction commission calculator. Brokerages take varying splits (60/40, 70/30, capped, capped-with-team-fee, etc.). agentdesk should compute the agent's net per transaction so the agent always knows what's coming home.
Past-client referral tracker. Every past client has the potential to refer. agentdesk should track outbound referral requests, inbound referrals received, and convert that into a "referral source" leaderboard the agent can use to thank top referrers explicitly.