Convert

Signal sends goal conversions (purchases, leads, sign-ups and so on) to Convert Experiences from the server, through Convert’s Experiences Tracking API. Experiments themselves (bucketing a visitor and showing a variation) run in the Convert browser tag; the server side records conversions for visitors the tag has already bucketed.

⚠️

Convert can only attribute a server-side conversion to a visitor it knows. Signal sends its anonymous ID as the visitor ID, so the Convert tag must be given that same ID as its visitor ID (Convert’s “Bring Your Own ID”) before the tag loads. Without that, conversions are recorded against unknown visitors.

Prerequisites

  • Your Convert account ID and project ID.
  • The goal ID of each Convert goal you want Signal to fire (Project > Goals).
  • The Convert tag configured with Signal’s anonymous ID as its visitor ID (BYOID).

Configuration fields

FieldRequiredDescription
account_idYesConvert account ID.
project_idYesConvert project ID.
purchase_goal_idNoGoal fired by purchase (with revenue, transaction ID and product count).
add_to_cart_goal_idNoGoal fired by add_to_cart.
checkout_goal_idNoGoal fired by begin_checkout.
lead_goal_idNoGoal fired by generate_lead and demo_requested.
quote_goal_idNoGoal fired by quote_requested (with the quote value as revenue).
signup_goal_idNoGoal fired by sign_up.
trial_goal_idNoGoal fired by trial_started.
subscription_goal_idNoGoal fired by subscription_started (with revenue).
api_keyNoNot used: the tracking endpoint takes no API key.

An event whose goal field is blank is not sent.

API endpoint

POST https://metrics.convertexperiments.com/v1/track/{account_id}/{project_id}
Content-Type: application/json

{
  "accountId": "10012345",
  "projectId": "10056789",
  "enrichData": true,
  "visitors": [{
    "visitorId": "{Signal anonymous ID}",
    "events": [{
      "eventType": "conversion",
      "data": {
        "goalId": "99887766",
        "goalData": [
          {"key": "amount", "value": 104.5},
          {"key": "transactionId", "value": "T-1001"},
          {"key": "productsCount", "value": 3}
        ]
      }
    }]
  }]
}

enrichData: true asks Convert to attribute the conversion to the experiences it stored for the visitor (availability depends on your plan). Convert has no currency field: amount is taken as the account’s currency. Source: Convert API for Experiences Serving and Convert’s custom integrations guide (read 2026-09-22).

Presets

PresetEvents
Defaultsign_up, generate_lead, purchase
Retailadd_to_cart, begin_checkout, purchase, sign_up, generate_lead
Insurancequote_requested, generate_lead, purchase
B2B / SaaSdemo_requested, sign_up, trial_started, subscription_started

No personal data is sent.

Default consent category: analytics.

Blueprint

Blueprint version 0.3.0 (not yet tested against a live Convert account).