Check how we successfully migrated close to 1 million contacts from Pardot and Salesforce to HubSpot, streamlining fragmented marketing data and ensuring seamless data synchronization, essential for non-profit ocean-life conservation efforts.

How we migrated close to 1 million contacts from Pardot and Salesforce to HubSpot while establishing a data sync across platforms


The Client

Our client is a non-profit organization on the forefront of tracking ocean life, driving conservation measures with their cutting-edge technology. 

This organization provides data to assist scientists for collecting previously unattainable data in the ocean. They conduct research expeditions aboard a vessel which serves as an at-sea laboratory. 

Their vessel is equipped with a 75,000 lb. capacity hydraulic platform designed to safely lift mature marine animals out of the ocean for access by a multi-disciplined research team–allowing the team to gather up to 12+ samples in under 15 minutes.

The Problem

Grappling with fragmented marketing data across Pardot (700-800k contacts) and a selective Salesforce instance (100k contacts), the client sought to migrate the contacts database to HubSpot while retaining essential Salesforce functionalities like donation tracking. 

Our challenge was to bridge the system divide, ensure seamless data sync, and translate the Salesforce environment into HubSpot, all within a tight timeframe.


Data Inconsistency


Scale of Data


Cross-Platform Tracking

Problem Overview

Aside from the client explicitly requesting to move their data over to HubSpot, a closer look revealed a quartet of other challenges that needed to be addressed.

  • Data inconsistency between systems: The two systems contained different levels of information and, in some cases, conflicting data points, making thorough analysis an imperative.
  • Dynamic subscription data: Recurring donations made in the payment gateway required real-time updates in HubSpot to reflect active donors, adding complexity to the data synchronization process.
  • Salesforce functionalities in HubSpot: Replicating Salesforce automation to facilitate donation tracking involved building workarounds.
  • The scale of the data: Cross-checking the 700-800k Pardot contacts with the 100k in Salesforce implied meticulous data cleansing, batch importing, and careful property and association mapping.

Our Approach

We divided the entire projects into five different phases:

  1. Audit and Preparation
  2. Data Migration from Salesforce to HubSpot
  3. Migration from Sandbox to Production
  4. API Integrations for Donor Segmentation
  5. Training and Education

We understood that migrating the data would only paint half the picture, clean and usable data was the name of the game, and we incorporated identifying the right data (and sources) into our process to deliver the cleanest CRM our client could expect. 

Audit and preparation

The first step in any successful migration is understanding the current situation. To that end, we conducted a comprehensive audit of the client's existing Salesforce and Pardot systems and discovered the following:

  • The data within Pardot was largely unusable. Because Pardot was being used just to send out marketing emails, the client had neglected the data sanity and consequently piled up unstructured data.
  • Salesforce fared way better in terms of data quality. But there was another issue – they had a whole lot of properties and the clients themselves weren’t sure where the properties were being used.

Diagnosing the issue, we knew what we had to do – cross-reference Pardot’s data with Salesforce and compile a relevant dataset within Salesforce. Then move on to analyze their usage patterns to identify cross-redundancies. 

While all this was happening, we advised the client to opt for HubSpot’s Sales and Marketing Hub Pro subscriptions and built a basic setup, ready to import the data.

Data Migration from Salesforce

While a direct sync between Salesforce and HubSpot would have been the fastest way to move the data, it would then have us sorting out data within HubSpot all over again. So we planned to export the whole data (in batches), clean the data and then import it over to HubSpot.

  • Data Export: This was a pretty straightforward process. We combed through their properties, prioritized the ones to keep, and extracted them from Salesforce systems. At this point, we had already matched the data in Pardot with their counterparts in Salesforce. We weren’t particularly concerned about Pardot because it was recording every historic interaction with an individual, and in many instances, double-counted contacts while Salesforce had updated data.
  • Data Clean-up and Quality Controls: We scanned the data and meticulously addressed missing values, formatting issues, and duplicates. More importantly, we brainstormed on what properties to keep and purge, taking into consideration both their present and future applications.
  • Assess Data entry sources: Following data clean-up we shifted our focus to analyze the current data sources within Salesforce and map them to their corresponding data pipelines in HubSpot. To make the data entry more efficient, we set up automated workflows that would sort the data coming from different sources.
  • Import to Sandbox: We split the massive data into smaller batches of around 50k contacts each and imported them to the HubSpot Sandbox account during off-peak hours (like early mornings). We reviewed the data after every import and confirmed they were error-free before moving on to the next.

Migration from Sandbox to Production account

As the HubSpot account was brand new and the client wasn’t actively using it for their operations yet, we simply had to transfer the imported data to the Production account. But that wasn’t the end. We did one other thorough review, verifying data accuracy and completeness after the migration.

API Integrations for Donor Segmentation

This was a vital part of the project. With the client being a non-profit organization, they were receiving donations from patrons - some were single gifts and others were recurring payments. But, so far they had no automated means to differentiate between the two and identify top donors. 

Here, we had to think outside of HubSpot. We looked at Stripe as it was the client’s primary payment gateway. We designed custom API solutions to integrate Stripe with HubSpot in a way that a new deal gets created in the system, with all required details such as the amount, donor name, email address, invoice, etc., whenever a donation is made. Plus, designing custom APIs allowed us to just update the ‘line item’ of the deals when the donation is a recurring one, instead of creating a new deal.

We used another API integration to record a donor’s entire payment history from Stripe and associate it with Contacts in HubSpot, making it simpler for the client to identify top donors and reward them. To facilitate the API calls we figured it would make more sense to use a third-party app like ‘Hooked’ instead of an Operations Hub Subscription for their limited API requirements.


The clients were previously using Salesforce and Pardot, so they pretty much knew CRM terminology and what things meant. So it became our task to educate them only on how to do the same things in HubSpot in a way that would take up the least amount of time. 

Over the course of 5 weeks, our onboarding team organized 2 training sessions every week that were curated for the different teams to carry out their specific functionalities. 

Additionally, we provided detailed documentation and knowledge-base materials to help them troubleshoot issues themselves before approaching an outside expert.

The Impact and Outcomes

Undertaking this project, we were able to achieve the following:

Migrated 800k records in under a month
22% increase in donations due to better donor engagement
  • We migrated 800k records in a month to have a single source of truth for the entire data.
  • We boosted donations by 22% through better donor management and engagement.
  • We achieved ZERO data loss along with improved data quality by eliminating data clutter. We improved data accessibility for better analysis and decision-making.
  • We brought together the client’s different RevOps tools and helped them manage it from a single interface – HubSpot.

Case Studies

Nurturing Existing Database of Records and Initiating Marketing Hub Implementation

Read how we leveraged HubSpot for nurturing existing database of 440K contacts and initiated Marketing Hub implementation to deliver 24% m-o-m growth in marketing qualified leads for a Healthtech...

Delivering HubSpot Expertise for Marketers

A digital solutions company faced a lack of strategic and technical marketing expertise when their marketing manager went on maternity leave. The firm provided comprehensive digital marketing support...

How our Marketing Automation efforts led to 28% increase in meetings booked

A global market intelligence company needed to streamline their complex marketing processes to efficiently target the right audiences. They implemented marketing automation within HubSpot, developed...