i have a many Data Extension where the Primary Key is the IdAccount (Salesforce CRM) and the relationship with the Subscriber Key is the e-mail address.

The All Subscribers is not update automatically and like i have to use the Journey Builder i create a population for this match the Contact Key with the IdAccount (only possible). I noticed that my records numbers in All Contacts duplicate.

In All Subcribers i have 5 million records and All Contact almost 10.

  1. Have a resolution for this?
  2. If i delete the Population the Contacts will delete?
  3. If i delete the Population whats is the best practice for the records evaluate in Journeys Builders?

I hope my explications is good. Thanks for advance.


Messy situation. You've got Salesforce CRM connected which means if you have chosen to synchronise Contacts, Accounts, Leads and Users they are all in your AllContacts table with their Salesforce ID's.

If you have been sending to your contacts by using Email Address as Subscriber Key, then they are added as fresh/unique Contacts to AllContacts table with their EmailAddress as ContactKey.

You have a couple of options, but each have their own severe downsides..

  • 1) You can choose to delete Subscribers with EmailAddress as ContactKey, but this means you will lose all tracking history and their preference statuses (AllSubscribers, Publication Lists, Mobile OptIn Keywords etc)

By doing this you will also need to start using the proper Salesforce ID's as Subscriber Key, so on Person Accounts and Contacts it would always be PersonContactID, for Leads it would be LeadID and so on.

  • 2) You can choose to delete Subscribers that are from Salesforce - essentially disabling the Marketing Cloud Connect, as in this case you will not be able to use any cross-cloud features in Journey Builder, send tracking data to CRM, use cross-cloud AMPscript and use Salesforce Data in Contact Builder.

Anyway, these days Populations are not needed if you are working with Salesforce CRM Data and you have the Synchronised Data Extensions in place. Assuming you don't have any external systems feeding other, non-CRM contacts to Marketing Cloud, then in your situation I would:

1) Export subscribers tracking data and subscription data out of SFMC

2) Remove any/all Populations

3) Update CRM data with the subscription data (opt outs etc)

4) Delete all Subscribers with Email address as Subscriber Key

5) Utilize Synchronised Data Extensions and the CRM data model

6) Use Journey Builder with Data Extensions where the SubscriberKey is the ContactID/LeadID (18 digits) in all future sends.

Further reading:

|improve this answer|||||
  • Hello @Rain. Thanks for explanation. About other system we don't have another to get records, only the connector. I think the best action is delete Subscribers with EmailAddress as ContactKey. How i can do it? Do you have the knowledge? – Joao Marano May 8 '19 at 22:00
  • Yes, to delete them you'll need to gather them all up in a Data Extension (or multiple sets) and then use the Contact Builder new Contact Deletion framework. Deletion needs to happen in separate batches, as the framework allows only up to 1m per deletion request. Documentation: help.salesforce.com/… – Rain May 9 '19 at 7:06

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.