Pinterest Tag
Consent grant and revoke for the Pinterest Tag through pintrk('setconsent').
What it does. Tells the Pinterest Tag whether the visitor consented, using Pinterest's documented consent call.
Consent category. marketing. The bridge reads the Consent Mode ad keys when a consent event carries them, and otherwise reads the stored category.
How it works
The bridge sends:
pintrk('setconsent', true); // marketing granted
pintrk('setconsent', false); // marketing declined or withdrawn
With false, Pinterest stops sending events for the visitor and deletes the tag's first-party cookies. With true, it goes back to tracking.
The calls happen at three points:
- At load. A returning visitor's stored choice is sent straight away.
- On a choice. It sends a call on every
cookiebeam:consentUpdateandcookiebeam:consentRestored, and on withdrawal. It only sends when the value changes. - Late tags. If
pintrkdoesn't exist yet, the bridge keeps the decision and checks for the tag every 200 ms for ten seconds, and once more onwindowload.
An explicit US opt-out of sale/sharing or of targeted advertising always sends setconsent(false).
What it doesn't do
Nothing before a decision. Pinterest has no "hold" call. A visitor who hasn't chosen yet gets no Pinterest call from us. To keep the tag off the page until consent, use auto-blocking. The scanner classifies s.pinimg.com/ct/… as marketing, so a scanned site blocks it until marketing is granted.
It never creates window.pintrk. Pinterest's base code only injects core.js inside if (!window.pintrk). If we created the function, your snippet would skip loading Pinterest entirely. So the bridge waits for your snippet to create it.
No Limited Data Processing flag. Pinterest's CCPA mechanism, pintrk('set', { opt_out_type: 'LDP', st, country }), needs SHA-256 hashes of the visitor's state and country. Pinterest ignores it unless all three fields are valid, so a hash in the wrong format would fail without any error. We don't emit it. If you need LDP, set it in your own tag with values you've checked against Pinterest's documentation.
Setup
Off by default. On the banner's App Integrations page, go to Vendor Consent Signals → Ad pixels and turn on Pinterest Tag. Then publish.
The toggle is stored as customFeatures.adPixelConsentBridges.pinterest: true on the banner theme.
Testing
Load the site, open the console, and wrap the tag's function so you can see the calls:
var original = window.pintrk;
window.pintrk = function () { console.log('pintrk', arguments); return original.apply(this, arguments); };
Accept or reject marketing in the banner. You should see setconsent with true or false, once per change.