Case Study No. 02

Threshold CRM — AI-Native Real Estate Platform

AI-native real estate CRM with MLS-ranked matching, a three-service email backbone, carrier-compliant SMS, and Claude as a first-class citizen in every workflow. Built as a product of Day2 Innovative Technical Solutions, LLC.

Multi-tenant SaaSAI-nativeReal-time syncReal EstateNext.js 14Claude · Haiku + Sonnet
Complexity Score
9.5/ 10

Bespoke Software — Complex Platform tier.
Top of category. Exceeds MailBreach (9.2) in total integration surface.

Role
Founder & Sole Engineer
Stack
Next.js 14 · Convex · Claude Haiku + Sonnet · Stripe · Clerk
Status
Launching Soon — thresholdcrm.com
Complexity
9.5 / 10
§ 01 · Executive Summary

The thesis behind Threshold.

Real estate CRMs are built on older architectures with feature-gated pricing models and AI grafted on via GPT-3.5 wrappers. Threshold rejects all three premises and rebuilds the category from the data model up.

The Problem

Legacy CRMs built for the last decade of real estate.

Agents are sold a cheap base plan, then pay extra for SMS, extra for premium AI, extra for automations. Incumbents — Follow Up Boss, kvCORE, Lofty, LionDesk, Top Producer — run on architectures predating Claude-grade models and structurally cannot match an all-features-every-plan offering without compressing ARPU.

The Solution

Claude as a first-class citizen across every workflow.

Threshold is built AI-native from day one with Claude Haiku for classification, Sonnet for quality-critical tasks, and a cost-optimization layer that keeps margins above 85% even at usage caps. Every feature ships on every plan. Usage allowances scale with business volume, not artificial tiers.

§ 02 · Architecture Complexity

What was built.

Every component mapped to its integration complexity. Maximum means multi-week engineering with non-trivial failure modes. High means significant infrastructure with external dependencies. Medium means well-scoped but non-trivial.

HomeMatch AI engine
Maximum
Client-facing intake wizard feeds custom preferences (including open-text dealbreakers) into Claude Sonnet, which queries the MLS via SimplyRETS, ranks every active listing, and returns a ranked match set. No competitor has this as a built-in feature.
Multi-tenant SaaS + real-time sync
Maximum
Convex as the database and real-time transport. Every tenant strictly isolated. Real-time sync across contacts, pipeline, and conversations means no polling, no stale state — and no margin for cross-tenant bleed.
AI cost optimization layer
Maximum
chooseModel() routing (Haiku vs Sonnet), prompt caching via cache_control, MLS listing sanitization, nightly batch lead scoring, soft-degrade UX at 80%/100% of allowances. Collectively the difference between a 92% gross margin and a 55% one.
Three-service email backbone
Maximum
Postmark Inbound Streams for parsed lead emails, Resend for all outbound transactional mail, Gmail + Microsoft Graph OAuth for two-way sync with the agent's own inbox. Three services because no single vendor does all three jobs well.
Twilio SMS + A2P 10DLC compliance
High
Managed subaccounts by default, BYOT as an option. A2P 10DLC brand registration, TCPA quiet hours, automatic STOP/UNSUBSCRIBE handling, per-message opt-in tracking, full audit trail. Unregistered US business SMS is carrier-blocked — there is no soft failure mode.
Claude-native AI surface
High
Lead close scoring, follow-up drafts, HomeMatch ranking, showing feedback sentiment, SMS suggested replies, intent classification, life event surfacing, transaction document extraction. Seven distinct AI surfaces, each with its own prompt, routing, and evaluation harness.
MLS integration (SimplyRETS · per-agent BYOK)
High
Each agent carries their own MLS IDX agreement and their own SimplyRETS key. Per-tenant secret storage, query throttling, field sanitization before AI hand-off, and graceful handling of regional MLS schema drift.
Metered subscription billing
High
Stripe subscriptions across four plans (Solo, Pro, Teams per-seat, Brokerage custom), metered overages for HomeMatch runs, SMS messages, and AI drafts, plus BYOK gating for Teams and Brokerage tiers. Usage counters must reconcile to the cent with Stripe invoices.
Contact import engine
Medium
Structured import from nine named sources plus CSV and vCard. 24-hour undo window per import batch. Claude Haiku used for field mapping and dedupe on ambiguous rows. Each import gets a provenance record for audit.
Form builder + hosted landing pages
Medium
Drag-and-drop form builder, agent-hosted landing pages under thresholdcrm.com subpaths, submission routing into the CRM pipeline, and competitor-switch page variants (Follow Up Boss first, then four others) with legal guardrails.
Webhook / universal lead capture API
Medium
Authenticated endpoint that accepts lead payloads from any source — third-party forms, Zapier-style tools, partner integrations. Schema validation, idempotent ingestion, signature verification.
Pipeline, transactions, and reporting
Medium
Eight-stage pipeline, showing scheduler, transaction milestone tracking, offer tracking, activity timeline, source ROI reporting, commission dashboard. The conventional CRM surface — non-trivial only because it must look and feel like Linear, not Salesforce.
§ 03 · Feature Complexity Distribution

Twelve components, three tiers of difficulty.

Four components sit in the "Maximum" bucket, where the engineering risk is concentrated. Below, the distribution — and what makes each tier hard.

4components
Maximum Complexity
  • HomeMatch AI engine
  • Multi-tenant real-time architecture
  • AI cost optimization layer
  • Three-service email backbone
4components
High Complexity
  • Twilio SMS + A2P 10DLC
  • Claude-native AI surface (7 features)
  • MLS integration (per-agent BYOK)
  • Metered subscription billing
4components
Medium Complexity
  • Contact import engine
  • Form builder + landing pages
  • Webhook / lead capture API
  • Pipeline, transactions, reporting
§ 04 · Key Technical Decisions

The choices that matter.

Every bespoke platform is defined by three or four irreversible architecture decisions. These are Threshold's.

Decision · 01

Convex over Postgres + polling.

Real-time sync as a default, not an afterthought. Contact updates, pipeline changes, and new SMS arrive in the UI instantly. Postgres + Supabase Realtime works, but Convex's TypeScript-first query model cuts backend surface area by ~40%.

Decision · 02

Claude Haiku + Sonnet — no Opus.

Haiku routes classification tasks (scoring, sentiment, extraction); Sonnet handles quality-critical tasks (drafts, ranking). Opus is cost-prohibitive at CRM scale. The chooseModel() helper is the single most important piece of code in the stack.

Decision · 03

Three email services, three jobs.

Postmark for inbound parsing, Resend for outbound transactional, Gmail / Microsoft Graph OAuth for two-way sync. Resend can't receive. Postmark isn't great outbound. OAuth is the only way to sync from existing inboxes. Trying to consolidate means compromising on all three.

Decision · 04

A2P 10DLC registration from day one.

Brand registration takes 1–3 weeks. Unregistered US business SMS is carrier-filtered or outright blocked. This was the single most important parallel track to start before feature work — it sets the minimum viable launch date.

Decision · 05

BYOK for Teams and Brokerage tiers.

Larger customers bring their own Anthropic API key. Their usage is billed by Anthropic directly; Threshold's margin becomes structural rather than usage-dependent. This is the business-model mechanism that keeps the "all features, every plan" promise honest.

Decision · 06

All features on every plan. Only allowances scale.

Competitors gate SMS, premium AI, and automations behind upsells. Threshold includes everything and scales only the AI allowance with price. Public incumbents structurally cannot match this — their investor structure demands ARPU defense. It's Threshold's deepest moat.

§ 05 · Calibration

Threshold, relative to MailBreach.

Day2 ITS now has two live production platforms at the top of the Complex Platform tier. Side-by-side, the weight classes are similar — with the engineering risk concentrated in different places.

Threshold CRM

9.5 / 10
Category
AI-native real estate CRM
Tenants
Agent + team + brokerage, real-time sync
Core risk
AI cost runaway; carrier/MLS compliance drift
Integrations
MLS, Postmark, Resend, Gmail, Graph, Twilio, Stripe, Clerk
§ 06 · What This Proves

Two live platforms. One engineering practice.

The MailBreach and Threshold builds together represent the upper bound of what Day2 ITS ships as commissioned work. If your platform sits anywhere inside this complexity range — multi-tenant, AI-native, compliance-touching, integration-heavy — it is within scope for a phased engagement.