I have read several tutorials and I know the subscriber key and contact key are USUALLY the same (correct?)

I read that typically it should NOT be an email address cause email address can change - but how does one generate a unique contact key EXACTLY? Where does it come from? If someone creates an account on a website - does the system automatically generate a unique contact key for that individual? I was just wondering - thanks!

1 Answer 1


You have to provide the value for subscriberkey/contactkey. Typically this would be the uniqueid you have for a subscribers.

An example of this would be

  • ContactID/LeadID
  • Customer Number
  • emailaddress

Subscriberkey ALWAYS = Contactkey

For clarity on the difference between Subscribers and contacts

Differentiating between contacts and subscribers is important when using multiple Marketing Cloud channels.

A contact is a person you send messages to through any marketing channel. A contact typically appears in the All Contacts section, but a contact record can also appear in other locations.
A subscriber is a person who opted to receive communications or belongs to a particular channel. A subscriber lives in the individual studios. Subscribers can be imported or created manually and are stored in data extensions.

  • Thanks but I mean literally - who generates this unique subscriber key - I don't think I actually CREATE this unique id for anyone - i may be able to query it but who actually generates it for millions of users - is it automatically generated when a user creates an account in an app or something?
    – GS65
    Aug 3, 2021 at 21:43
  • 1
    @GS65 As stated in the first sentence you provide the subscriberkey, this should be the unique identifier in your system of record, if you don't have this you could use emailaddress, plenty of people do
    – EazyE
    Aug 4, 2021 at 0:22
  • You are partially correct @GS65. If you are using the Push SDKs, for instance, and you do NOT set a Contact Key then the servers will automatically generate a random UUID for your contact. When you set one in your application via the SDK the randomly generated ID is replaced with the value you assign.
    – Bill Mote
    Aug 4, 2021 at 17:01

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .