What is the difference between Primary Key Contact ID, Contact Key, Subscriber Key and Subscriber ID?
For example:
- Subscriber ID – ?
- Subscriber Key – uniquely identifies a subscriber – per channel?
- Contact ID – unique per 'person' different per channel?
- Contact Key – user defined – per 'person'? eg salesforce Record ID?
- Primary Key – Used in Data Extension as was to identify unique records?
I need to be clear on these so I can absolutely transfer this information. I have read the help material but I think I need it with an example as I still don't quite get it.
Best Answer
Subscriber Key: An Email Studio attribute that is used as a unique identifier for contacts records. Has a one to one relationship with subcribers and is immutable (cannot be changed once set). This is a user defined property
Subscriber ID: Similar to Subscriber Key, it is a used in the backend and is not visible unless through queries or APIs. This is set by the system
Contact Key : A Contact Builder attribute that is used as a unique identifier for the contact model, and other models (Journey Builder) except Email Studio. **This is a user defined **.
Contact ID: Analogous to Subscriber ID
So it is possible to have a different contact key and subscriber key as they are unique identifiers for different modules.
I would see subscribers as contact details of in email studio, and "person" as contacts.
Therefore
Subscriber IS A MEMBER OF Person
.Primary Key: Used within data extension as a unique identifier WITHIN THE DATA EXTENSION. Data extension as used to store data within marketing cloud (regardless of which application), and enforce Relationship Database rules, like any traditional SQL based database.
Example Scenario:
You have a new contact (John) added to your SFMC instance. You want to communicate with John through a lifecycle campaign that includes email with journey builder.
To do this , John will have to be added to Contact Builder. When you add him as a contact , you set the "Contact Key". As the same time the system generates a "Contact ID" for him. Now the system can view him as a contact through the data model, and through this contact key relate him to other applications / attributes within Marketing cloud. But we are unable to send him email as he doesnt exist as an email studio "subscriber". To this this, he has to be added to email studio. When this happens , we set a " Subscriber Key" and the system generates a "Subscriber ID".
Now the system recognises John as a contact (Contact Key) , and an email subscriber (Subscriber Key)
Hope this makes sense.
Answers to Questions in Comment
Answer Spot on . This is correct
Question John then meets the criteria of 2 email and 1 text message Journeys. John is entered into the email Journey 1 with email Family.Smith@email.com this generates a subscriber Key of 123XYZ as the SF ID has been set as my Subscriber Key. John is then entered into the Text journey with the same email and a tel of 12345 678 678. This then attaches his text interaction using the same Subscriber Key? John is sent Email 2 and the same subscriber Key is used? When a subscriber Key is created so is a Subscriber ID lets say 999ZZZ
Update:
Except from the official docs:
Resources