CRM migration
Field-level mapping, validation, and rollback between Goals.com and Salesforce Sales Cloud. We move data and schema; workflows are rebuilt natively in Salesforce Sales Cloud.
Goals.com
Source
Salesforce Sales Cloud
Destination
Compatibility
8 of 12
objects map 1:1 between Goals.com and Salesforce Sales Cloud.
Complexity
BStandard
Timeline
4-6 weeks
Overview
Moving from Goals.com to Salesforce Sales Cloud is a migration that begins with data extraction challenges rather than data mapping challenges. Goals.com does not publish a public API, which means all source data must be extracted through manual exports or custom routines that work around the platform's presentation layer. We build those extraction routines first, then map Goals.com's flat Deal structure to Salesforce's Opportunity with stage and probability mapping, Goals.com's Sales Goals to a custom Goal object we pre-create in Salesforce, and Goals.com's Commission records to a custom Commission object or linked custom fields on the Opportunity. Active contest configurations, scoring rules, and leaderboard logic do not transfer; we export historical contest results and deliver a written contest schema template for rebuild in Salesforce. User accounts map to Salesforce Users resolved by email match, and team hierarchies map to Salesforce Public Groups or a custom team object depending on the customer's reporting structure. Workflows and automations do not exist in Goals.com at a level that migrates, so that rebuild scope is out of scope.
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 Goals.com 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.
Goals.com
Lead
Salesforce Sales Cloud
Lead
1:1Goals.com Leads map to Salesforce Lead as a direct 1:1 transfer. Goals.com lead generation, inquiry capture, filtering, grading, distribution, and qualification stages transfer as text values into a custom picklist field goals_lead_stage__c since Goals.com stage labels do not map to Salesforce standard Lead Status values. The customer's admin defines the Salesforce Lead Status mapping during scoping. Any lead scores from Goals.com's grading step migrate to a custom number field goals_lead_score__c.
Goals.com
Deal
Salesforce Sales Cloud
Opportunity
1:1Goals.com Deals map to Salesforce Opportunity. The Deal name, value, stage, owner assignment, and created date transfer directly. Goals.com's flat Deal structure means there is no Account or Contact parent relationship in Goals.com; we create the parent Account from the Deal's associated company name before Opportunity import, and link the Opportunity to a Contact resolved from Goals.com's lead or contact records. Stage names map to Salesforce StageName values, and the Goals.com pipeline assignment maps to a Salesforce Record Type.
Goals.com
Pipeline Stages
Salesforce Sales Cloud
Opportunity Stage
lossyGoals.com pipeline stages map to Salesforce Opportunity Stages. Each Goals.com stage gets a corresponding Salesforce StageName entry with probability values set to match Goals.com's stage weights. Stage sequence order is preserved. If Goals.com uses custom stage labels (Prospecting, Qualification, Proposal, Negotiation, Closed Won, Closed Lost), we configure Salesforce Sales Processes to match the exact sequence and labeling.
Goals.com
Sales Goals
Salesforce Sales Cloud
Custom Object: Sales Goal
lossyGoals.com Sales Goals have no direct Salesforce equivalent because Salesforce does not include a native goal-setting object. We pre-create a custom object goals_sales_goal__c with fields for goal type (call volume, email volume, revenue target), target value, start date, end date, owner reference, and linked opportunity or account. Goal progress percentages are recalculated post-import in Salesforce using a custom progress formula field or a Salesforce Flow that recomputes against actual Opportunity values. The customer chooses whether to display goals via a custom Lightning component or via Salesforce Revenue Intelligence if that add-on is licensed.
Goals.com
Commission
Salesforce Sales Cloud
Custom Object: Commission Record
lossyGoals.com commission records migrate to a custom object goals_commission__c linked to the Opportunity or User. Fields include commission amount, calculation basis, payout status, and payee reference. Goals.com's active commission calculation rules (percentages, tiers, accelerators) are not migratable because they are stored as platform logic rather than data records. We export the commission data (historical payouts, rep assignments, deal references) and deliver a written commission rule schema template that the customer's admin rebuilds in Salesforce using custom fields, Flow, or Salesforce Revenue Cloud.
Goals.com
User Account
Salesforce Sales Cloud
User
1:1Goals.com user accounts migrate to Salesforce User records resolved by email address match. Goals.com role assignments (manager vs rep) map to Salesforce Role in the role hierarchy or to a custom field goals_role_type__c if the Salesforce role hierarchy is not yet configured. Inactive Goals.com users migrate as inactive Salesforce Users to preserve historical owner assignments. Any Goals.com user without a corresponding Salesforce license goes to the reconciliation queue for the customer's admin to provision before record import resumes.
Goals.com
Team Management
Salesforce Sales Cloud
Public Group
lossyGoals.com team structures map to Salesforce Public Groups. We extract Goals.com team memberships and build Public Group membership during migration. If the customer needs team-level reporting beyond Public Group visibility (a custom team object for territory or division alignment), we create a goals_team__c custom object with team membership records linked to the User object. The customer chooses the team reporting model during scoping.
Goals.com
Activity Tracking
Salesforce Sales Cloud
Task and Event
1:1Goals.com notes, reminders, and customer interaction records map to Salesforce Task or Event depending on the record type. Notes migrate as Salesforce Note records linked via ContentDocumentLink to the parent Lead, Contact, Account, or Opportunity. Reminders and follow-up tasks migrate as Task records with Status, Priority, and ActivityDate preserved. Goals.com does not store a full audit trail of every system event; we migrate what is accessible through the export and flag any gaps in the historical timeline.
Goals.com
Sales Contest
Salesforce Sales Cloud
Historical Data + Template
1:1Goals.com active contest configurations, scoring rules, point allocations, and leaderboard logic are stored as platform rules rather than data records and do not migrate. We export historical contest results and performance data as records in a goals_contest_history__c custom object. We deliver a written contest schema template specifying the structure the customer's admin needs to rebuild in Salesforce (using a custom object, custom fields, and a leaderboard Lightning component or report). Active contest rules require manual rebuild post-migration.
Goals.com
Attachment
Salesforce Sales Cloud
ContentDocument
1:1Goals.com file attachments linked to Deals, Leads, or activities migrate as Salesforce ContentDocument records attached via ContentDocumentLink to the corresponding Lead, Contact, Account, or Opportunity. File names and any associated metadata transfer. Large binary attachments may require a separate file transfer step outside the standard API batch if size limits are encountered.
Goals.com
Company (Deal association)
Salesforce Sales Cloud
Account
1:1Goals.com Deals carry an associated company name that we promote to a Salesforce Account record before Opportunity import. The company name becomes the Account Name; any domain or address data from Goals.com maps to Account Website and Address fields. Account is created first so that the Opportunity AccountId reference is satisfied at import time. Dedupe is performed on Account Name.
Goals.com
Contact (Deal association)
Salesforce Sales Cloud
Contact
1:1Goals.com Lead or Contact records associated with a Deal resolve to Salesforce Contact after Account creation. The Contact's email, phone, title, and address fields map 1:1. Contact is created after Account so that AccountId is available for the Contact record. If Goals.com does not store a separate Contact record and only has Deal-level contact information, we create the Contact from the Deal contact details and attach it to the Account.
| Goals.com | Salesforce Sales Cloud | Compatibility | |
|---|---|---|---|
| Lead | Lead1:1 | Fully supported | |
| Deal | Opportunity1:1 | Fully supported | |
| Pipeline Stages | Opportunity Stagelossy | Fully supported | |
| Sales Goals | Custom Object: Sales Goallossy | Mapping required | |
| Commission | Custom Object: Commission Recordlossy | Fully supported | |
| User Account | User1:1 | Fully supported | |
| Team Management | Public Grouplossy | Fully supported | |
| Activity Tracking | Task and Event1:1 | Mapping required | |
| Sales Contest | Historical Data + Template1:1 | Fully supported | |
| Attachment | ContentDocument1:1 | Fully supported | |
| Company (Deal association) | Account1:1 | Fully supported | |
| Contact (Deal association) | Contact1: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.
Goals.com gotchas
No documented public API for data extraction
Flat objective hierarchy limits strategic data modeling
Notification redundancy not exportable
Contest and incentive logic not transferable
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
Data extraction strategy and Goals.com export build
Because Goals.com has no public API, we begin by analyzing the export capabilities available through the platform's UI, identifying all record types, fields, and attachments accessible for manual export. We build a custom extraction pipeline that reads Goals.com's data presentation layer and outputs structured CSV or JSON for each object. We run a record count reconciliation against Goals.com's visible totals and flag any fields or objects that cannot be extracted. This phase typically takes one to two weeks and must complete before any mapping or schema design begins.
Salesforce edition selection and custom schema design
We pair the extraction audit with a Salesforce edition review. Professional tier ($80/user) covers most migrations with custom goal and commission objects. Enterprise tier ($165/user) is required if the customer needs advanced Flow capabilities, multiple Sales Processes, or large data volumes exceeding Bulk API chunking thresholds. We design the custom schema in Salesforce: goals_sales_goal__c for Goals.com Sales Goals, goals_commission__c for commission records, goals_contest_history__c for historical contest data, and goals_lead_stage__c and goals_lead_score__c for Goals.com lead grading. Schema deploys to a Salesforce Sandbox first for validation.
Parent-record resolution and hierarchy reconstruction
Goals.com Deals carry no Account or Contact parent, so we reconstruct the hierarchy before Opportunity import. We extract every distinct company name from Goals.com Deals, create a Salesforce Account for each, then create or resolve a Contact for each Deal's contact details. This step is the critical path item for the migration; we cannot import Opportunities until AccountId references are available. We run this step in the Salesforce Sandbox first and deliver a parent-resolution report showing which Deals had no resolvable Contact data so the customer's admin can address gaps.
User provisioning and owner reconciliation
We extract every distinct Goals.com user referenced on Deals, Leads, Commissions, and Activities and match by email against the Salesforce destination org's User table. Managers in Goals.com map to Salesforce Users with a Manager role assignment; reps map to standard User records. Any Goals.com user without a matching Salesforce User goes to a reconciliation queue for the customer's admin to provision. Inactive Goals.com users migrate as inactive Salesforce Users to preserve historical owner assignments. Migration cannot proceed past Opportunity import until all OwnerId references are resolved.
Production migration in dependency order
We run production migration in record-dependency order: Custom Schema (Salesforce Metadata API deployment), Accounts (from Goals.com Deal company names), Contacts (resolved from Goals.com Deal contact data or created from scratch), Leads, Sales Goals (goals_sales_goal__c custom object), Commission records (goals_commission__c), Opportunities (with AccountId and OwnerId resolved), Activities (Tasks, Events, Notes via Bulk API 2.0 with chunking and parent-record resolution), Contest history (goals_contest_history__c), and Attachments (ContentDocument and ContentDocumentLink). Each phase emits a row-count reconciliation report before the next phase begins.
Cutover, validation, and rebuild handoff
We freeze Goals.com write access 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 commission rule schema template, contest rebuild template, notification preference checklist, and the full Goals.com automation inventory (if any Power Automate or Zapier integrations were configured). We support a one-week hypercare window for reconciliation issues. We do not rebuild commission calculation logic, contest scoring rules, or notification preferences inside the migration scope; those are separate configuration tasks for the customer's admin.
Platform deep dives
Goals.com
Source
Strengths
Weaknesses
Salesforce Sales Cloud
Destination
Strengths
Weaknesses
Complexity grading
Standard CRM migration. 3 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 Goals.com and Salesforce Sales Cloud.
Object compatibility
3 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
Goals.com: Not publicly documented.
Data volume sensitivity
Goals.com 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 Goals.com to Salesforce Sales Cloud migration scoping. Not seeing yours? Book a call.
Walk through your Goals.com 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 Goals.com
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.