Reddit Ads
Platform Summary
Reddit CAPI conversion event contracts.
Scope
Primary execution surface: server.
Developer Source Map
| Source | Reason |
|---|---|
| Reddit Ads API v3 OpenAPI | Event Contracts; events, payload, transport |
| Reddit CAPI Direct Integration | events, payload, integration contract |
| Reddit Match Keys | User Data Contracts; user data, normalization, hashing |
RudderStack Cross-Check
RudderStack is used here only as secondary engineering evidence for discovery and cross-check.
| Destination | Type | Link |
|---|---|---|
reddit | Discovery lead | source |
Verified Contracts
Event Contracts
| Object / Event | Field | Applies To | Type | Requirement | Exact Format | Normalization | Hashing | Examples | Caveat | Primary Source | Status | Confidence |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
conversion_event | action_source | server | string | Required | One of WEBSITE, APP, OTHER, PHYSICAL_STORE. | Not clearly specified | Not clearly specified | ["WEBSITE","APP","OTHER","PHYSICAL_STORE"] | Required enum field in ConversionEvent schema. | Reddit Ads API v3 OpenAPI | Verified | High |
conversion_event | click_id | server | string | Recommended | Reddit click identifier string for attribution. | Not clearly specified | Not clearly specified | - | Recommended for stronger matching/attribution. | Reddit Ads API v3 OpenAPI | Verified | Medium |
conversion_event | event_at | server | integer | Required | Unix epoch timestamp in milliseconds. | Not clearly specified | Not clearly specified | - | Required field in ConversionEvent schema. | Reddit Ads API v3 OpenAPI | Verified | High |
conversion_event | event_source_url | server | string | Optional | URL where website event occurred. | Not clearly specified | Not clearly specified | - | Website events should provide event source URL for domain parsing. | Reddit Ads API v3 OpenAPI | Verified | High |
conversion_event.metadata | conversion_id | server | string | Optional | Unique event identifier for deduplication. | Not clearly specified | Not clearly specified | - | Used in deduplication guidance. | Reddit Ads API v3 OpenAPI | Verified | High |
conversion_event.metadata | currency | server | string | Optional | ISO 4217 currency code for monetary events. | Not clearly specified | Not clearly specified | USD | Currency contract for value-carrying events. | Reddit Ads API v3 OpenAPI | Verified | High |
conversion_event.metadata | value | server | number | Optional | Non-negative numeric value for monetary events. | Not clearly specified | Not clearly specified | 123.45 | Value contract for monetary events. | Reddit Ads API v3 OpenAPI | Verified | High |
conversion_event.type | custom_event_name | server | string | Conditional | Required when tracking_type is CUSTOM; UTF-8 string, max length 64. | Not clearly specified | Not clearly specified | - | Conditional custom event naming rule. | Reddit Ads API v3 OpenAPI | Verified | Medium |
conversion_event.type | tracking_type | server | string | Required | Tracking type enum (e.g., PAGE_VISIT, PURCHASE, LEAD, CUSTOM). | Not clearly specified | Not clearly specified | - | Required inside event type object. | Reddit Ads API v3 OpenAPI | Verified | High |
Candidate / Needs Review Items
User Data Contracts
| Object / Event | Field | Applies To | Type | Requirement | Exact Format | Normalization | Hashing | Examples | Caveat | Primary Source | Status | Confidence |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
conversion_event.user | email | server | string | Optional | Email can be sent unhashed or pre-hashed SHA-256 (64 lowercase hex) after canonicalization. | lowercase | SHA-256 (when pre-hashed) | <sha256(alice@example.com)> | Match key normalization and hashing guidance is documented in CAPI docs. | Reddit Match Keys | Needs manual review | Medium |
conversion_event.user | external_id | server | string | Optional | Advertiser-defined persistent identifier; unhashed or pre-hashed accepted. | Not clearly specified | SHA-256 (recommended when pre-hashed) | - | External ID guidance in Reddit match key docs. | Reddit Match Keys | Needs manual review | Medium |
conversion_event.user | phone_number | server | string | Optional | Phone number can be sent unhashed or pre-hashed SHA-256 (64 lowercase hex); E.164 input is documented. | lowercase; E.164 | SHA-256 (when pre-hashed) | <sha256(16505551234)> | Phone match key normalization guidance requires manual implementation review. | Reddit Match Keys | Needs manual review | Medium |
Excluded Items
No excluded rows in this revision.
Last Reviewed
2026-03-31