Skip to main content
Add-on Identity Resolution

One resident. One record.
Across every system you connect.

Yardi

Sarah Chen

unit_4B

[email protected]

Entrata

Sarah C.

4B

[email protected]

Funnel

Sara Chen

toured 3/14

+1 (555) 014-2391

Leonardo247

resident 8912

unit_4B

+1 (555) 014-2391

Identity Resolution
Sarah Chen 99.3% confidence

unit_4B · [email protected] · +1 (555) 014-2391

Yardi Entrata Funnel Leonardo247

Sarah Chen, Sarah C., Sara Chen, resident 8912. Four systems, four records, one person.

Your dashboard shows four residents. Your renewal model is training on noise. Your churn prediction thinks Sarah is a cohort.

Identity Resolution turns the four Sarahs back into one Sarah.

What changes the day you turn it on

A single record per person, across every system

Every touchpoint tied to the right human. Tour to move-out, one record per person.

Journey analytics that stop lying to you

Funnel metrics stop rewarding duplicates. Conversion rates and cohort retention reflect actual people, not join artifacts.

Churn and renewal models that converge

Models stop training on duplicate rows that look like patterns. Faster convergence, predictions you can defend in a room.

Roommates, co-signers, and transfers handled once

The edge cases that eat in-house builds for a year are encoded in the engine. You inherit the fight we already had, not the rebuild.

The year you'd spend building this yourself

A working identity resolution system is not hard to start. It's hard to finish. The first version ships in a month and looks great on demo data.

The second year is when you're still chasing the edge cases Sarah's lease renewal surfaced.

We already shipped this. You inherit the fight, not the rebuild.

identity_resolution/
├── fuzzy_name_match.py~300 lines
├── phone_normalize.py~120 lines
├── email_normalize.py~95 lines
├── property_heuristics.py~450 lines
├── roommate_detection.pyedge case~280 lines
├── cosigner_handling.pyedge case~210 lines
├── transfer_resolution.pyedge case~340 lines
├── review_queue/~2,100 lines
└── tests/~3,500 lines
and the list keeps growing...

Stop training models on duplicate residents