Consent is a chain, not a field
It is decided in the CMP, travels through the SDK, is stored in the profile and enforced by each destination. It breaks at the link nobody designed.
Generic diagram. It does not reproduce a client architecture.
A consent project is usually considered done when the banner stores the decision. That is where the journey starts. The SDK needs it before the first event, the profile needs it in time for audiences, and every destination has to respect it or block what must not go out.
Each link has a different owner and a different pace. If one arrives late or not at all, the person's decision stops counting and no system raises an error.
Production signals
- Nobody knows how long a preference change takes to reach an audience.
- The SDK collects with consent granted by default where the law requires asking first.
- Preferences changed outside the website arrive in an overnight file.
- Each destination filters with its own rule that nobody has reviewed.
Recommended architecture
Draw the path of each purpose end to end, with an owner and a latency for each link.
Test complete scenarios: accepts, rejects, changes their mind and does not answer.
When not to apply it
- Do not solve it in the CMP alone: the banner enforces nothing outside the browser.
- Do not copy the decision into fields without an owner, because they end up saying different things.
Try it in a simulator
Interactive scenarios where this pattern fails and gets fixed.
- AEP · AJO
Can I send this?
What stops a labelled piece of data from going out to a destination or an AJO channel?
Open the simulator → - AEP · Web SDK · AJO
Where consent lives
How much of what Laura decided reaches her profile, and who enforces it at activation?
Open the simulator → - Web SDK
The journey of an event
Which events go out, when is the ECID created and which services do they reach?
Open the simulator →