CRM migration

Migrate from Followup CRM to Salesforce Sales Cloud

Field-level mapping, validation, and rollback between Followup CRM and Salesforce Sales Cloud. We move data and schema; workflows are rebuilt natively in Salesforce Sales Cloud.

Followup CRM logo

Followup CRM

Source

Salesforce Sales Cloud

Destination

Salesforce Sales Cloud logo

Compatibility

92%

12 of 13

objects map 1:1 between Followup CRM and Salesforce Sales Cloud.

Complexity

BStandard

Timeline

48–72 hours

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

Followup CRM organizes sales activity around projects with contacts and companies attached, using goals and milestones to track deal progress. Salesforce Sales Cloud uses the standard CRM triad of Lead, Account/Contact, and Opportunity, with Activity records for tasks and events. These architectural differences shape how we approach every migration. We extract all contacts, companies, and projects, then map them to their Salesforce equivalents. Where Followup CRM stores project milestones as a sub-object, we transform those into Salesforce Task records or custom fields on the Opportunity. We preserve original timestamps via custom datetime fields since Salesforce sets CreatedDate at migration time. Owner resolution happens by email matching against destination users. Followup CRM workflows and automation rules do not migrate — we export them as a structured rebuild reference for your Salesforce admin to implement in Flow. The migration runs via API with a 24–48 hour delta-pickup window to capture in-flight records created or modified during cutover.

Field-level fidelity

Every standard and custom field arrives verified.

Schema-aware mapping

AI proposes the map; you confirm before any record moves.

Relationships preserved

Parent–child, lookups, and ownership stay linked.

Full activity history

Calls, emails, meetings — with original timestamps.

Attachments & notes

Documents, uploads, and inline notes move with the record.

Why teams make this switch

Two sides of the same decision

Leaving

Followup CRM logo

Followup CRM

What's pushing teams away

  • Starting price of ~$4500/yr for 5 users is steep for small contractors and locks teams into annual contracts before validating fit.
  • No publicly documented API or bulk export endpoints makes migration to another platform technically difficult without vendor assistance.
  • Known duplicate follow-up issue in the system frustrates users who rely on clean task queues for sales cadence.
  • Construction-specific feature set does not generalize well; teams outgrowing the niche find limited upgrade paths within the platform.

Choosing

Salesforce Sales Cloud logo

Salesforce Sales Cloud

What's pulling them in

  • The AppExchange marketplace with 5,000+ prebuilt apps gives enterprises integrations for nearly every business workflow without custom development.
  • Native Einstein AI for lead scoring, opportunity insights, and predictive forecasting adds intelligence without a separate platform purchase.
  • Territory management, multi-currency support, and advanced forecasting satisfy the needs of complex B2B sales organizations with structured revenue teams.
  • Slack, Tableau, and CPQ are deeply integrated into the core platform, keeping the sales stack unified for teams already in the Salesforce ecosystem.
  • Organizations with a large, established Salesforce implementation choose it because switching costs — integrations, custom code, trained admins — are prohibitive.

Object mapping

How Followup CRM objects map to Salesforce Sales Cloud

Each row shows how a Followup 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.

Followup CRM

Contact

maps to

Salesforce Sales Cloud

Contact

1:1
Fully supported

Followup CRM contacts map 1:1 to Salesforce Contacts. Because Salesforce requires an AccountId for most operations, contacts without a primary company are attached to a default ‘Unassigned Accounts’ record or a fallback mapping rule using an external ID. For contacts tied to multiple companies, we create additional Account Contact Relation records after the primary AccountId is assigned.

Followup CRM

Contact

maps to

Salesforce Sales Cloud

Lead

1:many
Fully supported

If Followup CRM holds both unconverted prospects and existing customers within the same contacts table, we segment them using a status field or tag. Contacts marked as prospects with no closed‑won project are routed to Salesforce Lead, preserving their source and activity history. Conversely, contacts that have an active, won, or completed project are mapped to Salesforce Contact, allowing them to retain account relationships, open opportunities, and related tasks duplication.

Followup CRM

Company

maps to

Salesforce Sales Cloud

Account

1:1
Fully supported

Followup CRM companies map directly to Salesforce Accounts on a one‑to‑one basis. When a company has sub‑companies in Followup CRM, the hierarchy translates to the ParentId field on the Salesforce Account, preserving the structure. For contacts associated with multiple companies, we assign one primary AccountId as the main relationship and create Account Contact Relation records for each secondary company, ensuring all affiliations are retained without duplicating the contact.

Followup CRM

Project

maps to

Salesforce Sales Cloud

Opportunity

1:1
Fully supported

Followup CRM projects serve as the deal‑tracking entity and map to Salesforce Opportunities. The project name becomes the Opportunity Name, the project amount populates Opportunity Amount, and the project’s close date maps to CloseDate. Pipeline or status in Followup CRM determines Opportunity Stage via a value‑mapping table that aligns each Followup CRM status with the corresponding Salesforce stage. Probability and record type values are mapped to preserve the deal lifecycle.

Followup CRM

Project Milestone

maps to

Salesforce Sales Cloud

Task / Custom Fields on Opportunity

1:1
Fully supported

Followup CRM milestones have no native counterpart in Salesforce, so we adopt a dual‑track migration strategy. Each milestone becomes a Salesforce Task linked to the parent Opportunity via WhatId, preserving milestone history. In addition, we create custom fields on the Opportunity—such as Milestone_1_Name__c, Milestone_1_Date__c, and subsequent numbered fields—for at‑a‑glance visibility without opening the related task list. This approach keeps milestone context accessible while respecting Salesforce’s object model.

Followup CRM

Goal

maps to

Salesforce Sales Cloud

Custom Fields on Opportunity

1:1
Fully supported

Followup CRM goals—such as bid‑volume targets, revenue targets, or other performance metrics—have no direct Salesforce counterpart. We preserve these values by creating custom fields on the Opportunity object: Goal_Type__c (a pick‑list) holds the goal name, and Target_Amount__c (currency or number) stores the numeric target. This mapping keeps reporting continuity after cutover, allowing sales teams to compare historical goal performance against actual Opportunity results within Salesforce dashboards and reports.

Followup CRM

Task

maps to

Salesforce Sales Cloud

Task

1:1
Fully supported

Followup CRM tasks map one‑to‑one to Salesforce Tasks, preserving the core task details. The Subject field copies directly, while Status, Priority, and Due Date transfer unchanged. The related entity—whether a Contact, Company, or Project—maps to the appropriate WhoId or WhatId, ensuring task context stays linked to the originating record.

Followup CRM

Note

maps to

Salesforce Sales Cloud

Note

1:1
Fully supported

Followup CRM notes are migrated to Salesforce’s modern Notes object, not the legacy Note entity. During the migration, rich‑text formatting—including bold, bullet lists, hyperlinks, and embedded images—is preserved so the content looks the same in Salesforce as it did in Followup CRM. Each note is attached to its parent record (Contact, Account, or Opportunity) using the ParentId lookup, ensuring that note context is visible when viewing the related Salesforce record.

Followup CRM

Attachment / File

maps to

Salesforce Sales Cloud

ContentDocument / ContentVersion

1:1
Fully supported

Followup CRM file attachments are uploaded to Salesforce using the ContentDocument/ContentVersion model. Each file is linked to its parent record (Contact, Account, Opportunity, etc.) via a ContentDocumentLink entry. Salesforce enforces a 25 MB per‑file size limit; any attachment exceeding this threshold is flagged in the audit and reported to your admin for a decision—whether to split the file, store it externally with a reference URL, or exclude it from migration.

Followup CRM

User / Owner

maps to

Salesforce Sales Cloud

User

1:1
Fully supported

Followup CRM users are matched to Salesforce Users by email address. Unmatched owners are flagged before migration — your team either invites them to Salesforce first or assigns their records to a fallback owner. No record lands in Salesforce without a resolved OwnerId.

Followup CRM

Custom Fields (Project)

maps to

Salesforce Sales Cloud

Custom Fields (__c)

1:1
Fully supported

Followup CRM custom properties on projects are translated into Salesforce custom fields on the Opportunity object. We assign the __c suffix to each API name, select the appropriate field type (text, pick‑list, number, date, etc.), and map the original values so they appear in Salesforce as they did in Followup CRM. During the migration run, data loads populate these custom fields automatically, preserving historical project metadata for reporting and validation.

Followup CRM

Custom Fields (Contact)

maps to

Salesforce Sales Cloud

Custom Fields (__c)

1:1
Fully supported

Followup CRM custom properties defined on contacts become Salesforce custom fields on the Contact object. We add the __c suffix to the API name, set the correct field type (text, number, date, pick‑list, etc.), and load the original values during migration. For pick‑list fields, each Followup CRM option maps to the matching Salesforce pick‑list value, preserving dropdown selections and avoiding validation errors.

Followup CRM

Workflow / Automation

maps to

Salesforce Sales Cloud

None (export for rebuild)

1:1
Fully supported

Followup CRM workflows and automation rules cannot migrate to Salesforce Flow. We export your workflow definitions as a structured document (trigger events, conditions, actions) that your Salesforce admin can use as a rebuild reference in Flow Builder or Process Builder.

Gotchas + challenges

What specifically takes care here

Platform-specific issues from each side, plus the pair-specific challenges that don't show up on either platform's page on its own.

Followup CRM logo

Followup CRM gotchas

High

No documented API or bulk export endpoint

Medium

Duplicate follow-up artifacts in contact records

Medium

Annual contract pricing creates migration timing pressure

Low

Custom fields require explicit field-level mapping

Salesforce Sales Cloud logo

Salesforce Sales Cloud gotchas

High

Workflow Rules and Process Builder are retired

High

Bulk API batch quota exhaustion during large imports

Medium

Storage overage billing is non-obvious

Medium

Account-Contact many-to-many relationship mapping

Low

Territory and team member import ordering dependencies

Pair-specific challenges

  • Project milestones require dual-track mapping to preserve milestone history

    Followup CRM milestones are a sub-object on projects with their own status and due dates. Salesforce has no native milestone equivalent on Opportunities. We solve this by creating Salesforce Tasks linked to the Opportunity via WhatId for full history, while also creating custom fields (Milestone_Name__c, Milestone_Date__c) on the Opportunity for at-a-glance visibility. This dual-track approach ensures milestone context survives in Salesforce without requiring admins to open related lists to see project phase history.

  • Workflow and automation rules do not migrate to Salesforce Flow

    Followup CRM workflows that trigger follow-up tasks, email sequences, or status changes have no equivalent in Salesforce that can be imported. Salesforce Flow is a separate automation engine requiring manual rebuild by your admin. FlitStack AI exports your Followup CRM workflow definitions as a structured document listing trigger events, conditions, and actions — this becomes the rebuild specification for Flow Builder. Budget time and admin resources for this rebuild phase before go-live.

  • Owner resolution by email can leave records unassigned if users don't exist in Salesforce

    Followup CRM owner IDs map to Salesforce User records via email matching. If a Followup CRM user has left the company or never had a Salesforce license, their records have no valid OwnerId in Salesforce. We flag all unmatched owners before migration and require your admin to define a fallback owner (typically a admin user or queue). Records assigned to a fallback owner can be re-assigned manually after migration once Salesforce users are confirmed.

  • Followup CRM custom fields require Salesforce field creation before migration

    Followup CRM allows custom properties on contacts, companies, and projects without requiring a separate setup step. Salesforce requires admin creation of custom fields before data can load into them. We audit your Followup CRM custom field inventory during planning, generate the Salesforce field creation manifest (API name, field type, pick-list values), and your admin creates those fields in the target org before the migration run. This is a pre-requisite step that adds 1–3 days to the timeline depending on custom field count.

  • Large file attachments exceed Salesforce's 25MB per-file limit

    Followup CRM attachments and files are re-uploaded to Salesforce via the ContentDocument/ContentVersion model. Salesforce enforces a 25 MB per‑file size limit, which is checked during the pre‑migration audit. Any file that exceeds this threshold is flagged and reported in the migration manifest. Your admin can then choose to split the file into smaller chunks, store it in an external repository and insert a URL reference on the related Salesforce record, or retain the file in Followup CRM with a note that it cannot be migrated through the standard Files object. This decision is recorded before the migration run to prevent processing delays.

Migration approach

Six steps for a successful Followup CRM to Salesforce Sales Cloud data migration

  1. Audit Followup CRM schema and custom field inventory

    FlitStack AI inventories all objects, fields, and relationships in your Followup CRM account. We document standard fields, custom properties, pipeline configurations, milestone structures, and workflow definitions. This audit generates the field mapping manifest and identifies custom fields that need Salesforce __c field creation before migration. We also count records per object to scope the migration timeline and identify any large-file attachments that exceed Salesforce's 25MB limit.

  2. Create Salesforce custom fields from the field creation manifest

    Your Salesforce admin creates the custom fields identified in the audit — using the manifest FlitStack AI delivers with API names, field types, pick-list values, and field-level security settings. We recommend creating these fields in a Salesforce sandbox first to validate layout placement and field-level security before production. This step is a prerequisite; no migration run can begin until custom fields exist in the target org.

  3. Resolve owners by email match and define fallback rules

    FlitStack AI queries your Salesforce User table and matches Followup CRM owners by email address. Unmatched owners are flagged in a resolution report with the count of records affected by each unmatched user. Your admin either invites those users to Salesforce before migration or assigns them to a fallback owner. No record migrates without a resolved OwnerId — this prevents orphaned records in Salesforce after cutover.

  4. Run sample migration with field-level diff

    A representative slice of records — typically 100–500 spanning contacts, companies, projects, tasks, and notes — migrates into Salesforce first. We generate a field-level diff comparing source values against destination field values, including custom field populations and milestone transformations. You review the diff and approve before the full migration run commits. This validation step catches mapping errors, value-mapping gaps, and owner resolution issues before large record volumes are affected.

  5. Execute full migration with delta-pickup window

    The full migration runs in sequence: Accounts first (required for Contact lookups), then Contacts and Leads, then Opportunities with milestone-to-task transformation and custom field populations, then Tasks and Notes. A delta-pickup window opens at migration start — typically 24–48 hours — capturing any records created or modified in Followup CRM during the cutover. After delta pickup, FlitStack AI reconciles record counts between source and destination and generates an audit log. One-click rollback is available if reconciliation reveals data integrity issues.

  6. Deliver workflow export and post-migration handoff package

    FlitStack AI exports Followup CRM workflow definitions as a structured rebuild reference document — listing trigger object, conditions, actions, and sequencing — formatted for your Salesforce admin to implement in Flow Builder. The handoff package includes the full migration audit log, field-level diff from the sample run, delta records report, and owner resolution summary. Post-migration support is available for reconciliation questions during the first 7 days after go-live.

Platform deep dives

Context on both ends of the pair

Followup CRM logo

Followup CRM

Source

Strengths

  • Intuitive drag-and-drop contact and field configuration requiring no developer involvement.
  • Built-in bid volume tracking and quotas aligned with construction sales workflows.
  • Responsive customer support praised across G2 review community.
  • Custom reporting exports from Project Pages including bid-to Excel formats.
  • Goals and team performance tracking features built into the home page dashboard.

Weaknesses

  • No publicly documented API makes programmatic migration difficult without vendor cooperation.
  • Annual contract requirement at ~$4500/yr for 5 users locks in spend before full validation.
  • Known duplicate follow-up bug creates dirty data requiring manual cleanup before migration.
  • Limited integrations beyond Procore make ecosystem connectivity a constraint for some construction firms.
Salesforce Sales Cloud logo

Salesforce Sales Cloud

Destination

Strengths

  • Largest enterprise app ecosystem in CRM with 5,000+ AppExchange integrations covering nearly every vertical workflow.
  • Native Einstein AI delivers lead scoring, opportunity insights, and predictive forecasting without a third-party layer.
  • Advanced territory management, multi-currency, and flexible forecasting satisfy complex B2B revenue structures.
  • Deep platform extensibility: Custom Objects, Apex, Flow, and the Metadata API allow full schema customization.
  • Well-documented REST API, Bulk API, and Composite API with published rate limits for programmatic migration.

Weaknesses

  • Pricing model is layered and opaque in practice: per-seat fees plus storage overages, add-on subscriptions, and annual uplifts compound to 30–40% above sticker price.
  • Workflow Rules and Process Builder are deprecated, forcing all orgs onto Salesforce Flow — a migration task that catches many teams by surprise.
  • Steep administrative complexity: meaningful configuration requires a dedicated Salesforce admin or consultant.
  • API rate limits are edition-gated (100k/day base for Enterprise) and easily exhausted by large historical imports without throttling.
  • Data export is exportable via Data Loader but preserving relationship integrity across 30+ objects requires careful ETL sequencing.

Complexity grading

How hard is this migration?

Standard CRM migration. 2 of 8 objects need a mapping; the rest are 1:1.

B

Overall complexity

Standard migration

Derived from compatibility, mapping clarity, API constraints, and data volume across Followup CRM and Salesforce Sales Cloud.

  • Object compatibility

    B

    2 of 8 objects need a mapping; the rest are 1:1.

  • Field mapping clarity

    C

    Field mapping is derived from defaults — final spec confirmed during the sample migration.

  • Timeline complexity

    B

    8-object category — typical timelines run 2–7 days end-to-end.

  • API constraints

    B

    Followup CRM: Not publicly documented.

  • Data volume sensitivity

    B

    Followup CRM doesn't expose a bulk API — REST + parallelization used for high-volume runs.

Estimator

Estimate your Followup CRM to Salesforce Sales Cloud migration cost

Rule-based pricing — no per-record fees, no manual quotes. Migrations over 2M records are scoped individually.

Step 1

What are you migrating?

Pick a category, then your source and destination platforms.

Category

FAQ

Frequently asked questions about Followup CRM to Salesforce Sales Cloud data migrations

Answers to the questions buyers ask most during Followup CRM to Salesforce Sales Cloud migration scoping. Not seeing yours? Book a call.

Can't find your answer?

Walk through your Followup CRM to Salesforce Sales Cloud migration with a real engineer — 30 minutes, free, written quote within 24 hours.

Book a free 30 minute consultation

Most Followup CRM to Salesforce migrations complete in 48–72 hours for under 50,000 total records. Larger setups with 200,000+ records or complex project-to-opportunity transformations extend to 5–10 days. The custom field creation step (Step 2 of our approach) is a prerequisite that adds 1–3 days if your Followup CRM has many custom properties. The sample migration and approval step (Step 4) is the longest planning phase for complex custom field setups.

Adjacent paths

Related migrations to explore

Ready when you are

Move from Followup CRM.
Land in Salesforce Sales Cloud, intact.

Tell us record counts and timeline. We'll come back with a written quote inside 1 business day — no commitment, no sales pitch.

Accuracy guarantee Rollback included Quote in 1 business day