Skip to main content

How to set up a 2-way sync between Salesforce and Mailchimp

Sync contacts between Salesforce and Mailchimp and log email engagements in Salesforce

Updated today

When connecting Salesforce to Mailchimp you have three options:

  • Use a Zapier connection which is universal but difficult to configure, maintain and can get expensive rather quickly. For each lead/contact added, field updated, lead/contact deleted or engagement created you'd need to set up an individual zap with multiple steps to ensure no duplicates are created and the information is synced with the right lead/contacts.

  • Use the official integration which is a lite connector and doesn't meet most B2B business needs

  • Use another 3rd party app to sync data which may be more expensive, only sync contacts one way or not sync engagement events.

Outfunnel's Salesforce-Mailchimp sync is designed for B2B companies who want 2 key things from a sales-marketing integration:

  1. Keep sales and marketing leads/contacts in sync and

  2. Automatically record marketing engagement in Salesforce for the salespeople to see.

With just a 10-minute, no-code setup your marketing can use the lead/contact lists defined in Salesforce for their campaigns and give sales full visibility into leads' engagement, so they can sell smarter.
​


Connect Salesforce and Mailchimp, deeply and easily

Get started in 10 minutes. 14-day free trial. No credit card required.


How it works

  • 1-way lead/contact sync. Make all leads/contacts or a subset(s) available on either platform along with your custom lead/contact and account fields and keep them in sync going forward.

  • Sync email engagement to your CRM. Give your sales team full context on email opens, clicks, unsubscribes, and more.

  • Comprehensive field mapping. Sync any default or custom field two-way or in a single direction so you always have the right information available in any app. If any data conflicts arise, you can easily select the conflict winner.

  • Deduplication built-in. Outfunnel creates links based on the email address and we'll automatically cross-reference leads/contacts to prevent duplicate entries. If a lead/contact already exists we'll simply link it. If it doesn't we'll create a new record.

  • Near instant data sync. Outfunnel syncs most data instantly and some within 2 hours.

  • Monitor sync status. Clear overview of the sync health which includes actionable error messages so you can fix them as they happen.

  • Historical sync. Sync all of your customer data, no matter when it was created. Outfunnel syncs not only new leads/contacts but also existing ones.

  • Transparent pricing. Each lead/contact that's part of the sync only counts once, regardless of how many updates get synced or to how many apps.

  • Reliable and secure data. Outfunnel uses advanced authentication methods, such as OAuth, and deploys encryption measures to make sure the data is secure in transit.


Authenticate your apps

  1. Select Salesforce and Mailchimp

  2. Authenticate as per on-screen instructions if you haven't done so already.


Set up lead/contact sync

1. Choose your apps

Head to App connector and select your apps.

2. Select the connection type

Click on Connect and choose Contact sync as the connection type.

3. Set the sync direction and database

Choose to sync data two-way or in a single direction.

4. Define contact sync rules

  • Salesforce contacts: As you are syncing contacts, then only Salesforce contact views are visible for syncing.

If this is your first sync we recommend syncing a limited number of (test) contacts to get a feel for the sync.

🏁 Initial sync

  • Contacts are linked based on the email address. If an existing contact is not found a new contact is created. If multiple contacts are found with the same email address then the link is made with the oldest contact and no duplicates will be created.
    ​

  • Initial sync actions in Mailchimp.

    • Contacts are created in the database.

    • Contacts are subscribed to the audience.

      • Manually unsubscribed and archived contacts are resubscribed on initial sync. To avoid resubscribing archived contacts, delete them from Mailchimp or remove them from the CRM segment. If any contacts are archived in Mailchimp after the initial sync but nothing changes in the CRM then they will not be resubscribed.

      • Bounced and opted-out contacts are not resubscribed.

πŸ”„ Continuous sync

  • Contact changes. As long as the contact matches the rule any changes to its profile in the source app will be synced to the destination app.
    ​

  • When contact stops matching rules. When a contact stops matching the rules all updates will stop but they will not be deleted from the destination app. In Mailchimp, the contact will be unsubscribed.
    ​

πŸ’‘ Other things to keep in mind

  • Contacts do not get removed/unsubscribed from Mailchimp if you remove the contact sync rule or change the target segment.

  • Multiple email addresses on a contact. Outfunnel creates a link with the first email address on a contact profile. Other addresses on the profile will be ignored.

  • Merging contacts. Outfunnel supports merging contacts with the same email. After you've merged a contact you may see the contact getting unsubscribed from Mailchimp if the contact you merged to was not in sync but they will get resubscribed in the next sync given that the email address is the same.

5. Set up field mapping

First, choose the default fields and/or custom fields you’d like to sync and in which direction. Then, choose the app that will be used in case of any conflicts.

Data conflicts

Data conflicts usually happen during the initial sync when a mapped field value is different on both apps. For example, when the name is different for the same contact then Outfunnel will use the selected app as the conflict winner. Most companies use their CRM as a system of record. Reach out to support if you are having doubts or want to talk through your use case.

πŸ’‘ Things to keep in mind

  • Email is a default field that is matched automatically and cannot be changed. This is what Outfunnel uses as the unique identifier to create a link between contacts on two apps.
    ​

  • Read-only fields. Some fields are read-only (ie calculated fields) and cannot be edited which means they can only be synced in one direction.
    ​

  • Adding new fields. Create a new field in the corresponding app. Then head back to Outfunnel and click "refresh fields" to see the new field.
    ​

  • Single/Multiple option fields. If you are mapping single and multiple option fields please pre-create the values in the source and destination app.
    ​

6. Activate the connection

🏁 Initial sync

After activating the connection Outfunnel will run an initial sync to merge your databases and you should see contacts appearing in the sync status page. The initial sync usually takes a few minutes but can take up to a few hours depending on the number of contacts to sync.

The status page also shows errored contacts and provides actionable feedback on how to fix this.

πŸ”„ Continuous sync

After the initial sync completes Outfunnel starts running a continuous sync where most data syncs instantly but some are checked at a regular interval. Read more.

Coming soon:

  • Sync leads to Salesforce

  • Lead, organization and deal fields

  • Instant webhook based updates


Set up engagement sync

How the data looks like in Salesforce

Set up

1. Choose your apps

Head to App connector and select your apps.

2. Select the connection type

Click on Connect and choose Engagement sync as the connection type.

3. Select how events get recorded

Choose the events you'd like to sync (ie email opens, email clicks) and define how you’d like them to be recorded in your CRM – or simply use our default settings.

4. Limit the sync

Choose to sync all events or limit the syncing to a specific list or segment.

5. Optional: create a contact if it doesn't exist

When Outfunnel syncs an engagement for a contact that does not yet exist in your CRM, a new contact can optionally be created with the defined field mapping. If you'd like to create a contact enable the option and map the desired fields.

6. Activate

🏁 Initial sync

After activating the connection you can choose whether you'd like to record engagement only from emails that have been sent after activating the connection or also from the last 30-days. The initial sync usually takes a few minutes but can take up to a few hours depending on the number of historical engagements to sync.

The status page shows the number of engagements that have been synced.

πŸ’‘We also offer retrospective sync on demand for an additional cost. Please refer to this article.

πŸ”„ Continuous sync

After the initial sync completes Outfunnel starts running a continuous sync that checks for updates every two hours.

You can trigger an instant sync anytime by clicking on Sync now.

πŸ’‘ Things to keep in mind

  • Unsubscribe recording. Outfunnel only records end-user initiated unsubscribes in Salesforce and manual unsubscribes in Mailchimp are not recorded. When a contact is unsubscribed manually but they still match a filter in Salesforce that is targeted by a lead/contact sync, then Outfunnel will resubscribe them in Mailchimp. If you'd like to manually remove a contact in Mailchimp, they need to be permanently deleted under the contact profile in Mailchimp.
    ​
    Learn more about the best ways to manage unsubscribes and bounces.
    ​

  • First unique URL click per email per lead/contact is recorded. Outfunnel records the first unique URL click per email per lead/contact. For example, if a lead/contact clicks 2 unique URLs, 3 times each then two click activities get created in your CRM.

  • Activities in the CRM. Email activities are linked to a lead/contact, account, and the oldest open opportunity.​


Do you use web forms to collect leads to your lists? See the following integrations to automate lead capture sync to Salesforce:

Don't see your preferred web forms listed above? Browse the upcoming connections and sign up for early access.

Did this answer your question?