Impact Radius Destination

Segment makes it easy to send your data to Impact Radius (and lots of other destinations). Once you've tracked your data through our open source libraries we'll translate and route your data to Impact Radius in the format they understand. Learn more about how to use Impact Radius with Segment.

Getting Started

To get started, you will need to ensure your account has access to the Impact Radius API and obtain the following keys/tokens from your Impact Radius account:

For tracking on Web, you will need your…

  1. Account SID Your Account SID can be found by clicking on the gear icon in the top right of your Impact Radius Dashboard and selecting Technical Settings.

  2. Authentication Token Can be found in the same place as your Account SID (labeled Auth Token)

  3. Tracking Domain From your Impact Radius Dashboard, click on Tracking Settings > General. The tracking domain should look something like projectname.sjv.io.

For all tracking sources (web, mobile, server) you will need your…

  1. Campaign ID Your campaign id will be displayed in the top right corner of your Impact Radius dashboard. It will be the four numbers next to your campaign name.

Track

Web / Server

To track events from web / server locations, you will need to choose the Action Trackers you would like to map your Segment events to. Action Tracker / Segment Event mappings are established in your integration settings.

Click Id

Impact Radius passes a query parameter named CLICKID as a part of their tracking urls. The value associated with this parameter is used to perform attribution analysis on their end. By default, if you are using our Javascript source, we will automatically look for this parameter and if it exists, pass it as a contextual property of any events that happen on the same pageview. However, we do not cache this id anywhere so any subsequent events the user takes outside of that initial pageview will not have the ClickId as part of the event.

Impact Radius recommends you cache this value in the users browser (using a cookie or local storage) if you want to attribute any subsequent user interactions to the initial ad source. We ask that you continue doing this if you are using this integration to track web conversions and pass the cached id as part of the context.referrer object. It should look like this:

analytics.track('Some Conversion Event' { someProperty: true }, {
  context: {
    referrer: {
      type: 'impactRadius',
      id: <CACHED_CLICK_ID>
    }
  }
})

Mobile

To track events from mobile, you will need to map your mobile event codes in Impact Radius with your Segment events. You can find your Mobile Apps and their associated events/event codes by clicking on Tracking Settings > Mobile Apps in your Impact Radius Dashboard. These event codes need to be mapped to Segment event names as an integration setting.

Property Mappings

Once you have established Action Tracker / Mobile Event code mappings, we will perform the following data translations laid out in the tables below. Please review these carefully as you may need to add some properties to your Segment events to conform to Impact Radius’ API requirements. You can learn more about our spec’d event properties here.

Note: Some of the properties listed below are documented as properties of our Order Completed event specification. You do not need to use our Order Completed event to leverage this integration but you may need to add some of the properties that are traditionally included in that event “type” to the events that you would like to integrate with Impact Radius.

Mobile Sources

These mappings will occur for data originating from mobile devices.

Segment PropertyImpact Radius ParameterRequired
context.app.namespaceAppPackageTrue
context.device.adTrackingEnabledAppleAdTrackFalse
context.app.nameAppNameFalse
context.app.versionAppVerFalse
context.device.manufacturerDeviceMfrFalse
context.device.modelDeviceModelFalse
context.network.carrierDeviceCarrierFalse
context.os.nameDeviceOsFalse
context.os.versionDeviceOsVerFalse
context.localeDeviceLocaleFalse
context.ipIpAddressCarrierFalse
context.network.wifiIpAddressWifiFalse
context.location.latitudeLatitudeFalse
context.location.longitudeLongitudeFalse

All Sources

These mappings will occur for events originating from any data source (Web, Mobile, Server)


Segment PropertyImpact Radius ParameterRequired
context.traits.statusCustomerStatusFalse
context.traits.address.cityCustomerCityFalse
context.traits.address.countryCustomerCountryFalse
context.traits.emailCustomerEmailFalse
context.traits.postalCodeCustomerPostCodeFalse
userIdCustomerIdFalse
properties.orderIdOrderIdFalse
properties.couponOrderPromoCodeFalse
properties.discountOrderDiscountFalse
properties.revenueOrderSubTotalPreDiscountFalse
properties.totalOrderSubTotalPostDiscountFalse
properties.shippingOrderShippingFalse
properties.taxOrderTaxFalse
properties.currencyCurrencyCodeFalse
context.userAgentUserAgentFalse
context.ipIpAddressFalse
properties.products[i].brandItemBrand${i}False
properties.products[i].priceItemPrice${i}False
properties.products[i].nameItemName${i}False
properties.products[i].skuItemSku${i}True (For Sale Conversions)
properties.products[i].categoryItemCategory${i}True (For Sale Conversions)
products[i].quantity * products[i].priceItemSubTotal${i}True (For Sale Conversions)

We integrate with Impact Radius’ mobile attribution capabilities via our Deep Link Opened event. When a Deep Link Opened event is fired we will first check to see if the referrer url (sent as the url property of the properties object) matches your Impact Radius tracking domain. If so, we will look for the following contextual properties and pass them as metadata to Impact Radius

Segment PropertyImpact Radius Parameter
context.ipdevice_ip
context.localelocale
context.app.nameapp_name
context.app.namespacepackage_name
context.app.versionapp_version
context.device.modeldevice_model
context.device.manufacturerdevice_brand
context.os.versionos_version
context.network.carrierdevice_carrier
context.location.latitudegeo_latitude
context.location.longitudegeo_longitude
context.campaigninstall_referrer
context.device.advertisingIdappleifa
context.device.advertisingIdgoogleaid

Personas

You can send computed traits and audiences generated through Segment Personas to this destination as a user property. To learn more about Personas, reach out for a demo.

For user-property destinations, an identify call will be sent to the destination for each user being added and removed. The property name will be the snake_cased version of the audience name you provide with a true/false value. For example, when a user first completes an order in the last 30 days, we will send an identify call with the property order_completed_last_30days: true, and when this user no longer satisfies we will set that value to false.

When the audience is first created an identify call is sent for every user in the audience. Subsequent syncs will only send updates for those users which were added or removed since the last sync.

Supported Sources and Connection Modes

WebMobileServer
📱 Device-based
☁️ Cloud-based

To learn more about about Connection Modes and what dictates which we support, see here.

Settings

Segment lets you change these destination settings via your Segment dashboard without having to touch any code.

Account SID

Your Impact Radius Account SID. This can be found by clicking on the gear icon in your Impact Radius dashboard and selecting API Access. Please contact your Impact Radius support team if your are having issues finding this.

Action Trackers

This setting is used to map your Segment event names to Impact Radius Action Trackers. Please enter the name(s) of the Segment track events you would like to use on the left and the Action Tracker Id’s they should integrate with on the right. Please reference our documentation for more info.

Authorization Token

Your Impact Radius Authorization Token. This can be found by clicking on the gear icon in your Impact Radius dashboard and selecting API Access (it will be labeled Auth Token). Please contact your Impact Radius support team if your are having issues finding this.

Campaign ID

Each Segment data source needs to be associated with an Impact Radius Campaign ID. This ID can be found in the top right corner of your Impact Radius dashboard. It is the number next to the name of your Impact Radius project.

Mobile Events

This setting is used to map your Segment events to your Mobile App Events in Impact Radius. Each mapping consists of the Segment event name and the corresponding App ID and Event Code you would like to map it to. Please reference our documentation for more info.

Tracking Domain

Your Impact Radius tracking domain is used to properly attribute conversion events. To find yours, from your Impact Radius dashboard click on Tracking Settings > General. It should look like projectname.sjv.io.


If you have any questions, or see anywhere we can improve our documentation, please let us know!