Preference management gets sold as a screen where somebody ticks boxes. The screen is the easy part. What makes it work is that every preference is a record with four fields, because a preference with three of them cannot be honoured across systems or defended afterwards.
Scope: what exactly is being preferred
Marketing email is not one thing. Product updates, offers, newsletters, transactional receipts and research invitations are separate decisions, and a person who unticks everything is telling you something different from one who unticks offers. A scope that is too coarse forces people to opt out of things they wanted.
State: on or off, and which is the default
Recording off is not the same as recording never asked, and a system that cannot tell them apart will eventually treat silence as consent. Store the tri-state, and store the default that was in force when the person first appeared, because a default that changed later is the thing that makes an old record ambiguous.
Timestamp: when it changed
Every argument about a preference is an argument about a date. Without a timestamp you cannot answer whether the message that upset somebody was sent before or after they changed their mind, which is the only fact that matters.
Provenance: where it came from
The sign-up form, the preference centre, a support agent acting on a phone call, an import from a previous system. Imports are where bad preference data enters, and an imported preference with no provenance is one you cannot stand behind.
Questions people ask about preference management
Is this the same as consent management?
Overlapping. Consent management usually means capturing a lawful basis, most often for cookies and tracking. Preference management is broader and includes choices that are not consent at all, such as which of three newsletters somebody wants.
Where should preferences live?
In one place that the sending systems read, rather than in each sending system. The moment two tools hold their own copy you have two answers to the same question and no way to say which is current.
How long do we keep the history?
As long as you keep the underlying relationship, at least. The history is the evidence, and deleting it to tidy up removes the only thing that answers a complaint.