Made by Rune Andersen @ Copenhagen, Denmark
Pinterest logo

Debug Pinterest in Chrome DevTools

To debug Pinterest in Chrome DevTools, install the free Event Watcher extension and open its panel: every Pinterest request is captured the moment it fires, decoded by a dedicated parser into named events, readable parameters, and consent signals, and cross-referenced against the visitor's consent state. Event Watcher has listed Pinterest under Advertising since v1.0.0, and flags any Pinterest event that fires without marketing consent.

Conversion tracking tag for Pinterest ad campaigns and audience building.

Last updated:

Category
Advertising
Detected via
Network requests: Event Watcher matches the request URLs this platform sends
Consent category
Marketing consent: Event Watcher flags Pinterest activity that fires without it
Dedicated parser
Yes: requests are decoded into named events, parameters, and consent signals, not just raw URLs
Supported since
Event Watcher v1.0.0 (2026-02-20)
Show the URL patterns Event Watcher matches
  • ct.pinterest.com
  • pinterest.com/ct.html
  • log.pinterest.com
  • s.pinimg.com/ct/

What Pinterest traffic looks like

The Pinterest Tag encodes structured data as PHP-style bracket parameters rather than JSON, close to unreadable in raw DevTools.

Endpoint pattern
Core script from s.pinimg.com/ct/core.js; event beacons to ct.pinterest.com; the noscript fallback uses ct.pinterest.com/ct.html
Transport
GET beacons carrying event data as bracket-notation query parameters (ed[...], pd[...]) instead of JSON. A checkout with a few line items becomes bracket soup
Key parameters
tid the tag ID · event the event name (pagevisit, viewcategory, addtocart, checkout, or custom)
E-commerce
ed[value], ed[currency], ed[order_quantity] transaction summary · ed[line_items][0][product_name], ed[line_items][0][product_id], ed[line_items][0][product_price] per-product arrays, one bracket path per field
Payload
Enhanced Match travels under pd[...]: pd[em] SHA-256 hashed email; extended fields cover hashed name (pd[fn], pd[ln]), phone (pd[ph]), location (pd[ct], pd[st], pd[zp], pd[country]), gender, date of birth, and pd[external_id]

Debugging Pinterest with Event Watcher

  • The Pinterest parser reconstructs the bracket notation into real structures: tag ID, value, currency, and quantity in the overview.
  • ed fields render as an Event Data table; line_items decode into a proper e-commerce items list with product name, ID, price, quantity, category, brand, and variant per row.
  • Every pd Enhanced Match hash groups under Identity, so you can see exactly which PII fields (hashed) left the browser.
  • Cache-buster, iframe, and noscript flags land under Page Context.

Pinterest and consent

Marketing consent

The extension checks Pinterest Tag traffic against the marketing consent category. There is no cookieless or consent-mode variant of the browser tag: a ct.pinterest.com request before marketing consent is a completed transmission and gets flagged as pre-consent or denied.

Enhanced Match raises the stakes: pd[em] populates whenever the site passes an email to pintrk('load', ...) or the user is identifiable at page load.

So a pre-consent pagevisit beacon can already carry a hashed email. When auditing, check the Identity group on the earliest Pinterest hit specifically.

Common debugging scenarios

  • Checkout value missing in Pinterest reporting. Open the checkout event and verify ed[value] and ed[currency]. Sites frequently send the value only on individual line items and leave the event-level ed[value] empty.
  • Line items look wrong. The decoded e-commerce table shows each product row; mismatched product_price versus displayed price usually traces to a tax-inclusive/exclusive mixup in the dataLayer mapping.
  • Enhanced Match silently inactive. If the Identity group never shows pd[em], the email is not being passed at load, and conversion match rates in Ads Manager will be poor.
  • Tag fires before consent. The consent check marks the beacons; the diagnosis pattern matches GA4 fires before consent.
  • Which script pushed the checkout event? When the tag is driven by dataLayer events, use which script pushed the dataLayer event to attribute the push before blaming the Pinterest mapping.

See Pinterest traffic on your own site

Free, no account, runs entirely inside Chrome DevTools.

Add to ChromeFree on the Chrome Web Store

Related guides

More advertising platforms