Pinterest Ads

Datafly Signal delivers conversion events to Pinterest server-to-server, replacing the client-side Pinterest Tag with lightweight server-side delivery. This provides reliable campaign attribution and ad performance measurement without loading vendor JavaScript.

Prerequisites

Before configuring Pinterest Ads in Signal, you need a Pinterest Business account with a Pinterest Tag created and a conversion access token.

Create a Pinterest Business Account

  1. Go to business.pinterest.com and click Join as a business (or convert your personal account).
  2. Enter your business name, website URL, and select your business type.
  3. Complete the account setup wizard.

Set Up Pinterest Ads Manager

  1. In your Pinterest Business account, navigate to Ads in the top menu.
  2. If prompted, set up your billing information to activate Ads Manager.
  3. Note your Ad Account ID — found in Ads Manager > Account Settings (a numeric ID like 549764982399).

Create a Pinterest Tag and Get Conversion Token

  1. In Pinterest Ads Manager, go to Conversions in the left sidebar.
  2. Click Create Pinterest Tag if you don’t already have one.
  3. Name your tag (e.g. “Website Tag”) and click Create.
  4. Navigate to Conversions > Conversion Access Token.
  5. Click Generate Token and copy the token immediately.
⚠️

Copy the conversion token immediately — it may only be shown once. Store it securely. If you lose it, you will need to generate a new one.

You do not need to install the Pinterest Tag JavaScript snippet on your website. Signal replaces the client-side tag with server-side delivery.

Configure in Signal

Now that you have your Ad Account ID and conversion token, configure the integration in Signal.

Configuration Fields

FieldRequiredDescription
ad_account_idYesYour Pinterest ad account ID (numeric). Found in Pinterest Ads Manager under Account Settings.
conversion_tokenYesConversion access token for server-side event delivery. Generated in Pinterest Ads Manager under Conversions.

Vendor Click IDs

Signal automatically captures the following Pinterest click identifiers from URL parameters:

Vendor IDParameterDescription
epikepikPinterest enhanced match click ID. Used for improved attribution.
pin_unauthpin_unauthPinterest unauthenticated user ID. Used when the user is not logged in to Pinterest.

These are captured automatically by the Datafly.js collector and forwarded with conversion events.

Management UI Setup

  1. Go to Integrations > Add Integration > Pinterest Ads.
  2. Enter your ad_account_id and conversion_token.
  3. Select consent categories (typically advertising).
  4. Click Save.

Management API Setup

curl -X POST http://localhost:8084/v1/admin/integrations \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "source_id": "src_abc123",
    "vendor": "pinterest_ads",
    "name": "Pinterest Ads Production",
    "enabled": true,
    "config": {
      "ad_account_id": "549764982399",
      "conversion_token": "ct_ABC123..."
    },
    "consent_categories": ["advertising"]
  }'

Event Mapping

Datafly EventPinterest EventNotes
page (page view)page_visitSent for every page view
Order CompletedcheckoutRequires value, currency, order_id
Product Addedadd_to_cartIncludes product_id, value
Checkout StartedcheckoutIncludes value, currency
Product Viewedview_categoryIncludes product details
Lead GeneratedleadLead form submission
Signed UpsignupUser registration
Products SearchedsearchIncludes search_string
Custom eventscustomSent as custom event with event name

Identity Signals

Automatic Signals

These are sent automatically by Signal — no configuration needed:

SignalDescription
epikPinterest enhanced match click ID, captured from URL parameters.
pin_unauthPinterest unauthenticated user ID, captured from URL parameters.
IP addressVisitor’s IP address, forwarded from the original request.
User agentVisitor’s User-Agent string, forwarded from the original request.
External IDSet to the Datafly anonymous_id (hashed).

User-Provided Signals

When a user is identified via _df.identify(), additional signals improve attribution:

SignalDescription
Email (hashed)User’s email address, SHA-256 hashed before sending.

All PII hashing is performed server-side by the Delivery Worker before the data leaves your infrastructure.

Testing Your Integration

Step 1: Send a Test Event

  1. Trigger a page view or conversion event on your website.
  2. Check the Signal event debugger in the Management UI to confirm the event was captured and delivered.

Step 2: Verify in Pinterest Ads Manager

  1. In Pinterest Ads Manager, go to Conversions > your tag.
  2. You should see events arriving within a few minutes.
  3. Check the Event History to inspect individual events and their match quality.

Step 3: Validate Attribution

  1. Create a test campaign with a small audience.
  2. Confirm that conversion events are attributed correctly in campaign reports.

Troubleshooting

ProblemSolution
Events not appearing in PinterestVerify the ad_account_id and conversion_token are correct. Check that the token has not been revoked.
Authentication errorsRegenerate the conversion token in Pinterest Ads Manager and update the integration config in Signal.
Missing epik or pin_unauthThese are captured from URL parameters when users click Pinterest ads. They will not be present for organic traffic.
Low match rateAdd user identity signals (email) via _df.identify() when users log in or submit forms. Ensure epik click IDs are being captured.
Events delayedPinterest may take up to 20 minutes to display server-side events. Allow time before investigating further.

Visit Pinterest Ads API documentation for full API documentation and credential setup instructions.