Implement the Experience Cloud Identity Service for Analytics

These instructions are for Analytics customers who want to use the Experience Cloud Identity Service and do not use Dynamic Tag Management (DTM). However, we strongly recommend that you use DTM to implement the ID service. DTM streamlines the implementation workflow and automatically ensures the correct code placement and sequencing.

Step 2. Add the Visitor.getInstance function to the ID Service Code

Previous versions of the ID service API placed this function in a different location and required a different syntax. If you are migrating from a version prior to
version 1.4
, note the new placement and syntax documented here.

Code in ALL CAPS is a placeholder for actual values. Replace this text with your Organization ID, tracking server URL, or other named value.

Part 1: Copy the Visitor.getInstance function below

var visitor = Visitor.getInstance("INSERT-MARKETING-CLOUD-ORGANIZATION-ID-HERE", {
trackingServer: "INSERT-TRACKING-SERVER-HERE", // same as s.trackingServer
trackingServerSecure: "INSERT-SECURE-TRACKING-SERVER-HERE", // same as s.trackingServerSecure
// To enable CNAME support, add the following configuration variables
// If you are not using CNAME, DO NOT include these variables
marketingCloudServer: "INSERT-TRACKING-SERVER-HERE",
marketingCloudServerSecure: "INSERT-SECURE-TRACKING-SERVER-HERE" // same as s.trackingServerSecure
});

Part 2: Add function code to the VisitorAPI.js file

Place the

Visitor.getInstance

function at the end of the file after the code block. Your edited file should look like this:

/*
========== DO NOT ALTER ANYTHING BELOW THIS LINE ==========
Version and copyright section
*/
// Visitor API code library section
// Put Visitor.getInstance at the end of the file, after the code library
var visitor = Visitor.getInstance("INSERT-MARKETING-CLOUD-ORGANIZATION-ID-HERE", {
trackingServer: "INSERT-TRACKING-SERVER-HERE", // same as s.trackingServer
trackingServerSecure: "INSERT-SECURE-TRACKING-SERVER-HERE", // same as s.trackingServerSecure
// To enable CNAME support, add the following configuration variables
// If you are not using CNAME, DO NOT include these variables
marketingCloudServer: "INSERT-TRACKING-SERVER-HERE",
marketingCloudServerSecure: "INSERT-SECURE-TRACKING-SERVER-HERE" // same as s.trackingServerSecure
});

with your Experience Cloud organization ID. If you do not know your organization ID, you can find it on the Experience Cloud administration page. See also,
Administration - Core Services
. Your edited function could look similar to the example below.

var visitor = Visitor.getInstance("1234567ABC@AdobeOrg", { ...

Do not

change the case of the characters in your organization ID. The ID is case-sensitive and must be used exactly as provided.

Step 4: Add your tracking servers to Visitor.getInstance

Tracking servers are used for Analytics data collection.

Part 1: Find your tracking server URLs

Check your

s_code.js

or

AppMeasurement.js

files to find the tracking server URLs. You'll want the URLs specified by these variables:

s.trackingServer

s.trackingServerSecure

Part 2: Set tracking server variables

To determine which tracking server variables to use:

Answer the questions in the decision matrix below. Use the variables that correspond to your answers.

Step 6: Add Visitor API code to the page

It must execute before AppMeasurement and the code for other Experience Cloud solutions.

Move this code into production after testing and verification.

Step 7: (Optional) Configure a grace period

If any of these use cases apply to your situation, ask
Customer Care
to set up a temporary
grace period
. Grace periods can run for up to 180-days. You can renew a grace period if required.

Partial Implementation

You need a grace period if you have some pages that use the ID service and some pages that do not, and they all report into the same Analytics report suite. This is common if you have a global report suite that reports across domains.

Discontinue the grace period after the ID service is deployed on all your web pages that report into the same report suite.

s_vi Cookie Requirements

You need a grace period if you require new visitors to have an s_vi cookie after migrating to the ID service. This is common if your implementation reads the s_vi cookie and stores it in a variable.

Discontinue the grace period after your implementation can capture the MID instead of reading the s_vi cookie.