Blog

Send Reddit Pixel events through sGTM

Reddit's Conversions API is newer than its peers. Three quirks worth knowing.

Reddit launched its Conversions API in 2023 and it is still maturing. Three specific quirks catch teams during implementation.

Quirk 1: pixel_id is hex, not numeric

Reddit's pixel IDs are hex strings (e.g., a2_abc123def456). The "a2_" prefix is required and easy to miss.

Quirk 2: events use uuid, not event_id

Reddit's dedup field is uuid. Same logic as event_id elsewhere, different field name.

Quirk 3: limited token scope

Tokens are tied to specific ad accounts. Multiple accounts means multiple tokens.

In sGTM

const event = {
  test_mode: data.testMode || false,
  events: [{
    event_at: new Date().toISOString(),
    event_type: { tracking_type: data.eventType },
    user: { email: data.hashedEmail, external_id: data.hashedExternalId },
    event_metadata: { uuid: data.eventId, currency: data.currency, value_decimal: data.value }
  }]
};
sendHttpRequest('https://ads-api.reddit.com/api/v2.0/conversions/events/' + data.pixelId, {
  method: 'POST',
  body: JSON.stringify(event),
  headers: {
    'Content-Type': 'application/json',
    'Authorization': 'Bearer ' + data.accessToken
  }
});

Reddit matches on email and external_id. Click ID matching uses rdt_cid; capture and forward following the click ID pattern.