CRM migration
Field-level mapping, validation, and rollback between Propeller CRM and Salesforce Sales Cloud. We move data and schema; workflows are rebuilt natively in Salesforce Sales Cloud.
Propeller CRM
Source
Salesforce Sales Cloud
Destination
Compatibility
9 of 12
objects map 1:1 between Propeller CRM and Salesforce Sales Cloud.
Complexity
CModerate
Timeline
2-4 weeks
Overview
Moving from Propeller CRM to Salesforce is an archive-to-API migration. Propeller shut down on December 15, 2019 with a final export window that closed February 15, 2020; there is no live API to query and no support team to contact. We work exclusively from whatever archive was produced during that window. The Propeller data model (Contacts, Companies, Deals, Pipeline Stages, Email Campaigns) maps to Salesforce standard objects, but the Gmail-extension activity logs that Propeller tracked live were not included in the standard export — we flag this gap explicitly rather than promise what cannot be delivered. Owner assignments are tied to individual email addresses; we map these to Salesforce Users during import and flag any assignments where the owner email has no corresponding User. We do not migrate automations, sequences, or email templates as code; we deliver a written inventory of these for the customer's admin to rebuild in Salesforce Flow.
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 Salesforce Sales Cloud, 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
Salesforce Sales Cloud
Lead or Contact (split required)
1:manyPropeller Contacts with no deal association or early-stage engagement map to Salesforce Lead. Propeller Contacts with an active or closed Deal and a linked Company map to Salesforce Contact attached to the mapped Account. We apply the split rule during import scoping, with the original Propeller contact record preserved in a custom field for audit. If the Propeller export lacks a deal association for a contact, we route it to Lead rather than create a Contact with no parent Account, which would leave it orphaned.
Propeller CRM
Company
Salesforce Sales Cloud
Account
1:1Propeller Company records map to Salesforce Account. The Company name becomes Account Name and is used as the dedupe key during import. If multiple Propeller Company records share the same name (a common data quality issue in lightweight CRMs), we deduplicate and link all associated contacts to the surviving Account. Account must be imported before Contact to satisfy the AccountId lookup.
Propeller CRM
Deal
Salesforce Sales Cloud
Opportunity
1:1Propeller Deals map to Salesforce Opportunity. The Deal amount, name, and close date migrate to Amount, Name, and CloseDate. Deal owner email resolves to Salesforce OwnerId via the User mapping. Closed-Lost and Closed-Won status migrate to Opportunity StageName. We import Opportunities after Accounts and Contacts so that AccountId and PrimaryContactId lookups are satisfied at insert time.
Propeller CRM
Pipeline Stage
Salesforce Sales Cloud
Opportunity Stage
lossyPropeller allowed fully custom pipeline stage names with no enforced ordering logic. We map each Propeller stage name to a Salesforce Opportunity StageName value, with stage probability percentages applied per the customer's confirmed placement. Stages that have no clear Salesforce equivalent (e.g., 'verbal yes', 'awaiting finance') are flagged during scoping for manual customer confirmation before the Sales Process is deployed to Sandbox.
Propeller CRM
Email Campaign
Salesforce Sales Cloud
Campaign
1:1Propeller Email Campaigns map to Salesforce Campaign records. Campaign name, associated contact list, send date, and campaign status migrate as Campaign fields. Campaign member status for each associated Contact migrates to CampaignMember. We do not migrate campaign email body content; Salesforce Campaign does not store rich HTML body by default and Propeller campaign templates are best treated as source documents for a Salesforce Marketing Cloud implementation.
Propeller CRM
Email Template
Salesforce Sales Cloud
EmailTemplate
1:1Propeller email templates with merge fields migrate to Salesforce EmailTemplate. Template subject, body (rich text), and merge field API names transfer as Salesforce template fields. Merge field naming conventions differ between platforms; we translate Propeller merge field syntax to Salesforce merge field syntax during the transform phase. We do not migrate template-associated images or attachments as Salesforce EmailTemplate stores body content inline only.
Propeller CRM
Owner/User
Salesforce Sales Cloud
User
1:1Propeller user accounts are tied to individual email addresses and stored on every Contact, Company, and Deal record as the owner reference. We extract all distinct owner emails from the export and attempt to match them to Salesforce User records by email. Any owner email with no matching Salesforce User goes to a reconciliation queue — the customer's admin must provision a corresponding User (active or inactive depending on whether the original Propeller user is still with the company) before record import can complete.
Propeller CRM
Activity (opens, clicks, replies, meetings)
Salesforce Sales Cloud
Not migratable
1:1Propeller's Gmail extension tracked per-contact activity logs — opens, clicks, replies, and meeting events — as live data inside the extension interface. These activity records were NOT included in the standard shutdown export package. We cannot reconstruct or rehydrate this data. We flag this gap explicitly during scoping and do not promise complete activity migration. Any existing activity data in the export archive (e.g., notes or tasks explicitly created as records) is migrated; extension-tracked interactions are not.
Propeller CRM
Notes
Salesforce Sales Cloud
Note
1:1If the Propeller export includes explicit note records (user-created notes attached to contacts or deals as data records), these migrate to Salesforce Note objects linked via ContentDocumentLink to the parent Contact, Account, or Opportunity. Propeller notes created via the Gmail extension but not stored as database records are not included in the export.
Propeller CRM
Custom fields
Salesforce Sales Cloud
Custom fields
lossyPropeller did not support custom fields or custom objects. Any customer-specific field labels or data captured in text fields (e.g., deal custom data stored in a free-text Deal Name or Notes field) is migrated as raw text into a Salesforce custom field that we provision during schema design. We cannot retroactively type these fields; the customer reviews and reclassifies them post-migration.
Propeller CRM
Attachments
Salesforce Sales Cloud
ContentDocument
1:1File attachments linked to Propeller contacts, companies, or deals are included in the export archive if Propeller stored them as records. Attachments are migrated as Salesforce ContentVersion and ContentDocument records linked via ContentDocumentLink to the parent Contact, Account, or Opportunity. Attachments stored only inside the Gmail extension (e.g., email attachments linked to Propeller-tracked threads) are not included in the export.
Propeller CRM
Workflows, Sequences, Automations
Salesforce Sales Cloud
Not migratable
1:1Propeller email campaigns and automated follow-up sequences cannot migrate as code because the destination platform uses a different automation model (Salesforce Flow with record-triggered, scheduled, and screen flow variants). We do not rebuild these. We deliver a written inventory of every Propeller email campaign, sequence step, and automation trigger with a recommended Salesforce Flow or Sales Engagement equivalent for the customer's admin to rebuild post-migration.
| Propeller CRM | Salesforce Sales Cloud | Compatibility | |
|---|---|---|---|
| Contact | Lead or Contact (split required)1:many | Fully supported | |
| Company | Account1:1 | Fully supported | |
| Deal | Opportunity1:1 | Fully supported | |
| Pipeline Stage | Opportunity Stagelossy | Fully supported | |
| Email Campaign | Campaign1:1 | Fully supported | |
| Email Template | EmailTemplate1:1 | Fully supported | |
| Owner/User | User1:1 | Fully supported | |
| Activity (opens, clicks, replies, meetings) | Not migratable1:1 | Fully supported | |
| Notes | Note1:1 | Fully supported | |
| Custom fields | Custom fieldslossy | Fully supported | |
| Attachments | ContentDocument1:1 | Fully supported | |
| Workflows, Sequences, Automations | Not migratable1:1 | 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
Salesforce Sales Cloud gotchas
Workflow Rules and Process Builder are retired
Bulk API batch quota exhaustion during large imports
Storage overage billing is non-obvious
Account-Contact many-to-many relationship mapping
Territory and team member import ordering dependencies
Pair-specific challenges
Migration approach
Export archive assessment and scoping
We receive the customer's Propeller shutdown-era export archive (CSV, JSON, or structured file format) and audit it for completeness. We count Contact, Company, Deal, Pipeline Stage, Email Campaign, Email Template, and Note records. We identify the data export format, check for header rows, encoding issues, and any deduplication applied by Propeller's export tooling. We also flag which objects are present, which are absent, and explicitly document the activity history gap. This assessment output becomes the written migration scope that both parties sign off before work begins.
Lead-Contact split design and Salesforce schema provisioning
We design the Salesforce destination schema based on the Propeller data model. Unqualified Propeller contacts (no active deal, no company link, or early engagement stage) map to Salesforce Lead. Qualified contacts (linked to a Company and/or associated with a Deal) map to Salesforce Contact attached to an Account. We provision Salesforce custom fields to carry Propeller source identifiers (propeller_contact_id__c, propeller_company_id__c) for reconciliation, and a propeller_lifecycle_stage__c field on Lead and Contact to preserve the original contact context. Schema deploys to a Salesforce Sandbox first for validation.
Data cleaning and transform
We run the Propeller export through a data cleaning pass: duplicate company names are resolved to a single Account, owner emails are extracted and matched against the Salesforce User table (with unmatched emails flagged to the queue), free-text Propeller fields that contain customer-specific data are identified and mapped to new Salesforce custom fields, and Propeller merge field syntax is translated to Salesforce merge field syntax for the EmailTemplate import. Any encoding issues or malformed records are corrected or flagged. This step runs before any Sandbox migration to reduce rejection rates.
Sandbox migration and reconciliation
We run a full migration into a Salesforce Sandbox (Full Copy or Partial Copy depending on data volume) using production-like record counts. The customer's RevOps lead or Salesforce admin spot-checks 25-50 records per object against the Propeller archive — verifying names, emails, company associations, deal amounts, stage assignments, and owner mapping. We resolve any mapping corrections identified during review before the production migration phase begins. The Sandbox sign-off is a required gate before production cutover.
Production migration in dependency order
We run production migration in record-dependency order: Accounts (from Propeller Companies), Contacts and Leads (with AccountId resolved for Contacts, Lead-Contact split applied), Opportunities (with AccountId, OwnerId, and StageName resolved), EmailTemplates, Campaigns, and Notes. Each phase emits a row-count reconciliation report before the next phase begins. Owner reconciliation queue items are resolved before any record with an OwnerId dependency is imported. Activity history (not migratable) is explicitly excluded from the import manifest.
Cutover, validation, and automation rebuild handoff
We freeze the Propeller archive as read-only at cutover, run a final delta migration of any records modified during the migration window, then enable Salesforce as the system of record. We deliver the Propeller automation and campaign inventory document to the customer's admin team for Salesforce Flow rebuild. We support a one-week post-cutover window where we resolve reconciliation issues raised by the sales team. We do not rebuild Propeller workflows or sequences inside migration scope; that is a separate engagement.
Platform deep dives
Propeller CRM
Source
Strengths
Weaknesses
Salesforce Sales Cloud
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 Salesforce Sales Cloud.
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 Salesforce Sales Cloud migration scoping. Not seeing yours? Book a call.
Walk through your Propeller CRM to Salesforce Sales Cloud 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 Salesforce Sales Cloud
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.