Preference Management Platform

Preference Management Platform

The Preference Management Platform (PMP) is a 51Degrees cloud widget that asks if a user wants to fund their access with personalized or standard advertising, or if they would rather pay for access.

It passes the choice to the 51Degrees client script on the page, and 51Degrees creates a 51Did carrying the usage that was chosen. For personalized and standard it also publishes a TCF string through the standard __tcfapi, which advertising tools already know how to read.

Your advertising preference

Standard advert

Waiting for your preference…

Make a choice in the preference dialog and the advert will appear here.

Preference tier: none

Decision: waiting for your preference

The 51Did your preference triggered

Choose an option in the dialog to see the 51Did created for it.

The PMP dialog appears on your first visit and remembers your choice. Change my preference re-opens the dialog so you can pick a different option. Wipe all data and start again clears what this site kept in your browser, being the preference, the 51Did and the session data, so the dialog appears again. The next Probabilistic 51Did carries the same Match Key, because the Match Key comes from your device and your network rather than from anything stored here.

Change my preference Wipe all data and start again

How this works

  1. The PMP collects the visitor's choice. For personalized or standard it builds a TCF v2 string and publishes it through the IAB __tcfapi, the same API a consent management platform uses. For pay for access it builds no string, and __tcfapi then answers that it has none.
  2. The PMP announces the choice on the page. The 51Degrees client script hears it and asks cloud.51degrees.com again, sending the chosen usage as id.usage.
  3. 51Degrees creates a 51Did carrying that usage. Pay for access is recorded as non-marketing, which is one of the three answers, and a non-marketing 51Did is never sent to a demand source.
  4. The advert is then rendered as either personalized or standard at the top of the page.

The Model Terms for Marketing

The answers in the dialog come from the Model Terms for Marketing, the terms 51Degrees and the companies that send and receive a 51Did work to. That page explains what they are and links the full text of each version, and version 2 is the one the 51Dids on this page were created under.

The terms give the wording for each choice, which is the wording this dialog uses.

  • Standard is targeted marketing and other content unrelated to the visitor's browsing history or interactions, such as content chosen by the time, the region and the page being read.
  • Personalized is targeted marketing and other content related to that browsing history or those interactions.
  • Pay for access records non-marketing, which is one of the three answers rather than a refusal to answer. A non-marketing 51Did is never sent to a demand source.

Each 51Did names the version of the terms it was created under, as one byte in its payload, which is why the link here is the text of version 2 and never a page that can be edited underneath a reader. Open any 51Did in the 51Did inspector to see that byte beside the rest of the structure.

TCF compatibility

The PMP is technically compatible with the IAB Europe TCF wire format and deliberately not compliant with IAB Europe TCF policy. It is not an IAB Europe-certified CMP, by choice.

The dialog emits a TCF v2 string, the same format any TCF-aware system already knows how to read. Ad servers, supply-side platforms, analytics tags and audience tools that already understand TCF string structure can consume the output without modification.

The PMP is not, and was never built to be, an IAB Europe-policy-compliant CMP. It asks how a visitor wants to fund their access, and the answer is a usage preference under the Model Terms for Marketing, as the section above sets out. Using the TCF wire format keeps that preference portable across downstream tooling without making any claim of compliance the PMP cannot back. A page carries the PMP or a consent management platform, never both, because both answer on __tcfapi.

Current TCF string

Waiting for your preference…

Unpack the string into its underlying purpose and vendor bits at the IAB Tech Lab GPP / TCF decoder.

The link appends the current TCF string as a URL fragment, so the decoder pre-loads it on arrival, no copy-paste needed.

The string names a consent management platform registered with IAB Europe, chosen by the day, because the PMP registers none of its own. Pay for access builds no string at all, so nothing is shown here after that choice.