• No results found

Intelligent Tracking

Chapter 7. Privacy Considerations

7.3 Intelligent Tracking

Greater flexibility and configuration for tracking, cookies, and data storage is required to comply with privacy legislation in some regions.

The client library allows clients to configure whether the library set cookies, and what kinds of cookies. Intelligent tracking is used to track individual visitors who have not explicitly opted out.

Cookie suppression and session-only cookie tracking

You can specify a setting through the cmSetCookieSetting(setting) parameter to disable setting of all cookies, only allow session cookies, or enable cookies.

For cmSetCookieSetting(setting), the setting parameter is one of these:

Parameter Value Setting Effect

S Session cookies only Cookies created with

cmSetCookieSetting expire within the session.

D Cookies disabled Currently set cookies in the

suppression list will be removed. Future calls to cmSetCookieSetting does not set cookies and returns true.

Note: This parameter requires use of Intelligent Tracking (cmSetIT).

Example:

<script type="text/javascript">

cmSetCookieSetting("S"); // session cookies only

</script>

Intelligent tracking description

When cookies are disabled, either by a visitor or through the tag library, intelligent tracking is used to track individual visitors, who have not explicitly opted out.

The visitors are tracked by collecting and hashing a set of technical properties from JavaScript variables and HTTP headers. This feature is enabled through the tag library.

To enable intelligent tracking, call the cmSetIT(true) function. To disable intelligent tracking, call cmSetIT(false). Intelligent tracking is disabled by default.

Note: cmSetIT(true)requires the use of cmSetCookieSetting("D") as described in

“Cookie suppression and session-only cookie tracking” on page 69.

<script type="text/javascript">

cmSetIT(true);

</script>

Automatic technical property tag

Normally, a technical property tag is fired with a page view if the cmTPSet cookie is not set to Y, and then the cmTPSet cookie is set so the technical properties tag is not sent again for the visitor's session.

If cookies are disabled, the tag library adds technical properties to a percentage of page view tags. The script generates a random number between 0 and 1. If that number is less than the configured threshold, the technical properties are added to the page view tag.

The threshold for sending technical properties on a page view is set using cm_TPThreshold. A value greater than or equal to 1 always sends the technical properties on a page view, while a value less than 0 never sends a technical property tag. The default value is .10.

<script type="text/javascript">

cmSetupOther({"cm_TPThreshold":"0.5"});

</script>

Note: cm_TPThreshold is only used in combination with cmCookieSetting("D") and cmSetIT(true).

Example

This example shows a correct implementation for cmSetCookieSetting(setting), cmSetIT, and cmTPThreshold.

<head>

<script type="text/javascript" src="//testlibs.coremetrics.com/eluminate.js">

</script>

<script type="text/javascript">

cmSetClientID("99999999",true,"data.coremetrics.com",

"127.0.0.1");

cmSetCookieSetting("D");

cmSetIT(true);

cmSetupOther({"cm_TPThreshold":"0.5"});

</script>

</head>

Opt-out for intelligent tracking

When using Intelligent Tracking, no cookies are set on the visitor browser.

The standard Client Managed opt-out code described in “7.2 Implementing

Opt-Out with IBM Digital Analytics First Party Data Collection Solutions” on page 64 cannot be used to implement visitor opt-out for Intelligent Tracking. To provide visitors the opportunity to opt-out of Intelligent Tracking, the cmSetOptOut function

is provided. This function must be called on each and every page of the web site with the designated value ("A", "Y" or "N").

The opt-out form or other input mechanism used by visitors to make the opt-out, opt-anonymous or opt-in decision must be provided by the web site author: this input code is not provided by IBM. The visitor decision should be persisted by the web site author so that the cmSetOptOut(...) function can be called with

appropriate parameter value from each new page.

v Available parameter values for the cmSetOptOut function:

Parameter value Setting

A Anonymous data collection

Y Total opt-out of all data collection

N No opt-out. Normal data collection

v Script block example:

<script type="text/javascript">

cmSetOptOut("Y"); // total visitor opt-out of data collection on this page

</script>

Appendix A. Category Definition File

To define the category structure and display names for category IDs that you send through tags, you must use a Category Definition File (CDF).

The Category Definition File maps every category ID sent in tags to a display name and a parent category. The file should be uploaded to Digital Analytics through the https://import.coremetrics.com Import GUI, or the FTP account that is configured and managed through the GUI.

Category Definition File Format

The Category Definition File is a comma separated values (CSV) file. Each line describes a category in the hierarchy. Each line has four values:

v Client ID v Category ID v Category Name v Parent Category ID.

Column Description

Client ID Digital Analytics assigned ID. This value

should be the same for all rows within a given file.

Category ID Category ID for the category being defined.

This value should match the values being sent in the Digital Analytics tags or

referenced in the Parent Category ID column of the CDF.

Category Name The display name that should be used for

this category ID in reporting.

Parent Category ID The Category ID of this category's parent

category. For top-level categories, this column should be empty.

Every category ID that is sent through the Digital Analytics tags on your site or referenced in the Parent Category ID column should have a matching line within the CDF that maps the ID to a display name and parent category. Category IDs that do not have a matching line within the CDF will be grouped into the "No Category Assigned" top-level category in reports.

The Digital Analytics TagBar can be used to identify what category ID is being sent in a tag. The Site Location ID (cg) field within the tags corresponds to the category ID that should match a line in the CDF.

Invalid characters

Single quotation marks (') and double quotation marks (") are automatically removed from collected tag Category ID parameter values. Thus, no tag data can be assigned to Category IDs that contain quotation marks. However, single and double quotation marks can be included in Category Name column values for report display purposes. This is accomplished by enclosing the Category Name in double quotation marks:

99999999,204,"DRILL BITS 1/4" TITANIUM",202

Commas (,) found in Category ID or Parent Category ID column values are replaced with spaces (" ") during loading of the category records. This ensures that tags sent with Category ID (cg) parameter values including commas will match the loaded Category Definition File record (see section 2.6 for more information on removal of commas from tag parameter data).

Multibyte CDF characters

Only single byte data should be included in the CDF supporting a single byte-enabled Client ID. Single byte-enabled Client IDs cannot include categories with multibyte characters; such categories will not be available in reporting.

CDF column data (Category ID, Name and Parent) for multibyte-enabled Client IDs can include multibyte characters.

Example of Category Definition File

The following example shows the category structure with corresponding records.

Category ID, Category Name, and Parent Category columns (2-4) values can be in uppercase, lowercase, or mixed case for character sets having multiple case values.

All CDF column values are converted to uppercase upon import to Digital Analytics (import.coremetrics.com or ftp.coremetrics.com). All collected tag Category ID values are also converted to uppercase after receipt of the tag by Digital Analytics, so the Category ID values in columns 2 and 4 of the CDF will always match the same Category ID value collected in tag data.

Client ID Category ID Category Name Parent Category ID

99999999 101 MENS

99999999 201 WOMENS

99999999 301 SALE

99999999 102 MENS SHIRTS 101

99999999 103 MENS PANTS 101

99999999 104 MENS SHIRTS:

DRESS

102

99999999 105 MENS SHIRTS: TEE 102

99999999 202 WOMENS SHIRTS 201

99999999 203 WOMENS PANTS 201

99999999 204 WOMENS SHIRTS:

DRESS

202

99999999 205 WOMENS SHIRTS:

TEE

202

99999999 302 SALE: SHIRTS 301

99999999 303 SALE: BRANDS 301

Example file 99999999,101,MENS, 99999999,201,WOMENS, 99999999,301,SALE,

99999999,102,MENS SHIRTS,101

99999999,103,MENS PANTS,101

99999999,104,MENS SHIRTS: DRESS,102 99999999,105,MENS SHIRTS: TEE,102 99999999,202,WOMENS SHIRTS,201 99999999,203,WOMENS PANTS,201

99999999,204,WOMENS SHIRTS: DRESS,202 99999999,205,WOMENS SHIRTS: TEE,202 99999999,302,SALE: SHIRTS,301 99999999,303,SALE: BRANDS,301

Uploading the CDF

The CDF should be uploaded through the CDF import tool at

https://import.coremetrics.com(US Data Center). This tool allows direct uploads of CDFs through the user interface, or creation of an ftp (port 21) or sftp (port 998) server account with Digital Analytics (ftp.coremetrics.com - US Data Center) for scheduled upload of automatically generated CDFs.

China Data Center domains:

import.cn.coremetrics.com ftp.de.coremetrics.com Europe Data Center domains:

import.de.coremetrics.com ftp.de.coremetrics.com

Files imported through the Import GUI or sent to ftp.coremetrics.com will be automatically imported and processed, and your categorization hierarchy in reporting is updated from that point forward. Changes from an uploaded file should be reflected in the next processing of the daily reports. The frequency at which the CDF is uploaded can be determined based on your own needs. If your hierarchies might change on a daily or weekly basis, Digital Analytics recommends setting up an automated script that will generate the CDF and upload it daily. This ensures that Digital Analytics picks up any changes in the hierarchy on a daily basis.

File Naming Convention

The CDF should be named according to the following convention:

CDF_<client_id>.csv

where <client_id> is your Digital Analytics assigned client ID.

Multisite Analytics

Category Definition Files can be created and uploaded for both the Multisite Analytics Global ID (5xxx0000) and Site Alias/Sub-IDs (5xxxxxxx). CDFs for Multisite IDs follow the standard file naming and file formatting requirements, except that the column 1 'Client ID' and file name <client_id> values will be either the Multisite Global ID or one of the provisioned Site Alias/Sub-IDs.

Here is an example of a Multisite Analytics Global ID file name and its contents.

CDF_50010000.csv 50010000,101,MENS, 50010000,201,WOMENS, 50010000,301,SALE,

Here is an example of a Multisite Analytics Site Alias/Sub-ID file name and its contents.

CDF_50010001.csv 50010001,101,MENS, 50010001,201,WOMENS, 50010001,301,SALE,

Multisite Analytics CDFs are uploaded using the standard CDF Import tool at https://import.coremetrics.com.

Log on using the Multisite Global ID to upload the Global ID CDF and the Site Alias/Sub-ID to upload Sub-ID CDFs.

Appendix B. Data Integrity Process File

Digital Analytics uses the Data Integrity Process (DIP) to validate the data being collected by the IBM Digital Analytics tagging.

DIP compares data directly imported from your backend database to the data collected and used by Digital Analytics reporting. Data is imported through the upload of a DIP file, which is sent via FTP to Digital Analytics on a daily basis.

This feature is not available in Test reporting.

DIP File Format

The DIP file is a comma separated values (CSV) file that contains line item data for all orders placed for the day. Each line has six values: Order Date, Order ID, Product ID, Order Subtotal, Quantity, and Unit Price.

Column Description

Order Date Date of the order in appropriate format (see

Section 8.2.3)

Order ID Order ID should match the Order ID being

sent in the Digital Analytics Order Tag.

Product ID Product ID for the line item. This should

match the Product ID being sent in the Shop 9 Tag.

Order Subtotal Subtotal for the order. This should not

include shipping and handling or tax.

Quantity Quantity of the product purchased for this

line item.

Unit Price Unit price for the line item.

No quotes should exist anywhere within the DIP file. The DIP file should contain data for all orders placed online that would be tracked with Digital Analytics. It should not include any orders placed from other channels, such as store, catalog, or call center/telephone sales. Do not include commas in Order Subtotal or Unit Price values.

Date Formatting

The Order Date should be in the same time zone as your Digital Analytics reports were set up to. They should not be translated to CST. If you have any questions about what time zone is appropriate, please contact your Implementation Engineer.

The Order Date field must be in one of the following formats:

DD-MON-YYYY HH24:MI:SS YYYY-MM-DD HH24:MI:SS MM/DD/YY HH24:MI:SS MM/DD/YYYY HH24:MI DD-MON-YYYY HH24:MI:SS MM/DD/YYYY HH24:MI:SS DD-MON-YYYY

MM-DD-YYYY HH24:MI:SS

Example File

Below is an example set of order data for one day and the corresponding DIP file entries.

Order Date Order ID Product ID Order Total Qty Unit Price 27-Oct-2010

13:32:17

5328031 47175 20.97 3 6.99

27-Oct-2010 14:12:05

5328032 156564 243.87 4 3.49

27-Oct-2010 14:30:07

5328032 187167 243.87 1 29.99

27-Oct-2010 14:55:46

5328032 185767 243.87 4 19.99

27-Oct-2010 14:59:43

5328032 186891 243.87 4 29.99

27-Oct-2010 15:10:23

5328034 188353 231.76 1 19.97

27-Oct-2010 15:19:53

5328034 188396 231.76 2 15.97

27-Oct-2010 15:24:31

5328034 188412 231.76 1 24.97

27-Oct-2010 15:43:14

5328034 188487 231.76 1 29.97

27-Oct-2010 16:03:28

5328034 188529 231.76 1 64.97

Example DIP File

Uploading the DIP File

The DIP file should be uploaded to IBM Digital Analytics' FTP server for your data center. Depending on the Data Center and database type used by your Client ID, the ftp account and ftp target used to upload the DIP files will vary.

FTP Target Domain

US Data Center: ftp.coremetrics.com Europe Data Center: ftp.de.coremetrics.com China Data Center: ftp.cn.coremetrics.com

FTP Account Type

For 5- or 9-series Client IDs worldwide, use a "clientid-import" account self-configured in the appropriate Import application UI for your Data Center:

import.coremetrics.com (US), import.de.coremetrics.com (Europe), import.cn.coremetrics.com (China).

For 9-series Client IDs using Oracle, use a "clientname-dip" account created by Digital Analytics Support.

Contact Digital Analytics Support to confirm which type of ftp account should be configured for your Client ID.

File Naming Convention

The DIP file should be named according to the following convention:

DIP_<client_id>_<YYYYMMDD>.csv

Where <client_id> is your Coremetrics®assigned client ID and <YYYYMMDD> is the date in 'YYYYMMDD' format.

Appendix C. Multi-Currency Support

IBM Digital Analytics supports capturing multiple different currencies for

purchases under a single client ID. To enable this functionality, you must specify a currency code that conforms to the ISO4217 specification. See http://www.xe.com/

iso4217.htm for reference.

A given Client ID can report currency format data using only the single currency code that you specified in the settings for that Client ID. Using "multi-currency conversion" through the cmSetCurrencyCode function or the cm_currencyCode variable does not change the currency code used to report currency data within a given Client ID; it only converts Order Total, Unit Price and Shipping Charge values collected in different currencies to the single reporting currency that you have specified for that Client ID.

Currency values must be included in the data captured in Shop Action 5, Shop Action 9, and Order tags. To capture the currency code with the relevant tag data, call the cmSetupOther(...) function with the variable name cm_currencyCode and the 3-byte currency code. For example:

cmSetupOther({"cm_currencyCode":"EUR"});

The cmSetupOther(...) function can be called in the same script block as the cmSetClientID(...)call on the page.

If you are not using IBM Digital Analytics hosted libraries (libs.coremetrics.com/

eluminate.js) version 4.7.5 or later, the cmSetupOther function will not be

available. In this case, call the cmSetCurrencyCode function anywhere in the tagged page prior to the related Shop or Order tag function calls. For example:

<script>

cmSetCurrencyCode("EUR");

</script>

Multi-Currency Support for IBM Digital Analytics Multisite

IBM Digital Analytics Multisite implementations should always set the 3-byte ANSI currency code in all pages which will send currency data with tags. The 3-byte code set on the page should match the currency type sent in tags from that page. This will ensure that collected currency values are converted properly for display in both the Multisite Analytics Global ID and the Multisite Analytics Site ID ("59990000|SITEID1"), in cases where these IDs are configured to report in different currencies.

Appendix D. Additional Tag Attributes for IBM Digital Analytics Explore

IBM Digital Analytics Explore allows for reporting based on attributes of a tag (for example, brand, language, author). Collecting and using attributes in reporting requires the Explore product and the IBM Digital Analytics-hosted library (//libs.coremetrics.com/eluminate.js).

The following tag types each support up to 50 attributes with a length of 256 characters per attribute:

v Pageview v Productview

v Shop Action Order Conversion Event v Element

v Registration (1-15 are available in Digital Analytics, 1-50 are available in Explore reporting)

v Marketing Attributes (query string parameters cm_mmca1-50)

Microsoft Internet Explorer request length is limited to 2083 bytes. Please check that your total attribute length for each tag is no more than 1.5k to allow for collection of standard tag parameters (Page ID, category ID, Product ID, etc.), destination and referring URL values, and around 200 additional bytes for data included in all requests.

To obtain IBM Digital Analytics Explore please contact your IBM Digital Analytics Account or Sales Representative. See the IBM Digital Analytics Explore User Guide for more information on suggested attributes for capture and how to create reports using attributes.

Capturing IBM Digital Analytics Explore Attributes

Explore Attribute values are sent to IBM Digital Analytics Explore as a single "-_-"

delimited tag parameter value. The Explore Attribute tag parameter is located in the parameter list for each tag supporting Explore data collection (see Section 2.6).

Example "Page View" Tag Function Call with Explore Attributes:

In this example Pageview tag, we are sending the parameters "PageID",

"PageCategoryID", "attribute-1", "attribute-3" and "attribute-4". Search String and Search Results will specify JavaScript null values in order to maintain correct parameter order. By not specifying any value for Attribute position 2 in the "-_-"

concatenated Attribute string, we retain the correct parameter order for the

"attribute-3" and "attribute-4" values.

v Function Definition from //libs.coremetrics.com/eluminate.js:

function cmCreatePageviewTag(pageID, categoryID, searchString, searchResults, attributes, extraFields)

v Function Call

<script type="text/javascript">

cmCreatePageviewTag("PageID","PageCategoryID",null,null,"attribute-1-_--_-attribute-3-_-attribute-4");

v Tagbar Test Output:

Page View tag (Test)

Tag Type (tid):"1" (Page View tag) Page ID (pi):"PageID"

Category ID (cg):"PageCategoryID"

Attribute 1 (Explore) (pv_a1):"attribute-1"

Attribute 3 (Explore) (pv_a3):"attribute-3"

Attribute 4 (Explore) (pv_a4):"attribute-4"

Video Tracking - IBM Digital Analytics Explore Attributes

Advanced IBM Digital Analytics Explore video tracking can be implemented through the Element Tag 'attributes' 13, 14 and 15:

v Element ID:pass the name of the video (e.g. Six Minute Abs)

v Element Category:pass the category of the video (e.g. Fitness Videos) v Element Attribute Field 13 (e_a13):Pass the "Video Status:" "0"=Launch;

"1"=Pause; "2"=Play;"3"=Completion. Video abandonment/completion rates and average video play times are calculated using the 'Launch' and 'Completion' events. 'Pause' and 'Play' events are sent only in response to clicks on video player 'pause' or 'play' controls. Alias Element Attribute 13 in reporting as

"Video Status."

v Element Attribute Field 14 (e_a14):Pass the "Video Time Stamp" (in seconds) of the status action. For example, if the user Stops the video 1:23 to the video, pass

"83". Alias Element Attribute 14 in reporting as "Video Time Stamp." Video timestamp must be sent for all Video Status values including 'Completion', in which case the value should be equal to the Element attribute 15 'Video Length' value.

v Element Attribute Field 15 (e_a15):Pass the "Video Length" (in seconds) of the total length of the video. For example, if the video is 3:10 in length, pass "190".

Alias Element Attribute 15 in reporting as "Video Length."

Alias Element Attribute 15 in reporting as "Video Length."

Related documents