CRM migration
Field-level mapping, validation, and rollback between Signpost and Salesforce Sales Cloud. We move data and schema; workflows are rebuilt natively in Salesforce Sales Cloud.
Signpost
Source
Salesforce Sales Cloud
Destination
Compatibility
9 of 12
objects map 1:1 between Signpost and Salesforce Sales Cloud.
Complexity
BStandard
Timeline
3-5 weeks
Overview
Moving from Signpost to Salesforce Sales Cloud is a migration from a local-service AI assistant platform to an enterprise-grade CRM with fundamentally different data architecture. Signpost organizes around businesses and their customers with an AI layer (Mia) that triggers review requests, SMS campaigns, and follow-up sequences. Salesforce uses a standard Account-Contact-Opportunity model with no native review management object and no AI assistant equivalent to Mia. We map Signpost's Business records to Salesforce Accounts, preserve review solicitation status as custom Contact fields, and sequence Appointments into Salesforce Tasks or Events. Mia's automated behavioral triggers and Signpost's Shared Inbox message history are not exportable; we document both in detail at scoping and provide structured rebuild templates for the customer's admin. We use Salesforce's Bulk API 2.0 for high-volume record loads with rate-limit handling and parent-lookup resolution so that Contact records land with their correct Account references from the first batch.
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 Signpost 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.
Signpost
Contact
Salesforce Sales Cloud
Lead or Contact (split required)
1:manySignpost Contact records with an associated Business map to Salesforce Contact tied to an Account. Signpost contacts that represent unqualified prospects (no closed deal, no appointment completed) may map to Salesforce Lead at the customer's direction. We preserve the original Signpost contact ID in a custom field signpost_contact_id__c and carry forward any custom properties (preferred contact method, referral source, customer tier) as typed Salesforce custom fields. Owner assignment resolves via email match to Salesforce User.
Signpost
Business
Salesforce Sales Cloud
Account
1:1Signpost's Business records map to Salesforce Account. For multi-location customers, Signpost's Business hierarchy (parent Business with child locations) maps to Salesforce Account hierarchy with ParentAccountId resolved after the root Account is created. Business address maps to Account BillingAddress; business phone maps to Account Phone. Signpost Business name becomes Account Name.
Signpost
Campaign
Salesforce Sales Cloud
Campaign
1:1Signpost Campaigns (email and SMS) migrate to Salesforce Campaign with Campaign Name, Type (Email or SMS), Status, and StartDate/EndDate preserved. Campaign content (body copy, subject lines) migrates as Salesforce Campaign Description. Contact membership in Signpost Campaign maps to Salesforce CampaignMember with Status mapped (subscribed, bounced, unsubscribed) to CampaignMember Status values. Mia's automated trigger logic (send timing, behavioral conditions) does not migrate and is documented separately for Flow rebuild.
Signpost
Review Request
Salesforce Sales Cloud
Custom fields on Contact
lossySignpost's review solicitation records (request date, status, customer response, Mia flag) have no native Salesforce equivalent. We migrate the most recent review request status and response as two custom fields on Contact: signpost_last_review_request__c (date) and signpost_review_status__c (text: requested, positive, flagged, responded). Full solicitation history across all time requires flattening into a Signpost_Review_History__c custom object with one row per request, which we recommend for customers with high review volumes needing audit trails.
Signpost
Appointment
Salesforce Sales Cloud
Task or Event
lossySignpost Appointment records (scheduling data, customer association, status, appointment type) map to Salesforce Task or Event depending on the customer's calendar strategy. Appointments with a specific start and end time map to Salesforce Event with WhoId (Contact) and WhatId (Account or Opportunity) populated. Appointments stored as task-like items map to Salesforce Task with ActivityDate. We flag any custom appointment types (service type, technician assignment) for custom field mapping during scoping.
Signpost
Payment
Salesforce Sales Cloud
Custom object or OpportunityLineItem
1:1Signpost Payments (a separate product tier) tracks payment status against invoices or estimates. Payment records migrate to a Payments__c custom object with fields for amount, status, date, and related Contact and Business lookups. If the customer uses Signpost's invoice-to-payment flow and Salesforce Opportunity is in scope, payment records attach as OpportunityLineItem entries tied to the relevant Opportunity. We note during scoping whether Signpost Payments is in use and whether Opportunity-level payment tracking is desired.
Signpost
Custom Properties
Salesforce Sales Cloud
Custom fields on Contact, Account, Campaign
1:1Signpost custom fields on Contacts and Businesses export as typed data. We map these to Salesforce custom fields using type-equivalent Salesforce field types: text fields to Text(255), numbers to Number, dates to Date, checkboxes to Checkbox, and multi-select values to Multi-Select Picklist. Any custom property that has no equivalent Salesforce type is flagged for customer review and mapped to a Long Text Area field as a fallback. Custom field API names are preserved with a signpost_ prefix during migration for audit traceability.
Signpost
Tag and Segment
Salesforce Sales Cloud
Campaign or Multi-Select Picklist
1:1Signpost contact segments and tags used for campaign targeting migrate as Salesforce Campaign membership (for active campaign segments) or as multi-select picklist values on the Contact record (for behavioral tags such as service type, region, or customer tier). We flag any segment logic that relied on Mia's behavioral scoring for customer review, as that scoring model cannot be reconstructed without manual definition.
Signpost
Loyalty and Referral Program Enrollment
Salesforce Sales Cloud
Custom object or Custom fields
1:1Referral program enrollment and loyalty point balances migrate as custom fields on Contact (enrollment status, referral code, loyalty tier) or as a Referral__c custom object with one record per enrollment and a lookup to the referring Contact. Program rules (point values, reward tiers, expiry logic) are not exportable and require manual setup in Salesforce or a loyalty app from the AppExchange.
Signpost
User and Owner
Salesforce Sales Cloud
User
1:1Signpost user accounts and owner assignments on records map to Salesforce User by email match. Inactive Signpost users who are no longer with the company are held in a reconciliation queue; the customer's Salesforce admin decides whether to provision inactive placeholder Users or skip them entirely. Active users are provisioned against the Salesforce org before Contact and Account migration begins so that OwnerId references are valid at insert time.
Signpost
Automated Workflows (Mia)
Salesforce Sales Cloud
No equivalent
1:1Mia-driven workflow automations execute based on contact behavioral triggers, review request responses, and campaign engagement signals using proprietary scoring logic. These automations are not accessible via any documented export endpoint. We do not migrate them. At scoping, we collect a written inventory of every active Mia rule from the customer (trigger, conditions, actions, timing) and deliver a structured Workflow Audit Form that maps each rule to a recommended Salesforce Flow equivalent. The customer's admin or a Salesforce partner rebuilds the automation layer post-migration.
Signpost
Shared Inbox Messages
Salesforce Sales Cloud
No equivalent
1:1Signpost's shared inbox stores two-way customer conversations that are not accessible via export. Contact records, campaign history, and appointment data migrate cleanly. The message threads themselves are not recoverable. We flag this at the start of scoping and recommend customers screenshot or manually archive any critical threads before migration cutover. After cutover, ongoing message capture continues through Salesforce's native email integrations (Lightning for Gmail, Lightning for Outlook, Email-to-Case).
| Signpost | Salesforce Sales Cloud | Compatibility | |
|---|---|---|---|
| Contact | Lead or Contact (split required)1:many | Fully supported | |
| Business | Account1:1 | Fully supported | |
| Campaign | Campaign1:1 | Fully supported | |
| Review Request | Custom fields on Contactlossy | Fully supported | |
| Appointment | Task or Eventlossy | Fully supported | |
| Payment | Custom object or OpportunityLineItem1:1 | Fully supported | |
| Custom Properties | Custom fields on Contact, Account, Campaign1:1 | Mapping required | |
| Tag and Segment | Campaign or Multi-Select Picklist1:1 | Fully supported | |
| Loyalty and Referral Program Enrollment | Custom object or Custom fields1:1 | Fully supported | |
| User and Owner | User1:1 | Fully supported | |
| Automated Workflows (Mia) | No equivalent1:1 | Fully supported | |
| Shared Inbox Messages | No equivalent1:1 | Not 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.
Signpost gotchas
Mia workflow automations are not exportable
Shared inbox message history is not exported
Slow contact list performance indicates export risk
Review request history requires custom property reconstruction
Billing model and contract terms are opaque
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
Discovery and export feasibility assessment
We audit the Signpost portal across active campaigns, Mia automation rules, contact list size, Business record count, appointment volume, review request history, and custom property definitions. We run a test export batch of 500 records to measure API response times and identify timeout patterns. For customers with more than 10,000 contacts, we agree on a segmentation strategy (by creation date or tag) before committing to a full export run. The discovery output is a written migration scope with record counts per object, a Mia automation inventory form, and a custom property catalog with proposed Salesforce field types.
Account hierarchy design and Salesforce schema provisioning
We design the Salesforce Account hierarchy based on the customer's Signpost Business structure. For single-location customers, each Signpost Business maps to a single Account. For multi-location or franchise customers, we design a parent Account with child Accounts for each location before any Contact records are imported. We provision custom fields (signpost_* prefix) for review solicitation status, custom properties from Signpost, and any referral or loyalty data. Schema is deployed into a Salesforce Sandbox for validation before production migration begins.
Sandbox migration and reconciliation
We run a full migration into a Salesforce Sandbox using production-like data volume. The customer's admin reviews record counts (Accounts in, Contacts in, Campaigns in, Appointments in), spot-checks 25-50 records against the Signpost source for field-level accuracy, and validates that Account-Contact lookups are correctly resolved. Any mapping corrections, custom field type adjustments, or hierarchy changes happen in Sandbox before production migration begins. This step is mandatory for all migrations with more than 2,000 records.
Owner reconciliation and User provisioning
We extract every distinct owner referenced on Signpost Contact, Business, Campaign, and Appointment records and match by email against the Salesforce destination org's User table. Any Signpost owner without a matching Salesforce User goes to a reconciliation queue. The customer's Salesforce admin provisions missing Users (active or inactive depending on whether the original user is still employed). OwnerId references must be valid before record insert because Salesforce rejects records with invalid OwnerId values on standard objects.
Production migration in dependency order
We run production migration in record-dependency order: Accounts (from Signpost Businesses, with parent Account hierarchy resolved), Contacts (with AccountId and OwnerId resolved), Campaigns (with Contact membership via CampaignMember), Appointments (as Task or Event with WhoId resolved), review solicitation history (as custom fields or Signpost_Review_History__c custom object), loyalty and referral data (as custom fields or custom object), and Signpost custom properties (as typed Salesforce custom fields). Mia automations, Shared Inbox messages, and automated workflow rules are excluded and documented for manual rebuild. Each phase emits a row-count reconciliation report before the next phase begins.
Cutover, delta migration, and automation rebuild handoff
We freeze Signpost writes during 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 Mia automation inventory and Workflow Audit Form to the customer's admin team for Salesforce Flow rebuild. We support a one-week hypercare window where we resolve reconciliation issues. We do not rebuild Mia automations or configure Salesforce Flow inside the migration scope; that is a separate engagement for the customer's admin or a Salesforce partner.
Platform deep dives
Signpost
Source
Strengths
Weaknesses
Salesforce Sales Cloud
Destination
Strengths
Weaknesses
Complexity grading
Standard CRM migration. 1 of 8 objects need a mapping; the rest are 1:1.
Overall complexity
Standard migration
Derived from compatibility, mapping clarity, API constraints, and data volume across Signpost and Salesforce Sales Cloud.
Object compatibility
1 of 8 objects need a mapping; the rest are 1:1.
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
Signpost: Not publicly documented.
Data volume sensitivity
Signpost 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 Signpost to Salesforce Sales Cloud migration scoping. Not seeing yours? Book a call.
Walk through your Signpost 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 Signpost
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.