You've outgrown Notion. Your sales team has 500 contacts, 200 active deals, and a pile of custom relations—stage mappings, budget tracking, decision-maker links—that live nowhere but Notion's databases. Moving to a production CRM (Orin, Pipedrive, HubSpot) means choosing what moves intact, what gets rebuilt, and what you accept will orphan in translation. This is not a data import. It's a three-phase handoff that keeps deal context alive while you run both systems in parallel. Why Notion CRM hits a wall at 500 contacts Notion databases are fast until they aren't. At 500 contacts spread across related tables—contacts, companies, deals, decision-makers, budget tracking—query lag becomes real. Your team starts working around slowness instead of through it. Filters that loaded in 800ms now take three seconds. Related database rollups strain the engine. Custom relations between contacts and deals become harder to trust. The real breaking point isn't volume; it's context fragmentation. In Notion, a contact lives in one table, their company in another, their deal in a third. Pulling a full pipeline view requires either a slow filtered view or a manual lookup. A production CRM collapses that into a single record. Notion's 300-record export limit is also non-trivial. If you have 500 contacts, you export in batches—and reconciling batches introduces drift. Phase 1: Audit your Notion schema and export in chunks (weeks 1–2) Before touching your target CRM, document what you have in Notion. List every table and relation. Contacts, companies, deals, decision-makers, budget snapshots, activity logs—write them down. For each, note the field type (text, number, date, checkbox, relation, rollup, formula). Identify what can move directly. Text, email, phone, date, single-select, and multi-select fields port cleanly. Formulas, rollups, and relational database lookups do not—you'll rebuild these as automations or reports in your new CRM. Check your deal data. Export your deals table and verify deal stages, amounts, close dates, and owner assignments are clean. Missing amounts or truncated deal titles now are easier to catch than after migration. Export in batches of 300. Notion's export limit is real. Use the 'download as CSV' button, then pull 300 records at a time from each table. Name each file clearly: contacts_batch_1.csv , deals_batch_1.csv , etc. Reconcile batch counts. Add up all exported records and compare to your Notion table counts. Missing rows now save embarrassment later. Export in this order: companies first (they are parent records), then contacts, then deals. This preserves foreign-key relationships during mapping. Phase 2: Map fields and rebuild relations in your target CRM (weeks 3–4) Your new CRM—Orin, Pipedrive, or HubSpot—has a different schema. Contacts, deals, and companies are native objects. Custom relations are not. Plan for this. Field mapping: what moves and what you rebuild Moves as-is: Contact name, email, phone, company name, deal title, deal amount, close date, stage, owner, tags/labels. Needs transformation: Notion checkboxes → CRM single-select (e.g., 'Is qualified' checkbox becomes 'Lead Status: Qualified/Unqualified'). Notion multi-select → CRM tags. Date ranges → start and end date fields (if your CRM supports them). Orphans (rebuild as automations or custom fields): Formula fields (e.g., 'Days in stage' = TODAY() - moved_date) become workflow automations or report calculations. Rollups (e.g., 'Total budget across all deals with this contact') require either a new custom field you populate manually or an integration that syncs it. Relational orphans: If you tracked 'decision-maker contact on this deal,' Notion stored that as a relation field. Most CRMs don't have a native 'decision-maker' field. You'll either add a text field ('Decision-maker name') or use a contact role feature if your CRM has one (HubSpot does; Pipedrive doesn't natively). The hard truth: you will lose some Notion custom relations in translation. Plan for 10–15% of your custom logic to be rebuilt as custom fields, tags, or manual tracking in the new CRM. Set up custom fields in your target CRM before import Create every custom field you'll need before the bulk import. If you're moving to Orin's CRM , create custom contact and deal fields now. Same for Pipedrive or HubSpot . This prevents the post-import scramble to add fields. Build a simple mapping spreadsheet: Notion field name | Notion field type | Target CRM field name | Target CRM field type | Notes For example: Budget (formula) | Formula | Annual Budget | Number | Will need manual monthly updates initially Import your first batch as test Most CRMs allow CSV bulk import. Import your first batch of 100–200 records into a staging or sandbox environment. Check: Do amounts import as numbers (not text)? Are emails parsed correctly? Are stage values recognized (i.e., does 'Proposal' in Notion map to 'Proposal' in your new CRM's stage list)? Are owner assignments preserved