Pinterest — Tag and Conversions API
Server-side conversion tracking via Pinterest's Conversions API. Pair the Pinterest Tag ID with a conversion access token. Optional hybrid mode loads the browser tag for first-party cookies, deduplicated via event_id.
What you'll need
- A Pinterest business account with admin access on the Ad Account.
- An existing Pinterest Tag, or permission to create one.
- About 5 minutes.
1. Find or create the Pinterest Tag ID
- Open Pinterest Ads Manager at
ads.pinterest.com. - Ads → Conversions → Conversion sources.
- Pick the Pinterest Tag for this domain, or click Add conversion source → Pinterest Tag to create one.
- The Tag ID (a 13-digit numeric, sometimes called "TID") is shown on the Tag detail page. Copy it.
2. Generate a conversion access token
- Same Tag detail page, scroll to Generate conversion token (or API access, the wording shifts between Pinterest UI versions).
- Click Generate token. The token is shown ONCE. Copy it immediately. There is no way to retrieve it later, you would have to revoke and regenerate.
- The token is bound to the Tag, scoped to
ads:write, and does not expire.
3. Paste credentials into Beaconry
WordPress Admin → Beaconry → Tracking → Pinterest. Paste the Tag ID and the conversion access token. Save the form.
The token is encrypted at rest with AES-256-GCM using your WordPress auth salts. Constants alternative: BCNR_PINTEREST_TAG_ID and BCNR_PINTEREST_ACCESS_TOKEN in wp-config.php.
4. (Optional) Set a Test Event Code
Pinterest's CAPI accepts an optional test_event_code field on every event. Generate one in Ads Manager → Conversions → Events history → Test events and paste it into Beaconry. While set, every event lands in the Test Events tab instead of going live. Remove the code before launching a campaign.
5. Send the test event
Click Send Pinterest test event on the Tracking tab. Beaconry fires a synchronous page_visit through CAPI and reports the response inline.
HTTP 200 with num_events_received: 1 means credentials work. With Test Event Code set, the event appears in Conversions → Events history → Test events within a few seconds. Without the test code, Pinterest aggregates events with up to 30 minutes of latency before they show up in reporting.
Hybrid mode — Pinterest Tag
Server-side CAPI alone covers 100 percent of consenting visitors. Hybrid mode loads the browser Pinterest Tag (s.pinimg.com/ct/core.js) in parallel so Pinterest sees the visitor's first-party _pinterest_ct cookie. Beaconry sends the same per-event event_id from both sides so Pinterest deduplicates against double-counting.
Toggle in Beaconry → Tracking → Pinterest → Hybrid mode. Better match-rate, slightly more bytes shipped to the visitor. Off by default.
What ships automatically
Beaconry maps GA4 canonical event names to Pinterest's standard event vocabulary:
| Beaconry event | Pinterest event |
|---|---|
page_view | page_visit |
view_item | view_category |
search | search |
WooCommerce add_to_cart | add_to_cart |
WooCommerce begin_checkout | checkout |
WooCommerce purchase | checkout (with order value + currency) |
Form generate_lead | lead |
Account sign_up | signup |
All payloads carry hashed PII (em, ph, ge, ln, fn, ct, st, zp, country) plus first-party identifiers (Pinterest's _pinterest_ct when available, IP and User-Agent).
Troubleshooting
- "Invalid access token": token revoked or generated under a different Tag. Regenerate on the Tag's detail page and replace in Beaconry.
- "num_events_received: 0": the Tag ID and token belong to different Tags. Pinterest binds tokens per Tag, mismatched pair gives a silent 200 with zero events booked.
- Events arrive but ROAS columns stay empty: Pinterest needs the catalog Product Group ID in
content_idsfor Dynamic Product Ads. Beaconry sets WooCommerce product IDs by default. If your catalog uses different IDs (Merchant Center IDs, SKUs), enter the override in Forms & Commerce → Product ID source. - Counter spikes after enabling hybrid mode: dedup mismatch. Verify the same
event_idis logged in both the Beaconry log (server) and the Pinterest Tag debugger (browser) for the same visitor session.