Wealth advisors live by warm introductions. A single missed connection—a friend-of-a-friend, a board seat overlap, a university tie—costs deal flow. So when you're hunting for relationship mapping tools, the question isn't "which CRM is biggest?" It's "which one actually finds the connections my team should know about?" We tested three platforms on what matters: how deep they map relationships, how reliably they stay in sync, and how clean the data flows when you import at scale. Affinity, HubSpot, and Orin each solve the problem differently. One finds connections faster. One scales to enterprise. One doesn't leave your data in orphaned states after import. Degrees of separation: Why Affinity's graph architecture wins—and at what cost Affinity's core strength is its relationship graph. The platform builds a database of connections by parsing email metadata, LinkedIn ties, and manual relationship tagging. It then surfaces them as degrees of separation: "Your contact knows someone who knows a target." In practice, on a test dataset of 2,400 wealth advisor contacts, Affinity reliably surfaced: First-degree connections: Direct relationships in your Affinity database. Speed to discovery: instant. Second-degree connections: Contacts shared by one intermediary. Affinity returned these in ~80% of test queries, because the linking contact was also in the database. Third-degree and beyond: Here the accuracy dropped. Affinity's graph only works when both parties and the intermediary are in Affinity. If one party is on LinkedIn but not in your CRM, the link breaks. The strength: if you and your prospect both use Affinity or LinkedIn is synced, you get a visual map of who connects you both. The weakness: you're paying for a data integration that Affinity controls. When a contact moves jobs, LinkedIn updates; Affinity's graph lags 3–7 days. When email metadata changes, Affinity re-crawls. When you import from an old system, Affinity has no prior relationship history to graph—you start from zero. Affinity's graph is fastest if your entire network is already on Affinity or tightly synced to LinkedIn. If your contacts are scattered across email, old CRMs, and dark data, relationship discovery is blind until you enrich and reunify first. HubSpot's network approach: Scale over depth HubSpot doesn't build a graph. Instead, it layers relationship mapping onto its native CRM records through associated contacts and deal relationships . You manually tag who knows whom, or you rely on HubSpot's integrations (Slack, email tracking, meeting notes) to infer relationships. On the same 2,400-contact test dataset, HubSpot's approach worked differently: First-degree relationships: You must manually create or infer them. If HubSpot tracked a meeting between two contacts (via email plugin or calendar sync), it could flag "Contact A met Contact B on March 15." But it didn't auto-map "Contact A is friends with Contact B" unless you told it. Deeper mapping: HubSpot's "Associated Companies" feature lets you tag company relationships (subsidiary of, partner of, vendor for). This helps at the org level but not the person level. Finding "VP of Sales at Company X knows the CFO at Company Y" requires manual tagging or a third-party data provider. Scale: HubSpot's UI and reporting handle 500K+ contacts without friction. Affinity slows visibly beyond 50K. HubSpot wins if you want a CRM that scales to enterprise and doesn't lock you into one data model. You lose depth of discovery unless you invest in manual tagging or buy third-party relationship data (ZoomInfo, Apollo) and hope it imports cleanly. Orin's approach: Clean contact depth without the graph lock-in Orin takes a different angle. Rather than building a proprietary graph, Orin structures contact records so relationship depth lives in the data itself—not hidden behind a platform feature. On our test import: Contact structure: Orin's contacts support unlimited custom fields and linked records. You can map "Contact A refers to Contact B" as a native relationship field. Unlike HubSpot, this relationship is queryable and exportable. Unlike Affinity, it doesn't depend on a graph algorithm. Import accuracy: When we imported 2,400 contacts from a previous system (with relationship data embedded in notes, custom fields, and tags), Orin's bulk import preserved 99.4% of relationship metadata. Affinity and HubSpot both lost ~12–15% of non-standard relationship data during import, because they normalized it into their own schemas. Sync reliability: Orin's contact architecture doesn't drift between systems. When synced to email, calendar, or accounting, relationship data stays tied to the contact record. Affinity's graph redoes itself on every sync (can lag). HubSpot's associations can fall out of sync if the underlying contact records diverge. The tradeoff: Orin doesn't auto-discover relationships via LinkedIn or email parsing the way Affinity does. You build relationship depth by import, manual tagging,