CRM migration
Field-level mapping, validation, and rollback between Propeller CRM and Twenty CRM. We move data and schema; workflows are rebuilt natively in Twenty CRM.
Propeller CRM
Source
Twenty CRM
Destination
Compatibility
8 of 10
objects map 1:1 between Propeller CRM and Twenty CRM.
Complexity
CModerate
Timeline
2-3 weeks
Overview
Moving from Propeller CRM to Twenty CRM is an archive reconstruction project, not a live-API migration. Propeller shut down permanently on December 15, 2019, and the export request window closed February 15, 2020. We receive whatever Propeller archive the customer preserved from that window, audit its completeness, and map the surviving records to Twenty's object model (People, Company, Opportunity, Pipeline). The migration requires parent-record ordering since Contacts must exist before Company lookups resolve, and Deals must exist before Pipeline stage assignments attach. Email campaign records migrate as reference notes. We do not migrate workflows, sequences, or activity logs because Propeller's Gmail extension did not expose those in the standard shutdown export. Post-migration, the customer rebuilds any Propeller automation patterns inside Twenty's workflow builder.
Every standard and custom field arrives verified.
AI proposes the map; you confirm before any record moves.
Parent–child, lookups, and ownership stay linked.
Calls, emails, meetings — with original timestamps.
Documents, uploads, and inline notes move with the record.
Why teams make this switch
Leaving
What's pushing teams away
Choosing
What's pulling them in
Object mapping
Each row shows how a Propeller CRM object lands in Twenty CRM, including any object-level transformations, lookup resolution, or schema-design dependencies.
Typical mapping — final map is confirmed during the sample migration step.
Propeller CRM
Contact
Twenty CRM
People
1:1Propeller Contact records map directly to Twenty People. We extract name, email, phone, job title, and company association from the archive. The company_name field in Propeller's export resolves to a Company record in Twenty by name match. Contacts without a valid email are flagged as incomplete and require customer review before import. Any contacts that were orphaned in Propeller's export (no associated company) are held in a separate queue with a null Company assignment pending confirmation.
Propeller CRM
Company
Twenty CRM
Company
1:1Propeller Company records map to Twenty Company. We extract company name, domain, phone, address, and industry. Multiple Propeller Contacts referencing the same company name resolve to a single Twenty Company record. If the archive contains duplicate company names with slight variations (e.g., 'Acme Corp' and 'Acme Corporation'), we flag them for dedupe review before import.
Propeller CRM
Deal
Twenty CRM
Opportunity
1:1Propeller Deal records map to Twenty Opportunity. We extract deal name, amount, stage, owner, contact association, and created/updated timestamps. The deal's associated Contact resolves to the Twenty People record via email match. Owner assignment resolves by email against the User mapping. Open deals and closed-won deals migrate with their original amounts; closed-lost deals migrate at customer discretion based on whether historical loss data has reporting value.
Propeller CRM
Pipeline Stage
Twenty CRM
Pipeline Stage
lossyPropeller's custom pipeline stage names migrate as Twenty Pipeline stage values. The archive preserves stage names but not stage ordering. We ask the customer to confirm the intended stage sequence during scoping and configure Twenty's Pipeline stages in that order. Stages with no clear semantic equivalent in Twenty (e.g., 'verbal yes', 'awaiting finance') require customer placement decision.
Propeller CRM
Email Campaign
Twenty CRM
Note (reference record)
1:1Propeller Email Campaign records (campaign name, associated contacts, send date, status) migrate as Note records attached to the relevant Company or People in Twenty. Campaign content and templates do not migrate as functional email templates because Twenty does not have a native campaign automation feature. The customer documents campaign history for reporting reference.
Propeller CRM
Email Template
Twenty CRM
Note (reference record)
1:1Propeller email templates with merge fields migrate as Note records in Twenty for reference. The template body and field names are preserved as plain text. Twenty does not have a native template-migration pathway; the customer uses the template text as a reference when creating new templates in Twenty or an integrated email tool.
Propeller CRM
Owner/User
Twenty CRM
WorkspaceMember
1:1Propeller user accounts mapped to contacts and deals by email address. We extract all distinct owner emails and attempt to match them against the Twenty workspace members. If a Propeller owner email has no corresponding Twenty user, we create a placeholder WorkspaceMember record with the email and flag it for the customer to activate or reassign. Owners whose original Propeller accounts were inactive at shutdown require the customer to decide on reassignment targets.
Propeller CRM
Activity Log
Twenty CRM
None
1:1Activity logs (opens, clicks, replies, meeting scheduling) were tracked inside Propeller's Gmail extension as live activity data but were not included in the shutdown data export. We cannot reconstruct per-contact activity timelines from the archive. This gap is documented explicitly during scoping. No activity data migrates.
Propeller CRM
Workflow/Automation
Twenty CRM
None
1:1Propeller workflow and automation rules do not exist as exportable records. Even during the live platform period, Propeller's automation logic was not exposed via API or data export. We do not attempt to reconstruct automations. We deliver a written record of any automation descriptions the customer documented externally (e.g., in support tickets or internal notes) as a reference for manual rebuild in Twenty's workflow builder.
Propeller CRM
Custom Field (if any)
Twenty CRM
Custom Field
lossyPropeller did not support custom field creation on standard objects. If the customer's export contains any custom fields or extended properties that Propeller added in a later update or via an undocumented feature, we treat them as text fields in Twenty and flag them for the customer to configure with the correct field type in Settings → Data Model before final import.
| Propeller CRM | Twenty CRM | Compatibility | |
|---|---|---|---|
| Contact | People1:1 | Fully supported | |
| Company | Company1:1 | Fully supported | |
| Deal | Opportunity1:1 | Fully supported | |
| Pipeline Stage | Pipeline Stagelossy | Fully supported | |
| Email Campaign | Note (reference record)1:1 | Fully supported | |
| Email Template | Note (reference record)1:1 | Fully supported | |
| Owner/User | WorkspaceMember1:1 | Fully supported | |
| Activity Log | None1:1 | Fully supported | |
| Workflow/Automation | None1:1 | Fully supported | |
| Custom Field (if any) | Custom Fieldlossy | Fully supported |
Gotchas + challenges
Platform-specific issues from each side, plus the pair-specific challenges that don't show up on either platform's page on its own.
Propeller CRM gotchas
Platform shutdown — no active API or support
Activity history not included in standard export
Deal stage mapping requires manual review
Owner/user assignment requires remapping
Twenty CRM gotchas
Import order is enforced and critical
Export limited to 20,000 records and visible columns only
Soft-deleted records count toward uniqueness and trigger restores
API rate limits cap at 200 req/min on Organization tier
No native email sequences — follow-up cadences require external tools
Pair-specific challenges
Migration approach
Archive receipt and completeness audit
The customer shares the Propeller CRM export archive (CSV, JSON, or whatever format was produced at shutdown). We audit the archive for all supported objects: Contacts, Companies, Deals, Pipeline Stages, Email Campaigns, Email Templates, and Owners. We confirm row counts per object, identify any missing objects or truncated fields, and flag the Activity Log gap. The audit output is a written completeness report that forms the basis of the migration scope and the customer sign-off before work begins.
Twenty workspace provisioning verification
We confirm that Twenty is provisioned and accessible via its GraphQL or REST API. For self-hosted instances, the customer provides the instance URL and API credentials. For hosted twenty.com accounts, we connect to the workspace API directly. We verify that the Twenty workspace has the required objects (People, Company, Opportunity, Pipeline) and that the customer has configured any custom fields or custom objects needed for the migration. We do not provision the Twenty instance itself.
Schema mapping and stage order confirmation
We create a written mapping document that pairs each Propeller object with its Twenty equivalent, documents field-level transformations (date formats, phone number normalization, name parsing), and lists the Pipeline stage names with a request for confirmed ordering. The customer reviews and approves the mapping before any data loads. During this step, we also reconcile owner emails against Twenty workspace members and identify any unresolved owner assignments.
Parent-record import in dependency order
We import data in record-dependency order to satisfy foreign-key constraints. Companies load first (as Twenty Company records). People load second with Company lookups resolved by name match. Opportunities load third with People lookups resolved by email and Pipeline stages assigned by name. Email Campaigns and Templates load as Note records attached to the relevant Company or People. Each phase emits a row-count reconciliation report before the next phase begins. Any records that fail validation (missing required fields, unmatched lookups) are held in an error queue for customer review.
Validation and orphaned record reconciliation
We run reconciliation checks across all imported objects: Contact count matches Propeller export, Company count matches unique company names, Deal count matches Propeller export, and Owner assignments are verified. Orphaned contacts (no Company lookup), orphaned deals (no People lookup), and unassigned owner records are documented in a reconciliation report for the customer to resolve. The customer makes final decisions on reassignment targets and dedupe choices before production cutover.
Production cutover and automation handoff
We freeze the Propeller archive (no further writes possible since the platform is defunct) and run a final delta reconciliation if any records were added during scoping. We enable Twenty as the system of record. We deliver the automation handoff document listing any Propeller automation patterns documented in the export or customer notes, with recommended equivalents in Twenty's workflow builder. We do not rebuild automations inside the migration scope. We support a one-week post-cutover window for data discrepancy resolution.
Platform deep dives
Propeller CRM
Source
Strengths
Weaknesses
Twenty CRM
Destination
Strengths
Weaknesses
Complexity grading
Moderate CRM migration. 1 of 8 objects need a manual workaround.
Overall complexity
Moderate migration
Derived from compatibility, mapping clarity, API constraints, and data volume across Propeller CRM and Twenty CRM.
Object compatibility
1 of 8 objects need a manual workaround.
Field mapping clarity
Field mapping is derived from defaults — final spec confirmed during the sample migration.
Timeline complexity
8-object category — typical timelines run 2–7 days end-to-end.
API constraints
Propeller CRM: Not applicable — platform shut down December 15, 2019.
Data volume sensitivity
Propeller CRM doesn't expose a bulk API — REST + parallelization used for high-volume runs.
Estimator
Rule-based pricing — no per-record fees, no manual quotes. Migrations over 2M records are scoped individually.
Step 1
Pick a category, then your source and destination platforms.
Category
FAQ
Answers to the questions buyers ask most during Propeller CRM to Twenty CRM migration scoping. Not seeing yours? Book a call.
Walk through your Propeller CRM to Twenty CRM migration with a real engineer — 30 minutes, free, written quote within 24 hours.
Book a free 30 minute consultationAdjacent paths
Other ways to leave Propeller CRM
Other ways to arrive at Twenty CRM
Ready when you are
Tell us record counts and timeline. We'll come back with a written quote inside 1 business day — no commitment, no sales pitch.