At 5,000 contacts, Affinity's relationship graph becomes expensive—and export becomes dangerous. The platform preserves company relationships but flattens individual contact mapping, orphaning deal context that lives nowhere else. We traced a real 5K-contact export to Orin, mapped which fields land safely, and built a 60-day recovery playbook with automation checkpoints. If you're at this inflection point, what survives the move—and what needs manual rebuilding—matters more than the tool you pick. What actually exports from Affinity: the field inventory Affinity's export produces a standard CSV with these core fields intact: Contact identity: First name, last name, email, phone (primary phone only) Company affiliation: Company name, title, reporting line (exported as text, not as linked objects) Custom fields: Any custom text, number, or single-select fields you built Interaction history summary: Last interaction date, interaction count (not the full conversation thread) Tags: All tags, preserved as comma-separated values Notes: The notes field, but only the most recent 5,000 characters per contact What does not survive: the relationship graph itself. Affinity stores relationship depth as a graph database—who knows whom, which introductions led to which opportunities, which stakeholders are aligned on which deals. That structure does not export. You get names, company names, and dates. The connective tissue vanishes. Where the data breaks: three migration gaps you must patch Gap 1: Multiple phone numbers collapse to one field Affinity lets you store mobile, office, and WhatsApp numbers per contact. The export grabs only the primary phone. If your sales team routes outreach by channel—WhatsApp to some accounts, SMS to others—you lose that routing logic. You'll need to manually audit your top 200 accounts and re-enter secondary phone numbers before automating outreach again. Gap 2: Relationship ownership gets flattened If Contact A and Contact B at the same company both report to Contact C, and your rep owns the relationship with C, Affinity captures that ownership link. But when you export, the CSV shows three separate rows with no indication that B and C are connected through A. In a deal context, you lose the chain of command. Rebuilding this requires either manual review of your top 20 deals or a 90-minute audit of your CRM's company hierarchy, then re-linking contacts post-import. Gap 3: Historical interaction summaries lose conversation context The export includes "last interaction date" and "total interactions," but not the messages themselves. If your team relied on Affinity's conversation history to route follow-up, or to recall the specific ask from the last meeting, you need a separate archive. Use Affinity's API to pull the full conversation thread before export, store it as PDFs or a searchable Slack thread, and reference it during the rebuild phase. The 60-day recovery playbook: phases and automation checkpoints Weeks 1–2: Import and deduplication (Days 1–14) Import the CSV into your new CRM . The first 10 days are deduplication and normalization. Day 1–3: Upload CSV. Run a duplicate detection scan. Affinity often exports the same contact twice if they appear in multiple companies or if a name variation slipped through. Flag and merge any duplicates before you move on. Day 4–7: Validate email domains against your target account list. If you have a list of 100 target companies, flag any contacts whose email domain doesn't match. This catches data entry errors and orphaned test records. Day 8–14: Assign contacts to teams and reps based on your original Affinity ownership field (which does export). Batch-assign via CSV reimport or use your CRM's bulk-action feature. Checkpoint: By day 14, you should have 95%+ of your contacts correctly assigned, no obvious duplicates, and a clean import log. If your import had more than 3% fail rate, stop and audit the field mappings—something is misaligned. Weeks 3–4: Relationship hierarchy rebuild (Days 15–30) This is where you manually recover the relationship graph for your top accounts. Day 15–20: Export a list of your top 50 deals (by ARR, probability, or recency). For each deal, manually map the stakeholders: who is the champion, who is the decision-maker, who is the influencer, who controls procurement. Use your archived Affinity conversation history as reference. Enter these relationships directly into your new CRM's contact-linking fields. Day 21–30: Repeat for the next 100 deals. By day 30, you've reconstructed the decision-making structure for roughly 80% of your pipeline value. The long tail of smaller accounts can be rebuilt as reps re-engage, or via automation (see below). Checkpoint: Your top 20 active deals should have complete stakeholder maps. Your sales team should be able to open a deal and see all the people involved without digging through Slack or email. Weeks 5–6: Secondary phone and interaction data recovery (Days 31–45) You've lost second