Pinterest Ads Event Tracking | OpsBlu Docs

Pinterest Ads Event Tracking

Event catalog, parameter requirements, and QA notes for Pinterest Tag and Conversions API.

Event Model

Pinterest Ads uses a combination of standard events and custom events. Standard events unlock optimization features, shopping ads, and better attribution. Use consistent event names between Pinterest Tag and Conversions API to enable automatic deduplication.

Core Standard Events to Implement

  • PageVisit: Fires on every page load; base event for all tracking.
  • ViewCategory: Category or collection page views with product_category and product_ids.
  • Search: Site search performed with search_query parameter.
  • AddToCart: Item added to shopping cart with product_id, product_name, product_category, product_price, currency, and value.
  • Checkout: User begins checkout process with order_quantity, product_ids, currency, and value.
  • WatchVideo: Video playback events with video_title parameter.
  • Signup: Account creation or user registration with lead_type parameter (e.g., "newsletter", "account").
  • Lead: Lead form submission or contact request with lead_type, currency, and value.
  • Custom: Business-specific events with custom parameters for specialized tracking.

E-commerce Standard Events

Pinterest prioritizes e-commerce tracking for Shopping and Catalog campaigns:

  • ViewCategory: Category page view

    • product_category (string): Category name
    • product_ids (array): List of product IDs on the page
  • AddToCart: Add to cart action

    • product_id (string): SKU or product ID
    • product_name (string): Product name
    • product_category (string): Product category
    • product_price (number): Price per unit
    • product_quantity (number): Quantity added
    • currency (string): ISO 4217 currency code
    • value (number): Total value (price × quantity)
  • Checkout: Checkout initiated

    • order_id (string): Unique order or session ID
    • order_quantity (number): Total items in order
    • product_ids (array): List of product IDs in cart
    • currency (string): ISO 4217 currency code
    • value (number): Total order value

Required Parameters by Event

E-commerce Events

  • product_id: Product SKU or unique identifier.
  • product_name: Human-readable product name.
  • product_category: Product category or type.
  • product_price: Unit price in the specified currency.
  • product_quantity: Number of items.
  • currency: ISO 4217 currency code (USD, EUR, GBP, etc.).
  • value: Total value of the event in the specified currency.
  • order_id: Unique order or transaction identifier for deduplication.

Lead & Engagement Events

  • lead_type: Type of lead or signup (e.g., "newsletter", "account", "trial", "demo").
  • currency: Currency code if assigning a value.
  • value: Estimated or assigned value for optimization.
  • search_query: Search term used by the user.
  • video_title: Title or identifier for video content.

Custom Events

Use custom events for business-specific actions that don't fit standard events. Custom events can be used for audience building and reporting but may not unlock all automatic optimization features.

  • Name custom events descriptively (e.g., "DownloadGuide", "ProductComparison", "StoreLocatorSearch").
  • Include parameters for segmentation (category, product_type, location).
  • Document custom events in your tracking plan with expected parameters and use cases.
  • Use lowercase with underscores for custom event names (e.g., "download_guide").

Enhanced Match Parameters

Improve conversion attribution and audience matching by sending hashed user data with events. Hash using SHA-256 before sending to Pinterest.

  • em: Email address (hashed, array format).
  • ph: Phone number in E.164 format (hashed, array format).
  • ge: Gender (single character: "m" or "f", array format).
  • db: Date of birth in YYYYMMDD format (hashed, array format).
  • ln: Last name (lowercase, hashed, array format).
  • fn: First name (lowercase, hashed, array format).
  • ct: City (lowercase, hashed, array format).
  • st: State or province (lowercase, 2-letter code, hashed, array format).
  • zp: ZIP or postal code (hashed, array format).
  • country: Country (lowercase, 2-letter ISO code, hashed, array format).
  • external_id: Your internal user ID (hashed, array format).

Important: Pinterest requires Enhanced Match parameters to be sent as arrays, even for single values.

Event Deduplication

When sending the same event from both tag and Conversions API, include identical event_name and event_id to allow Pinterest's deduplication logic to count the event only once.

  • event_id: Unique identifier for the event (same across tag and API).
  • event_time: Unix timestamp in seconds when the event occurred.
  • event_source_url: The URL where the event occurred (for web events).
  • action_source: "web", "app_ios", "app_android", "offline", etc.

Payload Rules

  • Always include currency and value for events used in campaign optimization (Checkout, AddToCart, Lead, Signup).
  • Use product_id consistently across events to enable product catalog matching for shopping ads.
  • Send event_id for all conversion events to enable deduplication between tag and API.
  • Include Enhanced Match data (at least hashed email) for improved conversion attribution.
  • Ensure all Enhanced Match fields are sent as arrays, even if only one value is provided.

Naming & Conventions

  • Use lowercase with underscores for custom event names (e.g., "video_completed", "guide_download").
  • Standard Pinterest event names use PascalCase (e.g., PageVisit, AddToCart, Checkout).
  • Align parameter names with Pinterest's standard parameters where applicable.
  • Document any custom parameters in your tracking plan with expected data types and formats.

QA Notes

  • Use Pinterest Tag Helper extension to verify tag firing, event names, and parameters in real-time.
  • Check Ads Manager Event History for both tag and API events before production launch.
  • Validate Enhanced Match coverage percentage by reviewing Ads Manager diagnostics.
  • Confirm domain claim in Business Hub and verify tag installation status shows as "Working".
  • Test deduplication by sending the same event from tag and API with matching event_id, then verify only one event appears in Event History.
  • Screenshot key event payloads in Tag Helper and Event History for documentation and compliance records.
  • Monitor conversion windows (1-day, 7-day, 30-day) to understand attribution timing.