EXM provide two mechanism for unsubscribing: Unsubscribe link and unsubscribe from all
@Pete Navarra describes in details this functionality :
https://sitecorehacker.com/2018/12/17/managing-the-unsubscribe-part-1
Unsubscribe link
When this link is clicked out of an email, Sitecore will process the Redirect URL and redirect to the Unsubscribe linked above. This page has no styling and no layout. It will actually just return blank if it succeeds correctly. But there’s actually magic happening behind the scenes
1. The Contact is Removed From Contact List
The Unsubscribe Link is specific to a single message, which is tied to specific Manager Root. When this link is clicked, Sitecore EXM will search for the first Contact List in the Inclusion List on the email and attempt to remove the user from it.
If ONLY Segmented Lists are used on the message or the contact can NOT be found on the first list, then to prevent accidentally sending this contact a message again, this user is added to the Global Opt-Out List defined on the Manager Root.
2. The Contact is redirected to the Final Confirmation Page
On the Manager Root under Subscription Control there is a field for Final Confirmation Page that the Contact/visitor is redirected to when the unsubscribe completes successfully.
3. If contact is already unsubscribed, redirected to Already Unsubscribed
If the contact has already unsubscribed (maybe they clicked on the Unsubscribe Link in their email a second time) then Sitecore will redirect the contact to the Already Unsubscribed page/item. This is helpful, because it could provide the user the ability to resubscribe.
Unsubscribe From All
This is a full unsubscribe from all messages being sent from a selected Manager Root. The Manager Root is identified because the query parameters going into this link provide the Message ID, which is needed to know which Manager Root to use.
If you recall from our Introduction to the Manager Root, there is a field that specifies the Global Opt-Out List. This List Manager Contact List, is evaluated every time an email is dispatched (automated or regular). If the contact exists in this list, they will be automatically excluded from the delivery of the message.
Processing the Unsubscribe From All URL performs the following actions.
1. The Contact is Added to the Global Opt-Out List
The contact is immediately added to the Global Opt-Out List. They are NOT removed from the first Contact List on the message, as described above.
2. The Contact is redirected to the Final Confirmation Page
On the Manager Root under Subscription Control there is a field for Final Confirmation Page that the Contact/visitor is redirected to when the unsubscribe completes successfully.
Out of the box, this field is blank. However, by specifying it to a branded page on your website, the Unsubscribe link will redirect the user to here.
3. If contact is already unsubscribed, redirected to Already Unsubscribed
If the contact has already unsubscribed (maybe they clicked on the Unsubscribe Link in their email a second time) then Sitecore will redirect the contact to the Already Unsubscribed page/item. This is helpful, because it could provide the user the ability to resubscribe.