Integrating with Salesforce

Connect Mutiny with your Salesforce instance to create personalized experiences using all your first party data

Updated over a week ago

When you integrate your Salesforce (SFDC) instance with Mutiny, you can create segments based on SFDC data, build 1:1 personalized outbound landing pages, and dynamically insert SFDC data into your experiences. On top of that, you can sync data back to Salesforce about who is viewing your experiences.

How it works

Mutiny can integrate with your Accounts, Contacts, Leads and Opportunities SFDC tables. Mutiny connects your visitor with their SFDC record in a few different ways, depending on which other tools you have.


Read Data from Salesforce

You can create segments for your inbound traffic based on any data you have in any of your Salesforce tables. Using your Clearbit Reveal integration, Mutiny will match a visitor's domain to their Salesforce Account or Opportunity record. 

To access contact-level data fields (Leads or Contacts), you will need to use Segment or implement Mutiny's API. Mutiny joins to these tables using the visitor's email.

If you use Segment, the user's email is passed automatically and you will not need to do any further implementation.

If you don't use Segment, you will need to use Mutiny's API to send the visitor's email when they sign up or sign in, or when otherwise available. 

When you have defined your segment using a SFDC definition, you will be able to dynamically insert any SFDC data you have mapped (see step 4 below).

Write Data to Salesforce

You can enable Mutiny will use Salesforce Campaigns and Campaign Members to represent the experience impressions and conversions of any of your Salesforce Leads or Contacts.

More information on this integration can be found here.


With outbound personalization in Mutiny, you can create 1:1 personalized landing pages for any contact or account in Salesforce. Once your data is mapped on the Integrations page, you can add it to your outbound campaign by selecting SFDC as your data source.

User Permissions

In order to sync data daily, Mutiny needs to use offline_access with the refresh_token permission in Salesforce. Learn more about permissions.

Pick Your Salesforce Integration User Strategy

You need to connect an org-level Salesforce user to Mutiny, which is the primary connection for Salesforce API calls and syncing data between Mutiny and Salesforce. All data pulls and pushes between Mutiny and Salesforce are made using this account.

We strongly recommend creating a dedicated, Mutiny-only Integration User with a fine-grained permission set. This enables more robust reporting because it ensures all record changes by Mutiny are properly attributed to Mutiny.

You may prefer to connect a Shared Integration User or use an existing Individual User. Here’s more about each:




Dedicated, Mutiny-only Integration User

This is best practice and our recommended option. The user is granted precise permissions and all updates made within Salesforce are clearly attributable to Mutiny.

This requires use of a dedicated Salesforce User license, which may require time to set up at your company.

Shared Integration User with other connected apps

This might be a better choice, because you may already use an Integration User with other connected apps. You don’t need to provision a new user.

Mutiny must share the permissions and limits of the Shared Integration User. If this user’s access is shut down, all connected apps will be impacted.

Existing Individual User with system admin permissions

This is typically the fastest and most affordable option because you use an Individual User that already exists in your Salesforce. There’s no need to create anything new.

If the user leaves the company, the connection will break. Mutiny is given full system access and edits made within Salesforce are be attributed to the Individual User.

Grant your Integration User Permissions In Salesforce

In order to sync data daily, Mutiny needs to use offline_access with the refresh_token permission in Salesforce.

We recommend authorizing Integration User with a System Administrator profile. If you do this, all permissions with be configured by default.

If you decide to authorize an account without the System Administrator profile, you need to manually update the Salesforce permissions. In that case please update the following settings:

In the User settings, assign the following permissions

  1. Check Marketing User

In the Profile settings assign the following permissions

  1. Check View Setup and Configuration

  2. Check Modify Metadata Through Metadata API Functions

  3. Check Modify All Data

  4. Check Customize application

  5. Check Manage profiles and permission sets

  6. Check to Read, Create, Edit, and Delete the Campaign object access

Integrating with Salesforce and mapping data fields

Step 1 - Activate your Salesforce integration

Select Integrations from the left side pane and click on Salesforce. On the next page, click "Connect to Salesforce" in the top right corner.

Step 2 - Use OAuth 2.0 to connect Salesforce to your Mutiny account

After clicking to connect, you will be taken to a page where you can login or OAuth into your SFDC instance. Don't worry, Mutiny will only access the data you map for the integration (which you can always change at any time). 

Step 3 - Set your source table

Select all tables from Salesforce you would like to use as a data source. See more about mapping tables and columns here.

Step 4 - Map your columns

Select whichever columns you want to use to segment and/or personalize in Mutiny and click "Map Columns." Mutiny will suggest a few common columns, but you can also enter your own custom columns.

Step 5 - Sync Data back to Salesforce

Select "Sync data to Salesforce". This will kick off a flow where you select which experience impressions to sync to Salesforce.

API calls

Don't worry about Mutiny eating up your API calls - we take a very conservative approach. For inbound, there is a limit to the number of API calls we will make daily. For each table that you map (Accounts, Contacts, Leads and Opportunities) we need to do one API call per 2000 records you have in that table. To keep your data fresh, Mutiny will receive a steady stream of fresh data from Salesforce.

Here’s an example of how to calculate the number of API calls we will do per day:

  • Accounts table: 50k records

  • Contacts table: 70k records

  • Leads table: 100k records

  • Opportunities: table 40k records

  • We’ll need to make: 25+35+50+20 ~= 130 API calls/day.

If you are using the Salesforce integration for outbound personalization, you can specify how often you want Mutiny to check Salesforce for updates to your campaign data. When you are setting up your campaign, Mutiny will give you an estimate of how many API calls selecting each refresh frequency will generate.

There is a max of events we can receive from you in 24hrs, that limit depends on what your Salesforce plan is.

That's it! You can now personalize your inbound and outbound experiences using Salesforce data. 

Don't be a stranger

If you have any questions, we’re here to help! Please feel free to contact us at any time, either through intercom chat or via

Did this answer your question?