Loading

Permanently remove Contacts or Subscribers and associated data from Contact Builder

Дата публикации: Mar 19, 2025
Описание

In the 'All Contacts' section of Contact Builder, you may see some Contacts without a channel. These records display an 'Unspecified'  Source and a Modified date of the current date. This means that, while they are a Contact in Contact Builder, they do not exist within any of the other channels, such as Email Studio (All Subscribers List) or Mobile. Use the information below to understand where the contacts were introduced.

 

When is a customer a Contact and not a Subscriber?

'Contacts' have not been subscribed to any form of communication (Email, SMS, Push). Once a Contact is added to a specific channel, they become a Subscriber.

For additional details, see our 'Contact Definition and Contact Determination' documentation.

 

When can I expect to see a Contact with no channel?

Решение

NOTE: Contacts Delete deletes all subscriber types. Before you follow the steps below, please follow this article which explains how to locate and subsequently delete subscribers that exist on the hidden managed lists. Contacts that exist in these lists will show as channel-less contacts and be returned in the results below. If you have duplicated the contactkey in any other channel (All Subscribers, MobileConnect, MobilePush, GroupConnect) and delete the channel-less contactkey found in the hidden managed lists, we will also delete the other record. 


1) Address the cause of Contacts without channels

Each of the cases mentioned previously in this article are expected behavior. If you do not desire this behavior, stop your process that leads to a Contact(s) without a channel.

Once the feature is disabled, use the steps below to delete any Contacts without channels from your account.

 

2) Prepare to delete any Contacts without channels 
 

1. In All Contacts, create a filtered mobile list that meets 5 conditions:

  •  Contact Key is not null AND Email Address is null AND Mobile Number is null AND Device ID is null AND Address ID is null

Note: This is sourced from these attribute paths:
 
  • System Data | Contact | Contact Key
  • System Data | Email Addresses | Email Address
  • MobileConnect Data | MobileConnect Demographics | Mobile Number
  • MobilePush Data | MobilePush Demographics | Device ID
  • GroupConnect LINE Data | GroupConnect LINE Demographics | Address ID


This provides every record that does not belong to any channel (Contact Key with no source in All Contacts). Follow the below only if you need to review your data. Otherwise you can delete Mobile Filtered Lists using Contacts Delete. 

Note: Creating this filtered list at the Enterprise Level will bring in Mobile Studio Contacts from any Business Unit. These appear to have no channel at the Enterprise. You will need to compare the results with each Business Unit's Mobile Channel subscribers before using this list for deletion. 

2. Use a SQL Query Activity to query from this list into a new Data Extension (DE).

i. Within the Query, select the "Overwrite" Data Action. If either of the other options is selected you will get a Primary Key error.

3. Create a new DE with one field titled SubscriberKey, make this field a Primary Key. Make the DE sendable.
4. In Automation Studio, create an SQL query that resembles the below. 

select subscriberkey 
from [name of MobileConnect/MobilePush filtered list name]

5. For the target Object, select the newly created DE. Save it, then place it in an Automation and run the Automation once to populate the DE.
6. Per our best practices documentation, create a backup of this DE should you need it at a later date.
7. Follow the 'Contacts Delete' documentation to delete the DE and the Contacts contained within from your account.

 

Delete records created via Synchronized Data Sources

If you know the records came from a Synchronized Data Source, you can find the Contacts that have not been added to the 'All Subscribers' list by running the query below.
 

select id from Contact_Salesforce c
left join _subscribers s
on c.id = s.subscriberkey
where s.subscriberkey is null


Replace 'Contact_Salesforce' with any other Synchronized Object that counts against your total contacts: Account, User or Lead. You can use this to populate a Data Extension to be used for Contacts Delete.

Contact Delete Best Practices

Номер статьи базы знаний

000382080

 
Загрузка
Salesforce Help | Article