Google Sheets to Salesforce Migration Guide (Step-by-Step CRM Data Migration)

Google Sheets to Salesforce CRM migration illustration






Moving from Google Sheets to Salesforce

If you’re planning on elevating your CRM game from spreadsheets to Salesforce, you’ll need a solid CRM migration plan to ensure nothing gets left behind. Many companies start with a Google Sheets CRM before moving into a full platform like Salesforce. With the right spreadsheet CRM automation, teams can automate follow ups, track deals, and manage contacts without purchasing expensive CRM licenses right away. The move from spreadsheet to CRM is a drastic one as the data structure, while similar aesthetically, is vastly different behind the scenes. Spreadsheets are flat and the rows that comprise them generally do not carry a relationship with other rows within the workbook. CRMs like Salesforce, HubSpot and others use a relational database model.

This involves using multiple tables to relate rows of data. Knowing this, you’ll want to structure your spreadsheet accordingly to ensure a smooth import. In this article, I’ll step you through how to successfully get your data out of Sheets into Salesforce.

Structure Your Spreadsheet

Your spreadsheet will need to “speak” Salesforce before smashing the import button. This is where mapping becomes crucial. You’ll want to take your custom column names and point them to the right area.

Pro tip: Salesforce uses objects, while your spreadsheet might call them tabs or sheets. They function the same way.

Your spreadsheet may look something like this.

Name Email Phone Company Deal Status Notes

This is ok in Sheets, but in Salesforce, this data will be split into multiple objects. For example, Name, Email, Phone will reside in the Contact object. Notes will go into the Comments object and so will Company.

A single sheet within a workbook could fall into these separate Objects in Salesforce:

  • Leads
  • Accounts
  • Contacts
  • Opportunities
  • Activities

As such, the first decision you need to make is what each sheet in your workbook represents. In most cases, the easiest path is importing everything into Leads first, then converting those leads into Accounts, Contacts, and Opportunities within Salesforce.

Clean Your Data

I’ve written at length about the importance of cleaning CRM data regularly. And, I’ve published a free CRM data cleaning tool for you to use prior to your import. Before any migration, I always recommend performing proper CRM data cleaning. As with any CRM migration, garbage in, garbage out. Before importing anything into Salesforce, clean your spreadsheet.

Here are the most common issues I see when people migrate from Google Sheets:

  • Duplicate data
  • Full name in one column
  • Non-standard phone numbers (123.444.2322, (123) -491-0092
  • Inconsistent spelling
  • Blank data from required fields
  • Merged cells
  • Formulas instead of values
  • Notes spread across multiple columns
  • Multiple contacts on one row

Fix these before exporting, or you’ll just end up with expensive messy data.

Import Order Matters Most

The order in which you import is one of the most important factors of the whole process. To get your records to relate to one another, you’ll need their record Id. This unique Id can only be obtained from Salesforce after a record is created. Because of this, parent records generally need to be imported before their children.

Import order varies from org to org but a general rule of them is to import the people who create the records first. Then, the records that house customers (leads, companies, contacts). Finally, import the records that track activity (notes, opportunities, cases, etc.).

Here’s what a typical import order looks like.

  • Users
  • Accounts
  • Contacts
  • Leads (if using leads)
  • Opportunities
  • Activities (Tasks and Events)
  • Notes and Attachments
  • Cases
  • Custom Objects

Understand Salesforce Objects Before Importing

It’s important to learn the landscape of the environment you’ll be working in. Salesforce, like many applications, uses Objects to house various types of data. Each one of these objects serves a specific purpose that you’ll want to fully understand before adding a single kilobyte of data to the new system.

Object Purpose
LeadsPotential customers
AccountsCompanies
ContactsPeople
OpportunitiesDeals
ActivitiesCalls, emails, tasks

Simplier migrations from spreadsheets follow this flow:

  • Import spreadsheet into Leads
  • Convert Leads into Accounts and Contacts
  • Create Opportunities from converted Leads
  • Begin using Salesforce normally

This approach preserves relationships and avoids import headaches.

Mapping Google Sheets Columns to Salesforce Fields

Field mapping is the most important part of the migration. If your mapping is wrong, your data will be messy in Salesforce and hard to fix later.

Here is a basic mapping example for importing Leads:

Google Sheets Column Salesforce Field Object
First NameFirstNameLead
Last NameLastNameLead
EmailEmailLead
PhonePhoneLead
CompanyCompanyLead
TitleTitleLead
StatusLead StatusLead
Lead SourceLead SourceLead
NotesDescriptionLead

If you have additional columns in your spreadsheet that don’t exist in Salesforce, they can still be imported. But, you’ll first need to create them as custom fields.

Examples of custom fields you might need:

  • Industry
  • Product Interest
  • Region
  • Sales Rep
  • Contract Value
  • Renewal Date
  • Customer Type
  • Territory

Build the field before trying to map them in an import.

Export Google Sheets to CSV

Once you Google Sheet is cleaned, de-duped, mapped, and ready, you’ll want to export it is as a CSV file. To do this, follow these steps.

  • Go to File in the top left corner of the page.
  • Select Download
  • Then choose Comma Separated Values (.csv)

Make sure:

  • Headers are in row 1
  • No blank rows at the top
  • Cells are not merged
  • You only include static content, no formulas.
  • Only a single sheet can be used. By default, csv files cannot have multiple sheets anyway.
  • No special characters in headers

My Migration Toolkit

There are dozens of great tools out there to assist you in your migration efforts. I’ve tried more than I can remember but the below tools are staples for any of my migration projects. If you’re migrating open source platforms like vTiger or SuiteCRM, the process is very similar. I’ve also worked on Dynamics 365 migration projects which follow similar migration principles.

  • Python scripts for CSV cleanup and file transformation
  • Ubuntu VM with n8n (Power Automate for Windows centric orgs)
  • MySQL Workbench for building CRM bridge tables
  • Salesforce Data Import Wizard for smaller imports
  • Salesforce Data Loader for large imports

Salesforce Record ID and Reference ID

When performing larger migrations, it’s important to understand the difference between the Salesforce Record ID and what many people refer to as a Reference ID or External ID.

The Salesforce Record ID is the unique identifier generated by Salesforce when a record is created. This ID is used to relate records together. For example, a Contact relates to an Account using the AccountId field, and an Opportunity also relates to an Account using the AccountId field. During migrations, this becomes important because child records cannot be related to parent records unless the parent record already exists and has a Salesforce Record ID. It can get messy if this relationship is not preserved.

To get around this, many migrations use External ID fields. An External ID allows you to assign your own unique identifier to a record and then use that identifier to relate records during import. This makes migrations a bit easier than other systems like vTiger and SuiteCRM which require you to use IDs generated by them.

Import Using Salesforce Data Import Wizard

The easiest way to import spreadsheet data into Salesforce is the Data Import Wizard.

Steps:

  • Go to Setup
  • Search for Data Import Wizard
  • Launch Wizard
  • Select Leads
  • Upload CSV file
  • Map fields
  • Start import
  • Wait for confirmation email
  • Review failed records
  • Fix and re-import if needed

The Data Import Wizard works well for:

  • Leads
  • Contacts
  • Accounts
  • Opportunities
  • Campaign Members

For very large imports (in excess of 50k records), you would use Data Loader instead. It can handle around 5 million records.

Common Mistakes During Google Sheets to Salesforce Migrations

Here are some of the most common issues I see when migrating from spreadsheets to Salesforce:

  • Required fields missing
  • Picklist values not matching Salesforce values
  • Duplicate rules blocking imports
  • Validation rules blocking imports
  • Date formats incorrect
  • Phone formats incorrect
  • Importing contacts without accounts
  • Importing opportunities without accounts
  • Owners not assigned
  • Notes not imported correctly
  • CSV encoding issues
  • Too many characters in a field

Most import failures are due to picklist values not matching exactly or required fields being blank. For example, WebSite vs web_site.

Keep Google Sheets and Salesforce Connected

Some teams continue to use Google Sheets even after moving to Salesforce. They do this for a myriad of reasons but the most common is to save on license costs. Salesforce is great but buy enough licenses and it’ll look like a monthly payment for a Lamborghini. By using a single service account and taking data from Google Sheets automatically, you avoid having to buy extra licenses.

You can connect Google Sheets and Salesforce using the below tools:

  • Zapier
  • n8n
  • Make.com
  • Power Automate
  • Google Apps Script
  • Salesforce API
  • Scheduled CSV imports

Common integrations include:

  • New row in Google Sheets creates a Lead in Salesforce
  • Updating a row updates a Contact
  • New Opportunity in Salesforce adds a row to Google Sheets
  • Daily sync between systems

This allows teams to keep using Sheets while Salesforce becomes the system of record.

Migration Checklist

Here’s a quick checklist for moving from Google Sheets to Salesforce:

  • Backup Google Sheet
  • Remove duplicates
  • Split full names
  • Clean phone numbers
  • Clean email addresses
  • Standardize company names
  • Remove merged cells
  • Remove formulas
  • Create custom fields in Salesforce
  • Map fields
  • Export CSV
  • Import test records
  • Validate data
  • Import full dataset
  • Assign record owners
  • Run reports to confirm data
  • Set up automation
  • Train users
  • Archive old spreadsheet

Grow Your Business and Migrate Safely

Moving from Google Sheets to Salesforce is generally a sign that your business is growing and your needs have matured. Sheets are great, but do not scale like a CRM. With any migration the biggest challenge you will face isn’t the import itself, rather, the prep work.

Structuring, cleaning, and making sense of a massive spreadsheet that many people have worked on for months and years takes tons of time and effort. But, by following the steps outlined in this article, you can help ensure that your data makes it safely to its new home.

If you’re working through different CRM systems, the migration concepts remain very similar across platforms. Whether you’re migrating open source, planning a Dynamics 365 migration, building a spreadsheet CRM automation, or cleaning up your existing data with CRM data cleaning, the most important part of any migration is always the preparation and data structure.

If you’re planning a CRM migration or want to collaborate with me on a project, I’m only a DM away on LinkedIn or any of the other socials listed below.

Matt Irving is the CEO of Super Easy Tech, LLC.
 
Matt a CRM Solutions Architect and creator of SuperEasyCRM.com. He specializes in CRM migrations, automation, and business systems integration, helping organizations implement scalable and cost-effective CRM solutions across North America.

Posted by: Matt Irving on 04/01/2026