Data ManagementMachine Learning

Salesforce Data Migration Best Practices

Conducting a successful Salesforce data migration is one of the most challenging processes you will have to perform as a Salesforce professional. The need for data migration arises for many reasons. Most common is when organizations merge or acquire others, which may require you to merge Salesforce databases or perform a full migration from another CRM system. Other scenarios range from transitions to Salesforce Lightning (from Classic) to rare cases where a full data cleansing is warranted. Regardless of the reason, there is a good chance that you will be confronted with this task at some point in your career. 

In this article, we will focus on the two most popular reasons for migration: merging two Salesforce orgs and switching to Salesforce from another CRM. We will review best practices for conducting such migrations to ensure that everything goes as smoothly as possible.  

Migrating Data from One Salesforce Organization to Another

If you have tuned into a business news network recently, you have likely heard about one company buying another. For organizations using Salesforce, a merger or an acquisition will include a need to migrate data from one Salesforce instance to another. The good news is that Salesforce offers functionality to conveniently conduct such a migration called Salesforce to Salesforce. There is a four-step process you will need to follow:  

1. Enable Salesforce to Salesforce (S2S) 

The first thing you will need to do is configure your Salesforce to accept S2S connections. To do so, follow these steps:  

  1. Enter “Salesforce to Salesforce Settings” in Salesforce’s Quick Find box. 
  2. Select “Salesforce to Salesforce Settings.” 
  3. Click “Edit.” 
  4. Select “Enable.” 
  5. Click “Save.” 

Please note that S2S needs to be enabled by both organizations before you can start sharing. When S2S is enabled, a new tab will become available in Salesforce. You will need this tab for the next section.  

2. Create the S2S Connection  

Before you create the S2S connection, both organizations will need to add each other as contacts. This is a very straightforward process. Simply click on the “Contacts” tab and then “New Contact”. Once this part is done you will need to:  

  1. Click on the “Customize My Tabs” button in the Salesforce interface and add “Connections” to your available tabs. 
  2. Go to the “Connections” tab and click on “New Connection.” 
  3. To send an invitation to your new contact, select the correct organization under Contact. Next, select the Connection Owner (i.e., your organization) and the option Account or Template. 
  4. Send the invitation. 

3. Publish Objects and Fields  

Once the S2S connection has been established, you will need to publish the objects and fields you would like to share. This can be done by following the steps below:  

  1. Click on the “Connections” tab in Salesforce. 
  2. Select the relevant S2S connection. 
  3. In the Published Objects related list, click on Publish/Unpublish. 
  4. Select the objects you wish to publish and click “Save.” 

Please note that only certain Salesforce objects can be published through S2S connections. These objects include:  

  • Accounts 
  • Attachments (unencrypted) 
  • Cases 
  • Case Comments 
  • Contacts 
  • Leads 
  • Opportunities 
  • Opportunity Products 
  • Products 
  • Tasks 
  • Custom Objects

When a Salesforce object has been published, the other organization will be notified by email. If you would like more control over which Salesforce objects fields will be published, just follow the steps below:  

  1. Click on the Connection’s tab in Salesforce. 
  2. Select the relevant S2S connection. 
  3. In the Published Objects related list, click “Edit” next to the published object. 
  4. Select and/or deselect the Salesforce fields that you want to publish. You can only publish fields that you have permission to edit. 
  5. Click “Save.” 

Without any additional customization on you part, Salesforce will publish the following fields by default:  

  • Account: Account Name, Last Name 
  • Attachment: Body, Content Type, File Name 
  • Case: Subject 
  • Case Comment: Body, Published 
  • Contact: Last Name 
  • Lead: Last Name, Company 
  • Opportunity: Name, Closed Date, Stage 
  • Opportunity Product: Quantity, Sales Price 
  • Product: Product Name 
  • Task: Subject 
  • Custom Object: Name 

4. Subscribe to Objects and Fields 

Since S2S connections are a two-way street, you can receive data from the other Salesforce instance, as well. Follow these steps to subscribe to Salesforce objects:  

  1. Click on the “Connections” tab in Salesforce. 
  2. Select the relevant S2S connection. 
  3. In the Subscribed Objects related list, click “Subscribe/Unsubscribe.” 
  4. To subscribe to an object, select the object within your Salesforce organization that you want to map to. 
  5. Click “Save.” 

Now that we know how to migrate data from one Salesforce organization to another, let’s shift to looking at how you would migrate data to Salesforce from another CRM.

Moving Data to Salesforce from Other CRM Platforms  

Migrating your data to Salesforce from another CRM is a bit more complicated. For starters, there is no convenient method to run these migrations from Salesforce (such as the S2S method we described above). Therefore, you will need to consider different factors when reviewing migration methods.  These include the amount of data that is to be imported, the complexity of source data, resource types, and the variation between Salesforce data model and data structure in the source CRM.  

Let’s look at a general overview of a migration project plan:  

1. Preparing for the Migration  

Preparing the system for data migration is very important. Be sure to devote enough time to avoid having to go back and redo some of the things that were done incorrectly or overlooked altogether. This includes identifying which data will be migrated and its source. Start by analyzing your system to determine the data structures, formats, dependencies between the CRM objects, and the workflows that already exist.  

2. Data Selection

Data selection includes determining the fields and the order in which they will be migrated. The order of Salesforce migration is contingent on the relationship and dependencies between objects. Load the users, accounts, and then the opportunities, in that order. 

3. Data Mapping  

In the data mapping stage, you will identify the database tables and then start the process of mapping source fields to Salesforce fields. Each source record should contain a unique identifier and any relationships to other records should use these identifiers. 

We always advise that at this stage you consider performing some type of data cleansing. Outdated and duplicate accounts should really be removed before starting the migration. Otherwise, you just end up with these problems in Salesforce.

4. Migration  

Finally, we get to the actual migration, which consists of the actual transfer of data from the source system into your Salesforce org. Keep in mind the considerations that we mentioned earlier when choosing the migration method.  

5. Quality Assurance 

Upon completion of the transfer, be sure to check the accuracy of your data. Take a close look at whether the format and the relationship between the data tables is accurately reflected in Salesforce.  

Data Cleansing is a Very Important Aspect of the Data Migration Strategy 

Data migration can be a very complex process. It is all too easy to get bogged down in the technical considerations and overlook the importance and value of data cleansing. You can be virtually assured that regardless of the source, data hygiene issues will exist and the more data you have, the more duplicates you can expect.  

DataGroomr can take the data cleansing burden off your shoulders. By using machine learning to do the heavy lifting, DataGroomr bypasses the need to create any complex rules or filters. Simply connect the app to your Salesforce and start deduping right away. This is what separates DataGroomr from other deduping apps on the AppExchange.  

Try DataGroomr for yourself today with our free trial.  

Steven Pogrebivsky

About Steven Pogrebivsky

Steve Pogrebivsky has founded multiple successful startups and is an expert in data and content management systems with over 25 years of experience. Previously, he co-founded and was the CEO of MetaVis Technologies, which built tools for Microsoft Office 365, Salesforce and other cloud-based information systems. MetaVis was acquired by Metalogix in 2015. Before MetaVis, Steve founded several other technology companies, including Stelex Corporation which provided compliance and technical solutions to FDA-regulated organizations.