Visitor stitching is a form of identity resolution that works across platforms, devices, and browsers to associate activity to the same visitor. This article describes the different forms of identity resolution, how AudienceStream stitches visitors, and how to use the Visitor ID attribute to configure effective visitor stitching.

In this article:

Table of Contents Placeholder


A basic form of identity resolution, which makes use of the utag_main_v_id cookie, is enabled by default when the Tealium Collect tag is configured in Tealium iQ. This cookie allows for intra-browser session stitching by providing a unique ID for the visitor. This associates each session within that browser to the same visitor (until the browser's cookies are cleared). This functionality is limited to a single browser.

To support inter-browser, cross-platform, and cross-device identity resolution, AudienceStream offers a feature called visitor stitching. Visitor stitching requires an identifier other than the utag_main_v_id cookie that can be obtained consistently on any platform. In AudienceStream these secondary identifiers are called Visitor ID attributes. This

Visitor stitching can only be enabled by Tealium Support. Visit Support Desk to request that visitor stitching be enabled for your profile.

Important Notes

Here are some important notes about visitor stitching:

  • Uniqueness
    A visitor ID must have at least 3 unique characters and be at least 6 characters long.
    Learn more about Visitor ID attribute requirements.
  • Case Sensitive
    Visitor ID values are case sensitive so, "" is different from "". If the attribute values contain these variations, use the lower-case enrichment to normalize them.
  • Multiple ID's
    Multiple Visitor IDs are evaluated as an OR condition.
  • Robustness
    We do not support anonymous identifiers while stitching - the IDs should be a guaranteed match to the visitor.
  • Master Visitor Profile
    When multiple visitor profiles are stitched, the original profiles remain and a new master visitor profile is created to combine the stitched profiles.
  • Avoid Test Data
    Be careful not to capture default or test values.
  • Shared ID's
    Before stitching is enabled, determine how to handle shared IDs - such as those used at libraries or universities - so that multiple visitors won't be stitched inadvertently.

What is a Visitor ID?

The Visitor ID is a value that is used to identify a visitor. For example, a Visitor ID might look like "01477ea4d6880019373ccbeb040917051001e00f0093c".

While AudienceStream uses the utag_main_v_id cookie as the main Visitor ID, you can define many secondary Visitor ID attributes. If you define secondary Visitor ID attributes, AudienceStream will scan through previous visitor sessions and try to stitch together those sessions.

Related article: Visitor ID Attribute


In this example, we will use the Facebook ID as a secondary Visitor ID attribute which is made available when a visitor logs into a website using Gigya's consumer identity management platform.

Step 1: Store Secondary ID - Facebook ID

Using Gigya's service, the Facebook ID is made available to Tealium iQ upon login to a website. The ID should be stored as a parameter of the utag_main cookie namespace.


Step 2: Create Rule

Before you create the new Visitor ID attribute, you must create a rule to state when the attribute should be applied.

  1. In AudienceStream, navigate to the Enrich tab.
  2. Select the Rules tab then click the blue "+ Add Rule" button.
  3. Enter the details that define when the Facebook ID is present - in this case it's when the UDO cookie "utag_main_fb_id" exists (is assigned) and does not equal 0.


Step 3: Create String Attribute

Create a temporary attribute to use for verification. Use a String attribute at first (instead of a Visitor ID) so that you can verify the data in Audience Discovery and ensure that there are no issues with duplicate Visitor IDs. If you create a Visitor ID attribute without verifying data, you run the risk of improperly stitching visitor profiles. To set up this attribute:

  1. Navigate to the AudienceStream Attributes screen .
  2. Click +Add Attribute. The attribute dialog will appear.
  3. Select String as the data type.
  4. Enter a title.
  5. Apply the rule you created above.


Step 4: Publish to Production

Publish the rule and attribute to production so that AudienceStream can start collecting the data. The number of users on the website and the type of data being collected will determine how long before you can verify the data in AudienceStream. If you're using a 1st-party cookie that is available for every visitor, wait about 15 minutes and then verify. If you're using a Facebook ID and only a small portion of visitors log in with Facebook, then some amount of data collection, from several hours up to a day, must occur before you'll be able to verify.

Step 5: Verify Data

Navigate to Audience Discovery and change the perspective of view by selecting the newly created Facebook ID attribute.

Below is an example of a bad visitor ID. Notice how there are 483 users with a Visitor ID of "0". If stitching was enabled then all 483 visitor profiles would be combined into a single visitor profile, which is obviously incorrect. The best way to fix this is to add a condition to the rule that is applied to the attribute and check that the value is not equal to "0".


Below is an example of a good visitor ID. Notice how there are several users with a value of "none" - this is normal as not every visitor will have a visitor ID. There is only a small sample of users that appear to have a duplicate ID. It's almost impossible to tell why the 5 IDs below have 2 users assigned to them, but it is less than 1% of the population, so it is fine to enable Visitor Stitching.


Step 6: Create Visitor ID Attribute

Create a Visitor ID attribute that will get its value from the previous Facebook ID attribute created.

Give the Visitor ID attribute a title and note, then apply the newly created rule.


Save and publish to production to start recording data.

Step 7: Enable Visitor Stitching

Now that you've completed the appropriate verification of data, visit Support Desk to ask for Visitor Stitching to be enabled for the desired account/profile.

See It In Action


Once the configurations are live, an example of stitching would occur as follows:

  1. A visitor logs into the website on their work computer during lunch, using Facebook. Visitor profile "A" is created and captures the secondary Visitor ID. Eventually the session ends.
  2. The same visitor later logs into the website from their mobile device during dinner, using Facebook. Visitor profile "B" is created and captures the secondary Visitor ID.
  3. AudienceStream then performs the look-up to determine if the secondary Visitor ID from "B" exists in another visitor profile. When AudienceStream determines that profile "A" has the same Visitor ID, then visitor profiles "A" and "B" are stitched.


Data Enrichment

Once logged in with Facebook, two new data layer variables are created:["va._secondary_ids"] will exist with an array value of ["5435_1469626503"]["va.secondary_ids.5435"] will exist with a string value of "1469626503"

The "5435" in the attribute variable name is the ID assigned to the "Facebook ID" attribute within AudienceStream. You can find this number by viewing the attribute details within Tealium iQ where the UID is stated. Notice how the variable name uses "Secondary ID" to signify the connection to the master Visitor ID.

Tags (1)