Best Practices for Deleting Salesforce-Synced Contacts in Marketing Cloud Engagement
Deleting contacts from Marketing Cloud Engagement can create unexpected results when Marketing Cloud Connect synchronization is active.
If a contact is deleted in Marketing Cloud while the synchronized data source is still running, the contact may be re-created in All Contacts with a system-generated GUID or UUID as its Contact Key. This can lead to duplicate contacts, incorrect subscriber relationships, and unnecessary records in your account.
Why are GUID contacts created?
Marketing Cloud Connect synchronizes Contact, Lead, and other Salesforce records with Marketing Cloud Engagement.
When a contact is deleted from Marketing Cloud Engagement, Salesforce may still contain the original record. If the synchronized data source runs before the contact deletion process is complete, Marketing Cloud can interpret the record as a new contact and create it again.
The re-created contact may contain:
- The Salesforce record ID in the
IDfield - A system-generated UUID in the
_ContactKeyfield - A new record in All Contacts
Salesforce recommends deleting the record from Salesforce first, followed by deleting the corresponding contact from Marketing Cloud Engagement. This prevents the synchronization process from reintroducing the contact with a GUID-based Contact Key. Salesforce Contact Deletion Guidance
Recommended deletion process
Follow this sequence whenever possible:
- Delete or exclude the contact from the Salesforce source.
- Allow Marketing Cloud Connect to synchronize the change.
- Confirm that the contact is no longer eligible for synchronization.
- Submit the contact for deletion in Marketing Cloud Engagement.
- Monitor the deletion process until it is fully complete.
Deleting the Salesforce record alone does not delete the contact from Marketing Cloud Engagement. The contact must also be removed using Contact Delete in Marketing Cloud. Salesforce Contact Delete Considerations
When should you pause synchronization?
If you cannot delete the Salesforce record first, pause the specific synchronized data source before starting the Marketing Cloud contact deletion.
In Contact Builder:
- Go to Data Sources.
- Select Synchronized.
- Open the relevant Salesforce object.
- Click Pause Sync.
- Submit the contacts for deletion in Marketing Cloud Engagement.
- Wait until the Contact Delete process is complete.
- Click Resume Sync.
Pausing synchronization prevents the records from being re-created while the deletion is still processing. Do not resume synchronization too early. If the sync is resumed while the contacts are still in a suppressed or pending-deletion state, the GUID-based records can be introduced again. Salesforce GUID Contact Key Guidance
What if GUID contacts already exist?
If GUID-based contacts have already been created:
- Extract the affected contacts and their Contact Keys.
- Pause the synchronized data source.
- Submit the GUID-based contacts for Contact Delete.
- Wait until the deletion process is complete.
- Resume synchronization.
- Perform a full refresh of the synchronized object if the GUID values remain in the synchronized data extension.
A full refresh clears and repopulates the synchronized data extension, which can help restore the correct Salesforce ID as the Contact Key. Schedule the refresh carefully because the synchronized data extension may temporarily contain no data during the process. Salesforce Synchronized Data Source Best Practices
Additional best practices
Before deleting contacts, always:
- Export the contact list and Contact Keys for auditing.
- Confirm that the contacts are not active in important journeys.
- Check whether the contacts exist in other business units.
- Avoid deleting large volumes in parallel.
- Make sure the deletion criteria use the correct Contact Key or Salesforce ID.
- Test the process with a small number of records first.
- Do not rely on deleting a synchronized data extension to remove contacts from All Contacts.
Pausing a synchronized data source only stops new updates from arriving. It does not delete existing contacts from Marketing Cloud Engagement. To remove the contacts completely, you must submit a Contact Delete request.
Final recommendation
For Salesforce-synced contacts, the safest approach is:
Delete or exclude the record in Salesforce first, then delete the contact in Marketing Cloud Engagement.
If that sequence is not possible, pause the relevant synchronization before starting the deletion and resume it only after the Contact Delete process has finished. This simple step helps prevent duplicate records and unwanted GUID-based Contact Keys.








