Salesforce Marketing Cloud
Salesforce Marketing Cloud is a comprehensive digital marketing platform that enables publishers to deliver personalized email campaigns and customer journeys at scale.
Setup
Troubleshooting
Overview
Salesforce Marketing Cloud (SFMC) is a leading marketing automation platform that helps organizations manage customer relationships and deliver targeted email communications. Our integration with Salesforce Marketing Cloud enables you to activate Permutive cohorts directly into SFMC Data Extensions for use in email campaigns and automated customer journeys. This integration is a Destination:- Destination: Permutive can activate your cohorts into SFMC Data Extensions, allowing you to target email campaigns with audience segments built in Permutive.
- Send targeted email campaigns to Permutive cohorts based on user behavior and interests.
- Create personalized customer journeys in SFMC using Permutive audience segments.
- Retarget users via email based on their on-site activity and cohort membership.
- Leverage first-party data from Permutive to enhance email marketing performance.
Environment Compatibility
Prerequisites
- SFMC Account Access - You must have access to your Salesforce Marketing Cloud account with permissions to create API integrations and manage Data Extensions.
-
SFMC Subdomain - You must determine the subdomain specific to your Marketing Cloud instance. This can be found in the SFMC dashboard:
- Navigate to Administration (under your email address in top-right, where logout is)
- Click the General Settings box
- Identify the text after “Portfolio Base URL” or “SOAP WSDL” (just the parts between
https://and the first full stop) - Example:
https://my-subdomain.soap.marketingcloudapis.com/Service.asmxwould bemy-subdomain
-
Business Unit Configuration - For each Business Unit you want to send data to, you must configure API integrations in SFMC. You will need:
- A unique name for each Business Unit (alphanumeric, spaces allowed)
- Client ID (generated when you create the API integration package)
- Client Secret (generated when you create the API integration package)
- An identity type/alias tag that should be synced from Permutive to SFMC
- Subscriber Key Type - You must determine whether your SFMC Subscriber Keys are text or numeric values. This configuration is required when setting up the integration in the Permutive dashboard.
-
User ID Alignment - The IDs being synced to Permutive (via
permutive.identifyin the SDK or API) must match the Subscriber Keys used in SFMC. The Subscriber Key is the primary identifier SFMC uses for contacts, and it must align with the identity type you configure in Permutive.
Setup
- Primary Setup Steps
- Web
- iOS
- Android
- CTV
- API Direct
Determine SFMC Subdomain
- Log in to Salesforce Marketing Cloud
- Navigate to “Administration” (under your email address in top-right, where logout is)
- Click the “General Settings” box
- Locate the “Portfolio Base URL” or “SOAP WSDL” field
- Extract the subdomain (the text between
https://and the first.)- Example:
https://my-subdomain.soap.marketingcloudapis.com/Service.asmx→ subdomain ismy-subdomain
- Example:
Configure API Integration for Each Business Unit
- In SFMC, navigate to “Installed Packages” under the “Account” dropdown (top-left)
- Click the “New” button in the top right
- Enter a name and description (e.g., “Permutive {name-of-business-unit}”)
- Click “Add Component” and select “API Integration” (should be automatically selected)
- Ensure “Perform server-to-server requests” is checked (should be auto-selected)
- Scroll down to “Data” section
- Under “Data Extensions”, grant both “Read” and “Write” permissions
- In the new “API Integration” box under “Components”, record the following for each Business Unit:
- Client ID - Specific to this Business Unit
- Client Secret - Specific to this Business Unit
- Subdomain - Should match the subdomain you determined in Step 1
- Keep these credentials secure and note which Business Unit they correspond to
Enable Integration in Permutive Dashboard
- Navigate to the Permutive dashboard
- Go to “Settings” → “Integrations”
- Find “Salesforce Marketing Cloud” and click “Add Integration”
- Enter your SFMC subdomain (from Step 1)
- Select Subscriber Key Type - Choose whether your SFMC Subscriber Keys are “text” or “number”
- Configure each Business Unit you want to activate cohorts to:
- Name - Enter a descriptive name for the Business Unit (alphanumeric, spaces allowed)
- This name is used in the Permutive dashboard for reference
- It’s also used in the Data Folder name created in SFMC (e.g.,
Permutive (Sales)) - Does not need to match the MID in Marketing Cloud
- Client ID - Enter the Client ID from the API Integration (from Step 2)
- Client Secret - Enter the Client Secret from the API Integration (from Step 2)
- Identity Type / Alias Tag - Specify the identity type that should be synced from Permutive to SFMC
- This must match the identity you pass via
permutive.identifyin the SDK - Example: if you use
permutive.identify([{id: "12345", tag: "sfmc", priority: 0}]), entersfmchere
- This must match the identity you pass via
- Name - Enter a descriptive name for the Business Unit (alphanumeric, spaces allowed)
- To add additional Business Units, click the ”+ Business unit” button and repeat the configuration
- Click “Save” to complete the integration setup
Configure Cohort Activation
- In the Permutive dashboard, navigate to one of your cohorts
- Look for the Salesforce Marketing Cloud activation option
- Select the Business Unit you want to send the cohort data to
- Set the activation to fire “Every Time” a user enters or exits the cohort
- Enable the activation
Permutive (\{business-unit-name\}).Verify Setup
- Navigate to “Data Extensions” in SFMC
- Look for the Data Folder named
Permutive (\{business-unit-name\}) - Inside the folder, you should see Data Extensions corresponding to your activated cohorts
- Each Data Extension should contain:
subscriber_key: The user ID from Permutivetimestamp: When the user entered the cohort
- As users enter and exit cohorts, rows will be added and removed from the Data Extensions
Data Types
When you activate a cohort for SFMC, Permutive creates a Data Extension with the following schema:Data Extension Structure
Data Extension Structure
- Data Extension Name: Same as your Permutive cohort name (e.g., “Travel Enthusiasts”)
- Data Extension Description: Cohort code followed by cohort description (e.g., “12345 - Users interested in travel content”)
- Data Folder: All Data Extensions for a Business Unit are organized in a folder named
Permutive ({business-unit-name})(e.g.,Permutive (Sales)) - External Key: Each Data Extension is assigned a UUID as its External Key, which Permutive uses to identify it
- Field type matches the Subscriber Key Type configured in Permutive (text or number)
- Configured as the Subscriber Key attribute in SFMC to make the Data Extension sendable
- Must match the IDs you pass via
permutive.identifyin the SDK or API - Primary Key of the Data Extension
- Stored without timezone information in SFMC
- Used to track when users became members of the cohort
- When a user enters the cohort in Permutive, a row is added to the Data Extension with their
subscriber_keyand entrytimestamp - When a user exits the cohort in Permutive, the corresponding row is removed from the Data Extension
- Data Extensions are configured as both sendable and testable for use in email campaigns and automated journeys
- Segment entries and exits are synced in near real-time (typically within seconds)
Identity Mapping: Alias Tag and Subscriber Key
Identity Mapping: Alias Tag and Subscriber Key
permutive.identify. For the SFMC integration, you configure an Alias Tag (e.g., “sfmc”) that represents your SFMC Subscriber Keys.How They Work Together:- You configure the Alias Tag in the Permutive dashboard when setting up the SFMC integration (e.g., “sfmc”)
- You identify users in Permutive with their SFMC Subscriber Key using this Alias Tag:
- When a user enters a cohort, Permutive looks up their identifier for the configured Alias Tag
- Permutive sends this identifier to SFMC as the
subscriber_keyin the Data Extension - SFMC can now use this Data Extension to target the user in email campaigns
- The Alias Tag is just a label in Permutive - the actual ID values must be valid SFMC Subscriber Keys
- The Subscriber Key type (text or number) must be configured correctly in Permutive to match your SFMC setup
- Users must be identified with the Alias Tag before entering a cohort for activation to work
- Different Business Units can use different Alias Tags if they use different identifier schemes
Troubleshooting
Dashboard timeout (500 error) during integration setup
Dashboard timeout (500 error) during integration setup
- Refresh your browser (hard refresh recommended)
- Navigate to Settings → Integrations
- Check if Salesforce Marketing Cloud appears in your list of active integrations
- If the integration appears, setup was successful despite the timeout
- If it doesn’t appear, try the setup process again
Unable to enable integration - Permission errors
Unable to enable integration - Permission errors
- Verify that you’ve granted “Read” and “Write” permissions for Data Extensions in your SFMC API Integration package
- Ensure you’re using the correct Client ID and Client Secret for each Business Unit
- Confirm that the API Integration is set to “Perform server-to-server requests”
- Check that the subdomain is correct
Data Extension not being created when activating cohort
Data Extension not being created when activating cohort
- Verify that the cohort activation is set to fire “Every Time” (this is the only valid option for SFMC)
- Check that you’ve selected a Business Unit for the activation
- Ensure there are users in the cohort who have been identified with your SFMC identifier type
- Look for any error messages in the Permutive dashboard when enabling the activation
Cannot remove or rename Business Unit in dashboard
Cannot remove or rename Business Unit in dashboard
- Business Units cannot be removed after being added to the integration configuration
- The name of an existing Business Unit cannot be changed after creation
- You can edit Client ID, Client Secret, and Alias Tag for existing Business Units, but not the name
- If you need to remove a Business Unit entirely, contact Permutive Support for assistance
- To revoke Permutive’s access to a specific Business Unit without removing it from Permutive, delete the API Integration package in SFMC’s “Installed Packages” section
Subscriber Key type mismatch
Subscriber Key type mismatch
- Verify the Subscriber Key type in your SFMC account (check if keys are numeric or text-based)
- The Subscriber Key type configured in Permutive must match your SFMC configuration
- If you selected the wrong type, contact Permutive Support to update the configuration
- Check that the IDs you’re passing via
permutive.identifymatch the expected format (text or number)
Wrong Business Unit selected for cohort activation
Wrong Business Unit selected for cohort activation
- In the Permutive dashboard, navigate to the cohort’s activation settings
- Select a different Business Unit from the dropdown
- The Data Extension will be created in the newly selected Business Unit
- The old Data Extension in the previous Business Unit will remain but will no longer receive updates
- To clean up, manually delete the old Data Extension in SFMC if desired
Users not appearing in SFMC Data Extensions
Users not appearing in SFMC Data Extensions
- Verify that the IDs being sent to Permutive via
permutive.identifymatch the Subscriber Keys in SFMC - Check that you’ve specified the correct identifier type in the integration configuration
- Ensure users have been identified in Permutive using the identifier type you configured
- Confirm that the Data Extension’s
subscriber_keycolumn is set as the Subscriber Key attribute in SFMC
Data Extension moved or renamed - activation stopped working
Data Extension moved or renamed - activation stopped working
- Moving Data Extensions to different folders is supported - activations will continue to sync
- Renaming Data Extensions is supported - activations use the External Key (UUID) to identify the Data Extension, not the name
- Do NOT change the
External Keyof the Data Extension, as this is used by Permutive to identify the correct Data Extension - New activations will still be created in the original Permutive Data Folder
Timestamps displaying with unexpected timezone
Timestamps displaying with unexpected timezone
- Timestamps are stored without timezone information in SFMC
- The displayed timezone may differ from UTC depending on SFMC’s internal handling
- This is a known limitation and does not affect the functionality of the integration
- Consider the timestamp as a relative indicator of when users entered cohorts rather than an absolute time
Can reactions be set up automatically for new segments?
Can reactions be set up automatically for new segments?
- You must manually enable the SFMC activation for each cohort you want to sync
- Navigate to the cohort in the Permutive dashboard
- Toggle the SFMC activation to “On”
- Select the Business Unit and configure the activation settings