Adobe Analytics web device mode

Configure web device mode settings for an Adobe Analytics destination.

Find the open source JavaScript SDK code for this destination in the GitHub repository.


We initialize appmeasurement.js or mediaSDK.js according to the settings in the RudderStack dashboard.

RudderStack first checks if any global properties are set in window.s_account or window.s objects. If already present, they will be used. Otherwise, RudderStack uses the Report Suite IDs, Tracking Server URL, and Tracking Server Secure URL (optional) as set in the RudderStack dashboard.

Refer to the Dashboard Settings guide for more information on these settings.

If Marketing Cloud Organization ID is set in the dashboard, RudderStack initializes visitorApi.js and sets the ID in window.Visitor.getInstance(<Your Marketing Cloud Org Id>).


RudderStack sends a page view event to Adobe Analytics whenever you make a page() call.

A sample page call is as shown:

// Passing page category, name and properties"category", "name", {
  path: "path",
  url: "url",
  title: "title",
  search: "search",
  referrer: "referrer",

If this call is made the pageName of the window.s variable will be set as Viewed Page name. RudderStack also sends other information like referrer,url, etc.

The mappings done in the RudderStack dashboard will be set as context data, eVars, hiers, lists and props for every page call. The t() method is called to compile all variables set and send them to Adobe Analytics.


According to the mapping done in RudderStack, the events can be sent as particular Adobe Events.

The track events for Adobe can be broadly categorized in 3 types:

  1. Normal track events
  2. Ecommerce track events
  3. Video type (Heartbeat) track events
For the regular and video type (Heartbeat) track events, it is necessary to map the events in the RudderStack dashboard.

For ecommerce track events, if the events fall under the following mapping they will be sent accordingly. Otherwise, the mapping should be done in the dashboard.

For more info on RudderStack ecommerce events, see the Ecommerce Events Specification.

The mapping is as shown:

Rudder ecommerce eventAdobe event
product viewedprodView
product list viewedprodView
product addedscAdd
product removedscRemove
order completedpurchase
cart viewedscView
checkout startedscCheckout
cart openedscOpen
opened cartscOpen

A sample track call is as shown:

rudderanalytics.track("Track me", {
  category: "category",
  label: "label",
  value: "value",

Questions? Contact us by email or on Slack