This page explains in detail how to configure your Adobe Analytics segment target settings to customize how your segment views are formatted when sent to Adobe Analytics.
Segment uses a user action data model that uses different types of calls to track the various activities of a user on a website or app. Adobe Analytics uses page views as the basic unit of activity and specific data variables such as "props", eVars, lVars, and hVars to add detail for further analysis. The Adobe Analytics target configuration in the Segment app allows you to create mappings between properties in your segment calls and Adobe's expected format.
Above: Mobile implementations use theADBMobileConfig.json
to store settings that you would otherwise enter into the Adobe Analytics target settings in the Segment app. This file contains the report suite ID, timestamp option, secure tracking server URL, tracking server URL, and the "Use secure URL for server-side configuration" setting. Watch theAdobe Analytics Mobile Documentation SegmentLearn more.
Implementation of success events.
You can choose whether to use themautomatic mapping of ecommerce specificationswhen you start sending success events to Adobe, which means you don't need to set up mappings in Segment and Adobe. If you need event support beyond thatE-Commerce Standard SpecificationFor example, to support more or different types of events, you can implement custom events.track eventsopage views.
Using Standard Ecommerce Spec Events
The Adobe Analytics goal works automatically with the default value of SegmenteCommerce Specification. The segment automatically maps the following events to Adobe Analytics events when using a device mode ("bundled") target for iOS, Android, Analytics.js, or when using disaggregated events from alibraryserver.
Segment event name | Adobe Analytics event name |
product seen list of viewed products | prodView |
added product | add |
removed product | scEntfarren |
seen cart | scVer |
payment started | to check |
order completed | kaufen |
open cart | open |
The segment sends the eCommerce event data to Adobe in the same way that a standard tracking event would send it. These e-commerce events are automatically attributed and sent to Adobe Analytics along with the product description data. If you implement segment events using the eCommerce specification and naming conventions, do soNOyou need to create a mapping in your segment's Adobe target configuration. you just have to matchevent namesif you want to set it as a value of oneVar
. To know more about the configurationeVars
verthe section below on setting conversion variables in your goal settings.
Ecommerce properties likenumber of order
Yproducts
they are also sent automatically. However, if you use other custom properties and want to send them to AdobeeVar
,support
,hVar
, owas
The variable, youAgainYou must map these as properties in your segment target settings in Adobe Analytics.
Example with segment e-commerce specification
given sampleorder completed
The segment event below shows the original track event that is mapped to the Adobe event on the right tab.
JavaScript Trace Event Payload
JSON configuration
Outgoing server-side XML payload
Analyst.lane('order completed', { number of order: '50314b8e9bcf000000000000', total: 30.00, revenue: 25.00, Shipment: 3.00, Tax: 2.00, Discount: 2,50, Coupon: 'hasbros', Split: 'American dollar', products: [ { ID: '507f1f77bcf86cd799439011', art not: '45790-32', Name: 'Monopoly: 3rd Edition', Preis: 19, Crew: 1, Category: 'games' }, { ID: '505bd76785ebb509fc183733', art not: '46493-32', Name: 'go to the professional', Preis: 99, Crew: 2, Category: 'electronic' } ]});
{ "reportSuiteId":"segment test report set", "monitorUrlServer":"jimsbrims.sc.omtrdc.net", "trackingServerSecureUrl":"jimsbrims.sc.omtrdc.net", "use secure server url":INCORRECT, "time stamp option":"Disabled People", "enable tracking page name":TRUE, "Product Identifier":"Name", "disableVisitorId":INCORRECT, "preferVisitorId":INCORRECT, "sendBothTimestampVisitorId":INCORRECT, "Events":[ ], "custom delimiter":{ }, "RemoveFallbackVisitorId":INCORRECT, "use legacy link name":TRUE}
<request> <scXmlVer>1.0</scXmlVer> <ReportSuiteID>segment reporting suite</reportSuiteID> <TrackingServerUrl>jimsbrims.sc.omtrdc.net</trackingServerUrl> <visitor ID>Benutzer Identification</visitor ID> <page name>none</page name> <page URL>http://www.misitio.com</pageURL> <IP address>0.0.0.0</IP address> <currency code>American dollar</currencyCode> <context data> <totals>30</totals> <Transaktions-ID>50314b8e9bcf000000000000</transaktions-ID> <purchase ID>50314b8e9bcf000000000000</purchase ID> <income>25</income> <Send>3</shipping> <tax>2</tax> <Discount>2.5</discount> <vale>hasbros</Coupon> <currency>American dollar</currency> <a> <Action>order completed</Action> <day time>0</TimeDay> <business day>3</day of the week> </a> </contextData> <link type>o</link type> <Link URL>http://www.misitio.com</enlaceURL> <Link Name>Link Name - http://www.mysite.com</link name> <Events>kaufen</Events> <Products>Games;Monopoly: 3rd Edition;1;19.00;Electronics;Go Pro;2;198.00</Products></request>
If you use Segment's Analytics.js device mode integration, Segment does the following:
-
prayers
window products
with the product description string.The product description is a semicolon-delimited string per product, additionally separated by commas if you have multiple products. The string format is per product.
[Category];[Name];[Quantity];[Total]
. The total is calculated by multiplying the price and quantity of each product.(Video) Sequential Segmentation in Adobe Analyticsuse: You can choose whether to assign the
Name
,art not
, oID
for each item in theproducts
Row. Alternatively, you can also submit product descriptions[Category];[SKU];[Quantity];[Total]
. To set this option, go to your Adobe Analytics settings under Segment, find advanced options and select mappingProduct Identifier. HeName
is the default identifier.For the example above, the segment would be set
window products
A'Games;Monopoly: 3rd Edition;1;19,Electronics;Go Pro;2;198'
.The default fallback value for
Crew
Es1
, and toPreis
Es0
.Important: Do not use this option if there are items on the
products
Arrays have property values that contain commas or semicolons. Adobe Analytics uses these characters as delimiters. -
Update common variables like
Canal
,campaign
,Condition
,zipper
, YName of the page
. These values are set if they exist at the property level, your existing Adobe Analytics variables are already attachedwindows
object thecontext.page.title
(forName of the page
). -
prayers
window.s.events
with the proper Adobe Analytics naming convention. The example above would set this as'kaufen'
. -
Check if the event name is assigned as
eVar
and if so it depends on thatwindows
. -
Checks if other top-level properties (not the element-level custom properties in
products
array) have been assigned to a custom variable in the segment configuration, for exampleeVar
,support
, YhVar
. If so, put them in thewindows
. -
prayers
window.s.purchaseID
Ywindow.s.transactionID
As thenumber of order
, which would be for the previous example'50314b8e9bcf000000000000'
.Please note this is only fororder completed
events.However, the segment checks the
Properties.Currency
-Property to see if you spent any currency in your event. If you haven't, the defaultcurrency code
is configured for side loadAmerican dollar
.Important: collect
transaction ID
, make sure to enable the transaction ID storage setting in yourAdobe Report Suite! -
set the
time stamp
andwindow.s.timestamp
and youtimestamp option(in Adobe settings under Segment) is setTimestamp enabledoTimestamp Optional. -
prayers
window.s.linkTrackEvents
to the Adobe Analytics event name. In the example above, this iskaufen
. -
prayers
ventana.s.linkTrackVars
This is a string of keys that Adobe Analytics reads fromwindows
object when you submit the request. For the example above, the value oflinkTrackVars
would be hired as"Page Name, Events, Products, Purchase ID, Transaction ID, Timestamp"
. -
Finally, send the event
window.s.tl(true, 'or', 'order complete');
.
Creating custom trace events
You can send custom trace events to Adobe to create events that are not in the standard eCommerce specification. Segment strongly recommends that you create a tracking plan for both Segment and Adobe Analytics events.BeforeYou submit any event or property to Adobe. Once you have created your monitoring plan, you can use the listevents
to configure a mapping in the segment target configuration UI.
When configuring the mapping, the tracking event list must be defined in both Adobe Analytics and the segment target configuration UI, including the properties to be sent as custom data variables.
that means yourhas toMap each event and property to a corresponding Adobe AnalyticsFall
,support
, oeVar
.
The following image shows an example of how you can assign an event and the corresponding custom variables in the segment target configuration UI:
Use the example configuration in the image above when running the following sample trace call:
Analyst.lane('watched video', { The plan: 'libre', video name: 'the uptrend'});
Here's what happens with this event, which is sent by the browser using Segment's Analytics.js library or other device mode integration:
-
The first segment checks if the event name,
'Video viewed'
, is assigned in your segment settings for Adobe Analytics. If you haven't configured a mapping for this event name, Segment does nothing and cancels the call. If a mapping is configured, a segment is establishedwindow.s.linkTrackEvents
Ywindow.s.events
in this example to the name of the corresponding Adobe Analytics event as specified in the mapping'Event 1'
. -
Next, when configuring fortimestamp optionanyTimestamp enabledoTimestamp Optional, the segment maps the
time stamp
Awindow.s.timestamp
. -
If the properties in the event map or in the
windows
Object updates segment common variables likeCanal
,campaign
,Condition
,zipper
with the track callout values. -
Next, Segment checks if the segment event name,
watched video
is assigned to aeVar
. WhyEsAs shown in the example above, the segment setsventana.s.eVar3
and'Video viewed'
. -
The segment checks if other properties are assigned to a
support
,eVar
, ohVar
. For the above exampleventana.s.prop1
is set as'frei'
Yventana.s.eVar4
is set as'The uptrend'
.(Video) Segment containers in Adobe Analytics -
Then try to set the segment
window.s.pagename
to one of the following values in order of priority:
Properties.PageName
(for backward compatibility reasons)Options.Page Name
(if you already havewindow.s.pagename
defined on the website)context.page.title
(which is automatically tracked by Analytics.js and always has a value) if you don't set anotherName of the page
assignments,window.s.pagename
is set to the value of<Title>
Label on the page where the.Lane()
The call was picked up.
-
Segment then creates a joined comma delimited string of variable keys to send
ventana.s.linkTrackVars
. This tells Adobe Analytics which properties in thewindows
Object to send with this event. In the example above, the string would be'eVar3,events,pagename,timestamp,eVar3,Prop1'
. -
Finally, Segment uses Adobe Analytics to remove the request
window.s.tl(true, 'o', 'Angesehenes Video')
use:TRUE
sets a500ms
Delay to give your browser time to clear the event. It also tells Adobe that this event is more than just ahref
Shortcut. He'Ö'
representa'Others'
, in contrast with'D'
for'Discharge'
Y'mi'
for'Exit links'
. The last parameter is the name of the link as it appears in Adobe Analytics reports.
Create page views
By default, the segment snippet contains an empty page view. Pageviews are more like Adobe's native tracking methodology and don't require as extensive a mapping process.
if you make onepage of book
Call the following, which Segment does from the browser when using Segment's Analytics.js or other device-mode integration:
-
Set Adobe ownership
window.s.pagename
For himName
of the page viewed. A segment by default.bookpage()
call sets this property asnot defined
since no parameters are passed, but if you use aName
as.page('Home')
, sets of segmentswindow.s.pagename
A'Heim'
.use: If you miss a
Name
, Adobe Analytics uses theURL
as the default page name. -
Set Adobe ownership
window.s.events
For himName
of you.page(<Name>)
Financial support. -
Checks if the pageview is associated with a
Benutzer Identification
from a previous one.identify()
Financial support. If so, the segment sets theBenutzer Identification
andventana.s.visitorID
.
IMPORTANT: Adobe Analytics does not support setting the Visitor ID when sending a time-stamped call. Therefore, Segment first checks if yourtimestamp optionEsDisabled person
YexistenceBenutzer Identification
exists in the event and only then is it setventana.s.visitorID
.
-
Checks some general properties and sets them in the
windows
Object:Canal
campaign
Condition
zipper
The segment first uses the
Characteristics
You sent me.bookpage()
Financial support. An example page call to set the above four properties would be:Analyst.page of book({ Canal: 'laptops', campaign: '0813', Condition: 'Rhode Island', zipper: '02818'});
For
campaign
, the segment uses thesegment specificationand checksContext.Campaign.Nombre
first before checkingProperties.Campaign
.If you already have one of these properties for your existing Adobe Analytics instance on the page (
window channel
,window.s.campaign
etc.), the segment uses it as the default value. This allows you to easily set default values for all your web pages, but still change them programmatically for each page if necessary. -
And youtimestamp optionanyTimestamp enabledoTimestamp Optional, the segment adds the
time stamp
Awindow.s.timestamp
.Make sure this setting matches yoursin factTimestamp settings in Adobe Analytics for the same Report Suite ID. -
Checks if page view properties are mapped to Adobe Analytics custom variables, e.g.
eVar
,accessories
, YhVar
.Given the following mapping configuration:
When you enter the following page:
Analyst.page of book({ Browser: 'chrome', search term: 'swim shorts', Section: 'swimsuits'});
The segment sets the following properties for the
windows
Object:window.s.prop1 = 'chrome'
window.s.eVar7 = 'Swim shorts'
ventana.s.eVar3
is set to theURL
the page where the call was made (.bookpage()
automatically sets aURL
Property)window.s.here1 = 'swimsuit'
-
Finally, Segment uses Adobe Analytics to clear the page view request
ventana.s.t()
.
Conversion Variables - eVars
Custom conversion variables, also known as eVars, are Adobe's way of segmenting conversion success metrics into custom marketing reports. For more information, seeAdobe documentation on eVars and how to configure them.
You must set up an eVar mapping in your segment's target configuration to send eVars to Adobe on follow-up and page calls. When configuring the mapping, the list of eVars must be defined in the Adobe Analytics user interface. Map your Adobe Analytics eVar names to the segment property names you use in your segment events. Enter a segment property name on the left and an Adobe Analytics eVar number on the right. You can see the events and properties of your segment in your stream.
An example of eVar mapping in the segment target configuration UI should look like this:
Merchandising-Eventos
Merchandise event setup allows you to set eVars and events per product within the product chain and supports increment and currency events. This provides strong product chain support, which you can learn more about.in the Adobe Analytics Components Guide.
According to the Adobe documentation, Segment formats theto the products
and[Category][Item][Quantity][Total][Incrementor][Commodity String]
. The segment automatically assigns the product category, quantity, and total. He[Article]
is the default product name. If you want to use the SKU or ID instead, you can change that using theProduct Identifier Configuration.
The success event increment and chain-to-market are determined by your Adobe segment's target configuration. These are based on the segment event, the Adobe Analytics event, and the segment property. You do not need to select a booster for merchandising events at the product level. You can use the merchandising chain to send segment property values to Adobe as eVars. Each eVar is separated from the next eVar by an a|
.
The Segment Adobe Analytics Merchandising configuration is done as follows:
- Looks up the name of the segment event if a
lane
call, or forproperty.event name
when apage of book
Financial support. - Maps to the Adobe event that will be sent as a currency or increment event.
- Reads whether the event is scoped to product or event level.
- Optional: sets a value for the event. This value is the increment or currency that is passed to Adobe. If you don't specify a value, Segment sends the event without one and Adobe understands it as an increment of
1
. If you configure a value and the value does not exist in thelane
opage of book
call, Segment does not send the event to Adobe. - Map of the product eVars to establish for the product chain. This is only supported at the product level, as expected by Adobe Analytics.
use: Some events in the ecommerce spec do not use the "products" array and the product information is in the top level property object, e.g.product added. Be sure to specifyproperties.key
as segment key in the map by adding an eVar foradded product,removed product, Yproduct seen.
Let's take the following example:
The configuration in the example image above configures aorder completed
Thread event that sends Adobe Analytics:
event 1
Ins.events
with the passed value ofProperties.Increase
.evento2
Andto the products
with the passed value ofProperties.Products.Price
.- the value for
Properties.Products.StatePrice
IneVar1
Andto the products
. - the value for
Properties.Products.Coupon
IneVar2
Andto the products
.
considerations:
- segment also enters
evento2
worthlesss.events
, as this is a requirement for Adobe. - The segment is still mapped to the Adobe preset
add
Case. view defaultE-Commerce-Spec-Events. - For example, Segment uses dot notation for product values.
products.priceStatus
look up the properties for this value. This includes the product chain. So if you want a nested value in the products, you would setproducts.priceStatus
.
After configuring the example mapping above, send the relevant event to Segment.
For example, in a Node.js environment, Segment sends:
Analyst.lane('order completed', { number of order: '50314b8e9bcf000000000000', total: 30.00, revenue: 25.00, Shipment: 3.00, Tax: 2.00, Discount: 2,50, Coupon: 'hasbros', Split: 'American dollar', growth: 1, products: [ { ID: '507f1f77bcf86cd799439011', art not: '45790-32', Name: 'Monopoly: 3rd Edition', Preis: 34,99, Crew: 1, Category: 'games', price status: 'promotion', Coupon: 'MAY OFFERS' } ] });
Hes.events
the call goes throughkaufen
YEvento1=1
, Yto the products
goes intoEvento2 = 34,99
Yevar1=Promotion|evar2=MAYDEALS
.
The resulting request payload for Adobe looks like this:
<Events>purchase, event1=1, event2</Events><Products>Games;Monopoly: 3rd Edition;1;34.99;event2=34.99;eVar1=Promotion|eVar2=MAYDEALS</Products>
Product Identifier Configuration
Adobe Analytics only accepts a single product identifier. Use this option in Settings to choose whether Segment sends the product name, ID, or SKU.
example of page
You can send merchandising events on page views. Send<Events>
Andpage of book
, you must use theThe integration
object of passing aevents
String for Adobe Analytics. The segment merges the event configured within the configuration with the array passed in. The following example is passedadd
, since this is not automatically assignedpage of book
.
Analyst.page of book({ Benutzer Identification: '098094356890', Fall: 'added product', Characteristics: { cart_id: '124efsdovnt4edvsldfpf', Product ID: '342039402fsl12njfs', art not: 'G-32', price status:'promotion', growth: I, Category: 'games', Name: 'The people of Catan', mercado: 'Kosmos', variant: 'Cities and Knights', Preis: 34,99, Crew: 1, Coupon: 'MAY OFFERS', Position: 2, URL: 'https://www.ejemplo.com/producto/ruta', image url: 'https://www.ejemplo.com/producto/ruta.jpg' }, The integration: { "adobe analytics": { "events": ["add"] } }, });
Custom Traffic Variables - Accessories
Custom traffic variables, also known as plugins, allow you to correlate custom data with specific traffic-related events in Adobe. For more information on accessories and how to configure them in the Adobe user interface, see the documentationHere. You can assign your segment properties to any of your Adobe Props in your target configuration.
You can send the property value as a string (for example,'beards'
) or as an array (['brady', 'edelman', 'blount']
). By default, if you choose to send them as an array, Segment wires it up to be a pipe (|
) delimited string before sending to Adobe (i.e.'brady|edelman|blount'
). Watch theDocumentation on how to set a custom delimiterLearn more.
Listar variables - lVars
List variables are similar to eVars, except that you can send multiple values for the same event. You can assign your segment properties to each of your list variables in your configuration. For more information about list variables and how to set them in the Adobe user interface, seelist vars documentation.
To represent multiple values in a list, you can pass the property value as a comma-separated string (for example,'brady, edelmann, blount'
) or as an array (['brady', 'edelman', 'blount']
). By default, if you choose to send them as an array, Segment adds it as a comma-delimited string before sending it to Adobe. For information on how to set a custom delimiter, seeDocumentation section to continue about custom delimiters.
custom delimiter
For list and prop variables, you can enter the property value as a comma-separated string ('brady, edelmann, blount'
) or as an array (['brady', 'edelman', 'blount']
). You can set a custom delimiter to be added to the array before sending it to Adobe by typing one in thevariable listoaccessoriesConfiguration in the segment application. By default, if you don't specify a custom delimiter, the slice joins the properties in an array as a comma-delimited string.
Use:You must set the custom delimiter tobothin the Adobe Analytics dashboard and in the Adobe Analytics target settings for segments for each list variable and prop. Do this in the Adobe Analytics dashboard before configuring this mapping in the segment target settings.
The following example shows how to configure custom segment delimiter mapping for a list variable.
When you send an event:
Analyst.lane({ Benutzer Identification: 'Usuario12345', Fall: 'event 1', Characteristics: { list_var1: ['Hola', 'Bump'] }});
Segment utilitylist_var1
inhello|world
before sending it to Adobe. The XML request to Adobe contains<list1>Hello|World<list1>
.
The hierarchy variable - hVars
Hierarchy variables reflect how clients can track "breadcrumbs" or "breadcrumb trails," which are a type of secondary navigation scheme that reveals a user's location on a website or web application. For more information, see the Adobe documentationhere
Variables and how to set them.
Map your Adobe Analytics hVars to the property names you use in your segment's page views. Enter a segment property name on the left and an Adobe Analytics hVar number on the right. You can see your segment's page views and properties in your schematic.
context data variables
Context data variables allow you to define custom variables on each page that can read processing rules. For more information, see the Adobe documentationhow to use adobe analyticscontext data
and use processing rulesto complete the analysis variables from these data.
Segment automatically sends all event properties as contextual data about specific eCommerce events,book page()
,Lane()
, YScreen()
Calls when you use a device mode ("packaging") target for Analytics.js or when you receive disaggregated events from alibraryserver. If you want to send additional context data from your context data object on your segment's payload, you can configure the context data variable mapping in your target configuration to tell the segment which context variables to send to Adobe as source data. context.
use: The context data value cannot be an object or an array, as this is not a data type accepted by Adobe Analytics.
For more information on contextual data settings for iOS and Android, seeSend custom properties sectionInSet up Adobe Analytics for mobile devices. For more information on setting context data for heartbeat events, seeCustom video metadata section.InHow to set up Adobe Analytics Heartbeat.
Segment Target Specific Options
The Adobe Analytics destination offers several ways to configure the behavior using destination-specific options. These are options defined in theThe integration
section of your event payloads and not in the Segment app. To use these options, you must define them as values of an object in the following property of your segment event payload:
The integration: { 'adobe analytics': { // insert options here... }}
Here is an example of alane
Call with him:
Analyst.lane({ Benutzer Identification: '019mr8mf4r', Fall: 'get them all', Characteristics: { caught: 1738 }, The integration: { 'adobe analytics': { // Put custom options here... } } });
The following sections explain each of these options and what they do.
events
This option allows you to map specific Adobe events to individual segment events.
Analyst.lane({ Benutzer Identification: '019mr8mf4r', Fall: 'get them all', Characteristics: { caught: 1738 }, The integration: { 'adobe analytics': { events: ['add', 'evento2'] } } });
IMS-Region
This option allows you to assign events to IMS regions.
use: If you specify this, you must also define aMarketing Cloud Visitor ID
.
Analyst.lane({ Benutzer Identification: '019mr8mf4r', Fall: 'get them all', Characteristics: { caught: 1738 }, The integration: { 'adobe analytics': { Imregion: 'aamlh' } } });
Marketing Cloud Visitor ID
This option allows you to use a specific Marketing Cloud visitor ID (mcvid
) with the event.
Analyst.lane({ Benutzer Identification: '019mr8mf4r', Fall: 'get them all', Characteristics: { caught: 1738 }, The integration: { 'adobe analytics': { marketingCloudBesucher-ID: 'Usuario1234' } } });
visitor ID
This option allows you to assign a default visitor ID to the event.
Analyst.lane({ Benutzer Identification: '019mr8mf4r', Fall: 'get them all', Characteristics: { caught: 1738 }, The integration: { 'adobe analytics': { visitor ID: 'Usuario1234' } } });
Link Name, Link URL, Link Type
This option is only available if you are using a cloud connection mode (also called server-side). This option allows you to customize the link report parameters for link names, link URLs, and link types. The standardlink type
is in the segmento
this is a custom link. Forlink type
You can also choose to passD
omi
for download and exit links. For more detailed information about sending link names, link names, link URLs, and link types using the integration object, see theAdobe Analytics Best Practices section.
Analyst.lane({ Benutzer Identification: '019mr8mf4r', Fall: 'get them all', Characteristics: { caught: 1738 }, The integration: { 'adobe analytics': { link url: 'http://URLNombreEnlacePersonalizado.com', link type: 'mi', linkName: 'custom exit link' } } });