hitbox installation guide

303
HBXVersion 4.1 January 13, 2008 HBX™ Installation Guide

Upload: kushin

Post on 11-Apr-2015

2.236 views

Category:

Documents


0 download

DESCRIPTION

Hitbox installation guide

TRANSCRIPT

Page 1: Hitbox Installation Guide

HBX™ Version 4.1 January 13, 2008

HBX™ Installation Guide

Page 2: Hitbox Installation Guide

| Page ii

Table of Contents

INTRODUCING HBX™ ........................................................................................................................................ 1

NEW FEATURES AND ENHANCEMENTS......................................................................................................... 1 HTML USER INTERFACE AND DASHBOARD ENHANCEMENTS ............................................................ 1 CAMPAIGN REPORTING ENHANCEMENTS ....................................................................................... 1 NEW CONTENT REPORT ............................................................................................................. 1 FORGOT YOUR PASSWORD? ........................................................................................................ 2 LOCALIZATION IN JAPANESE ........................................................................................................ 2

INSTALLATION INTRODUCTION ...................................................................................................................... 2

IDENTIFYING ESSENTIAL PAGES OR FLASH MEDIA OBJECTS .................................................................. 3 HBX Terminology........................................................................................................................... 3 Unicode Support in HBX ................................................................................................................ 9

SPECIAL CONSIDERATIONS ......................................................................................................... 9 NOTE ABOUT DIFFERENCES IN REPORTING PRIOR TO AND FOLLOWING THE RELEASE OF HBX V3.7 ..... 10

ILLEGAL CHARACTERS .................................................................................................................................. 10 SUMMARY OF ILLEGAL CHARACTERS AND SIZE OF ENTRIES FOR USER ENTRY FIELDS IN HBX ........... 14

HBX Page Code .......................................................................................................................... 17 PLACEMENT OF THE HBX PAGE CODE ........................................................................................ 17 ORGANIZATION OF THE PAGE CODE ........................................................................................... 17 COMMENTS ABOUT THE ROLE OF PAGE CODE SECTIONS ................................................................ 17 FOR ADVANCED USERS ONLY ..................................................................................................... 18

Installing HBX Code and the hbx.js File ....................................................................................... 18 HBX.JS FILE ............................................................................................................................ 18 THE HBX.JS FILE FOR HBX ....................................................................................................... 18 THE HBX.JS FILE AND SECURE-SERVED WEB PAGES .................................................................... 19

Downloading and Updating the hbx.js File and HBX page code (or HBX commerce page code HBX wireless page code for WML decks) .................................................................................... 19

INITIAL INSTALLATION ............................................................................................................... 19 UPDATING .JS FILES ................................................................................................................ 20

Comparison of Multi-level Content, Campaign Analysis, Population Groups, and Funnels .......... 20 Page Names ................................................................................................................................ 22 Designating Content Groups ........................................................................................................ 23

CODING MULTI-LEVEL CONTENT GROUPS ................................................................................... 23

Campaign Analysis ...................................................................................................................... 24 Population Groups ....................................................................................................................... 24 Funnel Analysis ........................................................................................................................... 24

INSTALLING HBX CODE MANUALLY ............................................................................................................. 24

INSTALLATION FOR FRAMES ........................................................................................................................ 26

INSTALLATION FOR DYNAMICALLY GENERATED PAGES ........................................................................ 26 Escaping Characters in HBX page code with no external .js file in Server-side Scripts ................ 26

COLDFUSION WEB SERVERS ..................................................................................................... 27 PERL / MOD_PERL-SERVED CGI SCRIPTS ..................................................................................... 27

Sample Scripts ............................................................................................................................ 27 PERL EXAMPLE ....................................................................................................................... 27 COLDFUSION® EXAMPLE .......................................................................................................... 28 PHP EXAMPLE ........................................................................................................................ 29 ASP EXAMPLES ...................................................................................................................... 31

Page 3: Hitbox Installation Guide

| Page iii

INSTALLING HBX CODE FOR SITES BUILT WITH MACROMEDIA™ FLASH® ........................................... 32 Integration of HBX JavaScript with Flash ActionScript ................................................................. 32 Modifying the Flash Source Code ................................................................................................ 33

HBX FLASH TRACKING FUNCTIONS ............................................................................................ 33

Parameters for the HBX Flash Tracking Functions ......................................................... 34

Using HBX Flash Tracking Functions ........................................................................... 36

Gateway Variables ................................................................................................... 38

ActionScript Code Samples ......................................................................................................... 38 Implementation of HBX Code for Flash Sites: .............................................................................. 39

MEDIA TRACKING............................................................................................................................................ 40 Introduction to Media Tracking ..................................................................................................... 40 HBX Media Tracking .................................................................................................................... 40 Coding Media Tracking ................................................................................................................ 42

MEDIA PLAYER GENERAL INSTALLATION ..................................................................................... 42 HBX.MEDIA VARIABLE ............................................................................................................... 43 REMOVE THE DEFER DIRECTIVE ............................................................................................... 43 REFERENCE THE HBXMEDIA.JS FILE ............................................................................................ 43

Supported Streaming Media ........................................................................................................ 44 Embedded Media Client Examples .............................................................................................. 44

W INDOWS MEDIA PLAYER, ANY VERSION .................................................................................... 44 W INDOWS MEDIA PLAYER, V7.0 AND HIGHER .............................................................................. 44 REALNETWORKS ..................................................................................................................... 45 QUICKTIME ............................................................................................................................. 46 SPECIFIC BROWSER/MEDIA CLIENT COMBINATIONS AND FUNCTIONALITY NOTES ............................. 47

Server Plug-in .............................................................................................................................. 47 PLUG-IN PACKAGE CONTENTS ................................................................................................... 47 PLUG-IN INSTALLATION ............................................................................................................. 47 PLUG-IN REPAIR AND UNINSTALLATION....................................................................................... 48 PLUG-IN UNINSTALLATION ........................................................................................................ 48 OTHER INFORMATION ............................................................................................................... 48

WIRELESS TRACKING .................................................................................................................................... 48 Introduction to Tracking for Wireless Web Pages ........................................................................ 48

DEFINITIONS ........................................................................................................................... 49 REFERENCE ............................................................................................................................ 49

Tracking Wireless Visitors ............................................................................................................ 49 Dynamically Generated Wireless Decks ...................................................................................... 50 Advanced Wireless Deck Code.................................................................................................... 51

LINK TRACKING CODE ................................................................................................................................... 51 Using HBX page code for link tracking in frames or IFRAMES..................................................... 52 Kinds of Links .............................................................................................................................. 53 Conventional Link Tracking Modes .............................................................................................. 53

LINK TRACKING DISABLED ......................................................................................................... 53 AUTOMATIC TEXT LINK TRACKING ............................................................................................... 53 AUTOMATIC TEXT LINK AND POSITION TRACKING .......................................................................... 54 MANUAL LINK TRACKING MODE .................................................................................................. 55

Manually Tracked Links ............................................................................................................... 56

ADVANCED LINK TRACKING.......................................................................................................................... 57 Tracking non-simple links on Web pages ..................................................................................... 57 Flash objects ............................................................................................................................... 57

TRACKING THE FLASH OBJECT CLICK EVENT ................................................................................ 57

Page 4: Hitbox Installation Guide

| Page iv

HOW TO TRACK CLICKS ON BUTTONS IN DIFFERENT FLASH MOVIE FRAMES THAT OCCUPY THE SAME

SPACE .................................................................................................................................... 58 PUBLISHING A FLASH MOVIE ..................................................................................................... 59 SPECIAL CONSIDERATIONS WHEN PUBLISHING FLASH MOVIES ...................................................... 60

DHTML menu .............................................................................................................................. 61 BACKGROUND ON DHTML MENUS ............................................................................................. 61

Image Maps ................................................................................................................................. 63 Overriding default behavior of the hbx.lt variable ......................................................................... 65

For tracking the link name ........................................................................................ 65

For tracking the link name and the link position ........................................................... 65

For tracking the link name and the link position ........................................................... 66 PLANNING FOR UPDATES TO LINK TRACKING MODE ..................................................................... 67 LINK TRACKING SPECIAL CASE .................................................................................................. 67

EVENTS ............................................................................................................................................................. 67 Creating an Event Sequence ....................................................................................................... 67 Editing an Event Sequence .......................................................................................................... 69

CAMPAIGN ANALYSIS .................................................................................................................................... 70 Overview of Campaigns ............................................................................................................... 70 Classes of Campaign ................................................................................................................... 70

Class ...................................................................................................................... 70

Implementation ....................................................................................................... 70 CONVENTIONAL CAMPAIGNS ..................................................................................................... 70 LEAD CAMPAIGNS .................................................................................................................... 70 SALESFORCE.COM CAMPAIGNS ................................................................................................. 71 RESTRICTIONS ON THE SALESFORCE.COM CAMPAIGN ................................................................... 72

FOR HBX................................................................................................................. 72

FOR SALESFORCE.COM ............................................................................................. 73

FOR BOTH HBX AND SALESFORCE.COM ...................................................................... 73

Implementation: Designing Tagged Campaign Pages to Acquire and Convert Visitors ................ 73 ON-LINE - URL QUERY STRING.................................................................................................. 73 LANDING PAGE / GOAL PAGE .................................................................................................... 74

CREATING CAMPAIGNS: CAMPAIGN ADMINISTRATION PAGE ................................................................. 74 Creating HBX Campaigns ............................................................................................................ 74 Campaign Summary Page ........................................................................................................... 75

Salesforce.com(r) Account Administration ................................................................... 75

Current Campaigns .................................................................................................. 75

Archived Campaigns ................................................................................................. 76

Information presented in the Current and Archived Campaigns tables: ........................... 76

Campaign Administration: Creating a Campaign .......................................................... 77

Campaign Administration Step 1 ................................................................................ 78

Campaign Administration Step 2 ................................................................................ 81

Tagged and Tagless Campaigns ................................................................................. 81

Two-step Campaign ................................................................................................. 82

Three-step Campaign ............................................................................................... 82

Common fields to Tagged and Tagless Campaigns ....................................................... 83

Tagless Campaigns ..................................................................................................................... 85 DESIGN CONSIDERATIONS FOR A TAGLESS CAMPAIGN .................................................................. 85 RESPONSE EVENT ................................................................................................................... 85 LEAD EVENT ........................................................................................................................... 86 SPECIAL RESTRICTIONS WHEN DEFINING RESPONSE OR LEAD TRIGGERS ......................................... 86 CONVERSION EVENT ................................................................................................................ 87

Page 5: Hitbox Installation Guide

| Page v

Finishing the Campaign Creation ................................................................................ 88

Example of creating a tagless two-step campaign ........................................................ 88

Example of creating a tagless lead campaign ............................................................... 89

Campaign Classification and Campaign Hierarchy ...................................................................... 89 DEFAULT PARAMETER FOR CAMPAIGN CLASSIFICATIONS .............................................................. 90 EXAMPLE OF CAMPAIGN CLASSIFICATION .................................................................................... 90 CAMPAIGN CLASSIFICATION VERSUS CAMPAIGN RESPONSE ATTRIBUTE OR LEAD ATTRIBUTE ............... 91

Create or edit a campaign classification and classification (default) parameter ............................ 91 TO CREATE A CAMPAIGN CLASSIFICATION AND CLASSIFICATION (DEFAULT) PARAMETER FOR NEW

CAMPAIGNS............................................................................................................................. 91 TO EDIT OR CLEAR A CAMPAIGN CLASSIFICATION OR CLASSIFICATION PARAMETER ............................ 91 NOTE ABOUT CLEARING A CAMPAIGN CLASSIFICATION ................................................................... 91 TO EDIT CLASSIFICATION PARAMETERS FOR A CAMPAIGN .............................................................. 92

Editing Active Campaigns ............................................................................................................ 92 Editing Dynamic Campaigns ........................................................................................................ 92 Archiving Campaigns ................................................................................................................... 92 Unarchiving Campaigns ............................................................................................................... 93 Exporting and Importing Campaigns ............................................................................................ 93

EXPORTING CAMPAIGNS ........................................................................................................... 94 IMPORTING CAMPAIGNS ............................................................................................................ 94 GUIDELINES FOR CREATING THE CAMPAIGN IMPORT FILE .............................................................. 94

Campaign definition files ........................................................................................... 95

One-line examples of a campaign definition file: .......................................................... 95

Special Archive Bit for Campaigns .............................................................................. 96

Updating a campaign definition file ............................................................................ 96

Daily cost definition files ........................................................................................... 97

One-line example of a daily cost definition file: ............................................................ 97

Campaign Definition File Field Summary ..................................................................... 97

Campaign Daily Cost Definition Field Summary ............................................................ 98

CODING CAMPAIGNS ...................................................................................................................................... 99 Campaign Examples .................................................................................................................... 99

EXAMPLES OF ON-LINE AND LANDING PAGE METHODS ................................................................... 99 EXAMPLE OF A LEAD CAMPAIGN .............................................................................................. 100 EXAMPLE OF A DYNAMIC CAMPAIGN ......................................................................................... 101 EXAMPLE OF A SALESFORCE.COM® CAMPAIGN .......................................................................... 101

Preparing to Code Account IDs to Campaigns on Pages ........................................................... 103 Tracking Response .................................................................................................................... 104

TRACKING RESPONDENTS VIA WEB SITE PAGES ........................................................................ 104 SUMMARY OF TRACKING RESPONDENTS VIA LANDING PAGES ...................................................... 104 TRACKING RESPONDENTS VIA URL QUERY STRINGS .................................................................. 105 AN ALTERNATIVE FOR THE NAME PORTION OF A NAME-VALUE PAIR IN THE URL ............................. 106

Summary of Tracking Respondents via URL Query Strings .......................................... 107

Expiring Responses for Campaigns - Expiring Dynamic Campaigns ......................................... 107 Tracking Lead Designations ...................................................................................................... 108

TRACKING LEAD DESIGNATIONS IN SINGLE LEAD CAMPAIGNS ...................................................... 108 TRACKING LEAD DESIGNATIONS IN MULTIPLE LEAD CAMPAIGNS .................................................. 109

Summary of Tracking Lead Designations Via Landing Pages ........................................ 109

Tracking Conversions ................................................................................................................ 109 TRACKING CONVERSIONS IN SINGLE CAMPAIGNS ....................................................................... 110 TRACKING CONVERSIONS IN MULTIPLE CAMPAIGNS ................................................................... 110

Summary of Tracking Conversions via Goal Pages ...................................................... 111 TRACKING CONVERSIONS VIA URL QUERY STRINGS .................................................................. 111

Page 6: Hitbox Installation Guide

| Page vi

AN ALTERNATIVE FOR THE NAME PORTION OF A NAME-VALUE PAIR IN THE URL ............................. 112

Summary of Tracking Conversions via URL Query Strings ........................................... 113

Tracking Salesforce.com® Campaigns ...................................................................................... 113 ENABLING MARKETING USER (SALESFORCE.COM) ..................................................................... 115 ENABLING WEB-TO-LEAD (SALESFORCE.COM) ........................................................................... 115 CUSTOMIZE THE FIELDS OF THE WEB-TO-LEAD PAGE (SALESFORCE.COM) .................................... 115 GENERATING AND EDITING THE HTML FOR THE WEB-TO-LEAD PAGE (SALESFORCE.COM AND HBX) . 116 CREATING THE SALESFORCE.COM CAMPAIGN (HBX) .................................................................. 116 TRACKING RESPONSE TO SALESFORCE.COM CAMPAIGNS ........................................................... 116 TRACKING CONVERSION TO SALESFORCE.COM CAMPAIGNS ........................................................ 116 (OPTIONAL) TRACKING CONVERSION ATTRIBUTES FOR SALESFORCE.COM CAMPAIGNS ................... 116 EXAMPLE CODE FOR THE WEB-TO-LEAD FORM SUBMISSION PAGE .............................................. 116

Salesforce.com® Campaign Dataflow........................................................................................ 119 Tracking Audience Impressions ................................................................................................. 120 Tracking Campaign Attributes .................................................................................................... 121

LEAD ATTRIBUTES ................................................................................................................. 122 CONVERSION ATTRIBUTES ...................................................................................................... 122 RESPONSE ATTRIBUTE FROM CURRENT PAGE URL ................................................................... 122 RESPONSE ATTRIBUTE FROM REFERRING URL ......................................................................... 123 GENERAL REMARKS ABOUT RESPONSE ATTRIBUTE TRACKING FROM THE CURRENT PAGE URL OR THE

REFERRING PAGE URL WITH THE SHORTCUT NOTATIONS ............................................................. 124

Tracking Keyword Advertising Networks .................................................................................... 124 IMPLEMENTATIONS OF THE KEYWORD ADVERTISING NETWORK CAMPAIGN ..................................... 124 EXAMPLE OF REGISTERING RESPONSES VIA THE ONLINE METHOD ................................................. 125 EXAMPLE OF REGISTERING RESPONSES VIA THE LANDING PAGE METHOD ....................................... 125 EXAMPLE OF REGISTERING RESPONSES AND CONVERSIONS VIA THE TAGLESS CAMPAIGN ................ 125 RECORDING CONVERSIONS FOR THE KNC OR KNL CAMPAIGN (ONLINE OR GOAL PAGE METHODS) .... 126

Uploading Keyword Costs .......................................................................................................... 127 FORMAT ............................................................................................................................... 127 SAMPLE FILE ........................................................................................................................ 128

Tracking the Organic Keyword Campaign .................................................................................. 129 Tracking Conversion Value ........................................................................................................ 131 Tracking Campaign Classification .............................................................................................. 132

ASSUMPTIONS ....................................................................................................................... 132 ON-LINE TAGLESS .................................................................................................................. 132 TAGGED ............................................................................................................................... 133

Campaign Hierarchy Goal .......................................................................................................... 133 TAGGED ............................................................................................................................... 133

SALESFORCE.COM® BACKGROUND ......................................................................................................... 134 Campaigns ................................................................................................................................ 134 Leads......................................................................................................................................... 134 Acting on the Lead ..................................................................................................................... 134 One-to-Many / Many-to-one Relationships in Salesforce.com .................................................... 135 For more information ................................................................................................................. 135 Definitions and Comparison of HBX and Salesforce.com Terminology ...................................... 135

TRACKING CUSTOM EVENTS ...................................................................................................................... 136 External Search Tracking ........................................................................................................... 137 Internal Search Tracking ............................................................................................................ 137

CONVERSION TRACKING ............................................................................................................................. 139

CONVERSION ADMINISTRATION ................................................................................................................. 139

Page 7: Hitbox Installation Guide

| Page vii

Creating a custom-defined conversion ....................................................................................... 140 RULE SETTINGS TAB .............................................................................................................. 140 ADVANCED SETTINGS TAB ...................................................................................................... 141

Example of creating a custom-defined conversion ...................................................... 142

Editing a custom-defined conversion ......................................................................................... 142 Deleting a custom-defined conversion ....................................................................................... 142 Conversion Groups .................................................................................................................... 142 Editing a conversion group ........................................................................................................ 143

SPECIFYING CUSTOM-DEFINED CONVERSIONS AS A CUSTOM EVENT IN HBX PAGE CODE .................. 143

Custom Events and Link Tracking ............................................................................................. 145 Tracking Number and Value of Conversions of Custom Events (for Link Tracking and Internal Search) ...................................................................................................................................... 145

PRECEDENCE OF CUSTOM CONVERSION ................................................................................... 146

VISITOR SEGMENTATION ............................................................................................................................. 146 Creating Population Groups ....................................................................................................... 147 Renaming Population Groups .................................................................................................... 148 Deactivating and Deleting Population Groups ............................................................................ 148

DEACTIVATING POPULATION GROUPS ....................................................................................... 148 DELETING POPULATION GROUPS .............................................................................................. 149

CODING POPULATION GROUPS .................................................................................................................. 149 How Population Groups Work .................................................................................................... 149

POPULATION GROUPS ON PAGES VS POPULATION GROUPS ON COOKIES AND CONVERSION ............... 150

Population Group Lockout ......................................................................................................... 150 Population Group Restart and Add ............................................................................................ 151

PREPARING TO CODE ACCOUNT IDS TO POPULATION GROUPS ON PAGES ..................................... 153 POPULATION GROUPS WITH SINGLE ACCOUNTS ......................................................................... 153 SUMMARY OF CODING POPULATION GROUPS WITH A SINGLE ACCOUNT ........................................ 153

ACTIVE SEGMENTATION ADMINISTRATION .............................................................................................. 154 SEGMENT LIST ...................................................................................................................... 154 SEGMENT DETAIL VIEW .......................................................................................................... 155 ARCHIVING A SEGMENT .......................................................................................................... 155 UNARCHIVING A SEGMENT ....................................................................................................... 155 DELETING A SEGMENT ............................................................................................................ 155 EXPORTING CUSTOMER IDS .................................................................................................... 156

CREATING ACTIVE SEGMENTS ................................................................................................................... 156 SEGMENT INFORMATION ......................................................................................................... 157 VISITOR-BASED VS VISIT-BASED SEGMENTS .............................................................................. 157 EXAMPLES OF VISIT-BASED AND VISITOR-BASED SEGMENTS......................................................... 160 SEGMENT FILTERS ................................................................................................................. 162 REPORT SELECTION .............................................................................................................. 164 COMMERCE REPORTS ............................................................................................................ 166 REPORT CONFIRMATION ......................................................................................................... 167 EXAMPLE OF CREATING A SEGMENT, TYPE 1 -EXIT LINK AS FILTER ............................................... 167 EXAMPLE OF CREATING A SEGMENT, TYPE 2 - INTERNAL SEARCH AND DOWNLOAD AS FILTERS ......... 167 EXAMPLE OF CREATING A SEGMENT, TYPE 3 - GEOGRAPHY, REFERRING URL, AND CONTENT GROUP AS

FILTERS................................................................................................................................ 168

UNIQUENESS FILTERING ADMINISTRATION.............................................................................................. 170 UNIQUENESS FILTER LIST ....................................................................................................... 170 UNIQUENESS FILTER DETAIL VIEW ........................................................................................... 171 ARCHIVING A UNIQUENESS FILTER ............................................................................................ 171

Page 8: Hitbox Installation Guide

| Page viii

DELETING A UNIQUENESS FILTER ............................................................................................. 171

Creating Uniqueness Filters ....................................................................................................... 171 UNIQUENESS FILTER INFORMATION .......................................................................................... 172 FILTERS ............................................................................................................................... 172 VISITOR-BASED VS VISIT-BASED FILTERING ............................................................................... 173 REPORT CONFIRMATION ......................................................................................................... 175

SEARCH UTILITY ........................................................................................................................................... 176

FUNNEL ANALYSIS ....................................................................................................................................... 176 Funnel Administration ................................................................................................................ 177

CREATING A TAGLESS FUNNEL ................................................................................................ 177

Example of a Tagless funnel .................................................................................... 179 CREATING A TAGGED FUNNEL ................................................................................................. 180 ACTIVE AND ARCHIVED FUNNELS ............................................................................................. 181

Archiving Funnels .................................................................................................. 181

Deleting Funnels .................................................................................................... 181

Coding Tagged Funnels ............................................................................................................ 181 CODING SIMPLE TAGGED FUNNELS .......................................................................................... 183

Funnel Coding Syntax ............................................................................................. 183

Designating Conversion Level .................................................................................. 183

PAGE ERROR CODE ...................................................................................................................................... 184

FORM PAGE ABANDONMENT CODE ........................................................................................................... 186 Simple Form Abandonment Tracking with type=submit or onSubmit=validation_function() ........ 187

CUSTOM METRIC ........................................................................................................................................... 189 Example of use of the Custom Metric ........................................................................................ 189 Multiple-value Custom Metric ..................................................................................................... 190 Coding Custom Metric Dimensions ............................................................................................ 190

EXAMPLE OF ADDING DIMENSIONS TO THE CUSTOM METRIC ........................................................ 190

Multiple-value Custom Metric with Attribute ............................................................................... 191

APPENDIX A: ADVANCED CODING ............................................................................................................. A-1 Multiple Accounts....................................................................................................................... A-2 Tracking Multiple Accounts ........................................................................................................ A-2 Tracking Pages with Multiple Accounts ...................................................................................... A-2 Coding Multi-Level Content with Multiple Accounts .................................................................... A-2 Coding Campaigns with Multiple Accounts ................................................................................ A-3

TRACKING RESPONSES .......................................................................................................... A-4

Tracking Respondents to Conventional Static (and Conventional Dynamic) Campaigns and

Static (and Dynamic) Lead Campaigns ...................................................................... A-4

Tracking Conversions to conventional Static (and conventional Dynamic) Campaigns and

Static (and Dynamic) Lead Campaigns ...................................................................... A-7 TRACKING LEAD DESIGNATIONS TO LEAD AND DYNAMIC LEAD CAMPAIGNS ................................. A-11

Tracking Lead Designates ...................................................................................... A-11

Summary of Tracking Lead Conversions Via Landing Pages ........................................ A-11 POPULATION GROUPS AND CAMPAIGNS .................................................................................. A-12 RESPONSE ATTRIBUTE, LEAD ATTRIBUTE, CONVERSION ATTRIBUTE, AND CONVERSION VALUE WITH

MULTIPLE ACCOUNTS ........................................................................................................... A-16

Coding Population Groups With Multiple Accounts ...................................................................A-16 SUMMARY OF CODING POPULATION GROUPS WITH MULTIPLE ACCOUNT IDS ................................ A-17

Advanced Tagged Funnel Coding .............................................................................................A-18 MULTIPLE FUNNELS PER PAGE - SINGLE ACCOUNT .................................................................. A-18

Page 9: Hitbox Installation Guide

| Page ix

SINGLE AND MULTIPLE FUNNELS PER PAGE - MULTIPLE ACCOUNTS ........................................... A-20

Null Account Marker .............................................................................................. A-22 COMBINED TAGGED AND TAGLESS FUNNELS ........................................................................... A-22

<noscript></noscript> ...............................................................................................................A-23 HOW TO CODE THE <NOSCRIPT></NOSCRIPT> PORTION OF THE PAGE CODE .............................. A-23 <NOSCRIPT></NOSCRIPT> AND SSL WEB PAGE TRACKING ....................................................... A-24 <NOSCRIPT></NOSCRIPT> AND CAMPAIGN RESPONSE/CONVERSION TRACKING ........................... A-24

Tracking Respondents via Web Pages with JavaScript Disabled ................................... A-24

Tracking Conversions by Coding Goal Pages with JavaScript Disabled .......................... A-24

Tracking Lead designations by Coding Lead Designation Pages with JavaScript Disabled A-24

Advanced Form Abandonment Tracking with onClickhandler=validation_function() ..................A-25 ONCLICK HANDLER EXAMPLES .............................................................................................. A-26

Example 1 ........................................................................................................... A-26

Example 2 ........................................................................................................... A-26

Cost and Revenue Calculation Models for Campaign ROI ........................................................A-28 First-Party Cookies, hbx.cp Campaigns Created in the HBX commerce module, and the Campaign Domain Variable hbx.cpd .........................................................................................A-30 Alternative Names for Tracking Downloaded Files ....................................................................A-31 Error Page Code .......................................................................................................................A-31

CUSTOMIZING THE ERROR PAGE CODE .................................................................................. A-31

Changing The Display Of The Content Group When Visitors Access The Error Page ........ A-31

Multiple Accounts .................................................................................................. A-32

Filtering and Tracking Exit Links ...............................................................................................A-32 Custom Referrers .....................................................................................................................A-32 Redirect Code ...........................................................................................................................A-33 Popup Windows ........................................................................................................................A-35 Download Filter .........................................................................................................................A-35

DEFINING SPECIFIC FILES AS DOWNLOADS .............................................................................. A-35 EXCLUDING FILES ................................................................................................................ A-36

Force Lower Case Page and Content Group Name Variable ....................................................A-36 Tagging URLs With Purchased Keyword / Outlet Information ...................................................A-36 Shortcut Notations and Convenience Functions .......................................................................A-37

Shortcut notation _P:: ........................................................................................... A-37

Examples ............................................................................................................. A-38

Shortcut notation _R::........................................................................................... A-38

Examples ............................................................................................................. A-39

Shortcut notation _C::........................................................................................... A-39

Example .............................................................................................................. A-39

Shortcut notation _D:: .......................................................................................... A-40

Example .............................................................................................................. A-40

_hbCookie Function ............................................................................................... A-41

Event Interfaces ........................................................................................................................A-41 EXAMPLES .......................................................................................................................... A-43

Gateway Variables ....................................................................................................................A-44 Overriding the Default Protocol .................................................................................................A-52 Coding Custom Metrics Variables to Track RSS Feeds and Podcasts ......................................A-52

EXPLANATION OF THE FIELDS IN THE URL ............................................................................... A-52

Tracking an HBX Variable via the Online Method .....................................................................A-53

APPENDIX B: HBX.ASP ................................................................................................................................. B-1

APPENDIX C: SIMPLE ASP EXAMPLE ......................................................................................................... C-1

Page 10: Hitbox Installation Guide

| Page x

APPENDIX D: ADVANCED ASP EXAMPLE .................................................................................................. D-1

APPENDIX E: ASP EXAMPLE FOR SERVER-SIDE FORM VALIDATION .................................................... E-1 Form Submission page .............................................................................................................. E-1 test.asp ...................................................................................................................................... E-2

APPENDIX F: COLDFUSION EXAMPLE FOR SERVER-SIDE FORM VALIDATION.....................................F-1

APPENDIX G: VB.NET EXAMPLE ................................................................................................................. G-1 TEST1.ASPX .......................................................................................................................... G-1 HBXPAGECODE.ASCX .............................................................................................................. G-2 TEST2.ASPX .......................................................................................................................... G-3 TEST3.ASPX .......................................................................................................................... G-3

APPENDIX H: HBX PAGE CODING VARIABLES ......................................................................................... H-1

APPENDIX I: HBX CAMPAIGN CODING VARIABLES .................................................................................... I-1

APPENDIX J: SEARCHFORM.PL AND SEARCH FORM - INTERNAL SEARCH TRACKING ...................... J-1

Page 11: Hitbox Installation Guide

| Page xi

Table of Tables Table 1. Illegal Characters and Size of Entries - HBX Downloads and Administration area ............ 13 Table 2. Illegal Characters and Size of Entries - HBX .................................................................... 16 Table 3. Comparing Multi-level Content, Campaign Analysis, population groups, and Funnels ...... 22 Table 4. Event Sequence Icons ..................................................................................................... 69 Table 5. Campaign Definition File Field Summary .......................................................................... 97 Table 6. Campaign Daily Cost Definition Field Summary ............................................................... 98 Table 7. Tracking Respondents via Landing Pages ..................................................................... 105 Table 8. Tracking Respondents via URL Query Strings ............................................................... 107 Table 9. Tracking Lead Designations Via Landing Pages ............................................................ 109 Table 10. Tracking Conversions via Goal Pages .......................................................................... 111 Table 11. Tracking Conversions via URL Query Strings ............................................................... 113 Table 12. Defining/Comparing HBX and Salesforce.com Terminology ......................................... 135 Table 13. Population groups on Pages vs population groups on Cookies and Conversion ........... 150 Table 14. Population group Lockout and Population group Restart on Pages VS Population groups

on Cookies and Conversion Value ........................................................................................ 152 Table 15. Population groups Coding: Single Account ................................................................... 153 Table 16. Simple Funnel: Page Names and Levels ...................................................................... 183 Table 17. Coding Simple Funnel Page Names And Levels .......................................................... 184 Table 18. Campaign Tracking for Multiple Accounts - Respondents via Response Page ............. A-5 Table 19. Campaign Tracking for Multiple Accounts - Respondents via URL Query Strings ........ A-7 Table 20. Campaign Tracking for Multiple Accounts - Conversions via Response Page .............. A-9 Table 21. Campaign Tracking for Multiple Accounts - Conversions via URL Query Strings .........A-10 Table 22. Lead Campaign Tracking for Multiple Accounts - Conversions via Response Page ....A-11 Table 23. Interaction Of Campaign Response/Respondents And population groups ...................A-13 Table 24. Interaction Of Campaign Conversion/Converters And population groups ....................A-15 Table 25. Population groups Coding: Multiple Accounts ..............................................................A-17 Table 26. Coding Multiple Funnels: Page Names and Levels ......................................................A-19 Table 27. Coding Multiple Funnels in Multiple Accounts: Page Names and Levels .....................A-21 Table 28. File Extensions For Web Page Type Ignored In Downloads - Pages ...........................A-35 Table 29. HBX Page Coding Variables ........................................................................................ H-1 Table 30. HBX Campaign Coding Variables ................................................................................... I-1

Table of Figures Figure 1.Dataflow between HBX and Salesforce.com .................................................................. 120 Figure 2. Default Reports ............................................................................................................. 165 Figure 3. Navigation Reports ........................................................................................................ 165 Figure 4. Campaign Reports ........................................................................................................ 166 Figure 5. Commerce Reports ....................................................................................................... 166

Page 12: Hitbox Installation Guide

| Page xii

Table of Code Samples Code Sample 1. Perl script............................................................................................................. 28 Code Sample 2. ColdFusion script ................................................................................................. 28 Code Sample 3. PHP script............................................................................................................ 30 Code Sample 4. Simple ASP script ................................................................................................ 31 Code Sample 5. Advanced ASP script ........................................................................................... 32 Code Sample 6. Web-To-Lead Form Submission Page ............................................................... 117 Code Sample 7. Funnel Variable in the page code ...................................................................... 182 Code Sample 8. Page Error Code Variable in the page code ....................................................... 185 Code Sample 9. Form Validation Variable in the page code......................................................... 187 Code Sample 10. Simple Form Validation .................................................................................... 187 Code Sample 11. Simple Form Validation (no name assigned to form attribute) .......................... 187 Code Sample 12. Simple Form Validation (various combinations) ............................................... 188 Code Sample 13. Advanced Form Validation (onClick handler). Example 1 ................................A-26 Code Sample 14. Advanced Form Validation (onClick handler). Example 2 ................................A-26 Code Sample 15. hbx.asp ............................................................................................................ B-1 Code Sample 16. Simple ASP example ....................................................................................... C-1 Code Sample 17. Advanced ASP example .................................................................................. D-1 Code Sample 18. Server-side Form Validation using asp ............................................................ E-1 Code Sample 19. Server-side Form Validation using ColdFusion ................................................. F-1

Page 13: Hitbox Installation Guide

|Page 1

Introducing HBX™

Welcome to HBX™, the latest and most advanced version of the premier Web analytic service offered by Omniture®. HBX introduces a host of new features and enhancements aimed at expanding your understanding of on-line behavior of Web visitors to your site. With HBX, you can gain insights into optimizing design strategies for your site and its content, as well as to increase return on investment and improve conversion rates. HBX can also help you track data about the off-line and cross-channel portions of your enterprise.

Visual Sciences, Inc. is now Omniture, Inc. Read more at www.omniture.com.

Review the list of new features in the following section.

New Features and Enhancements

HTML User Interface and Dashboard Enhancements

Drag-and-drop Personal Dashboards. It's easy to rearrange dashboard elements in a current or new personal dashboard -- all you have to do is click and drag the element to a new position. HBX remembers this new position when you finish and every time you log in. Ten dashboards are now available.

Commerce reports in Personal Dashboards. You can add commerce reports to any of these dashboards.

Search Dashboards. A search utility lets you locate information in any dashboard in a snap.

List Element. You can now add a new List element to your dashboards. The list element presents rows from the summary table for non-Traffic metrics.

Shared or Published Dashboards. Suppose you design a dashboard with several key performance indicators (KPIs) for your department or organization. This dashboard can be published so that others who subscribe to the dashboard can also view this information. The dashboard you create is no longer restricted to your user profile.

Homepage or Default Report. Customize which report is displayed by HBX when you log into your account. Instead of a dashboard, you can configure HBX to display any report as your homepage. This allows you to review the most information at a glance. To set any HBX report as

your homepage, click the home page icon for that report, then click Set as HBX Homepage for this account.

Campaign Reporting Enhancements

Campaign Classification and Campaign Hierarchy. Add detail and filtering to campaign reporting by creating campaign classifications. You can associate selected data with HBX and salesforce.com campaigns and display the campaign grouped according to that data.

Saved Campaign Hierarchy Reports. Once you have created a campaign classification and grouped campaign data to show filtered results, you can click to save the report.

New Content Report

Average Time Spent on Content Hierarchy. In this new report, view the average time spent on each content hierarchy group for your account. The information in this report also appears as a new column in the Content Hierarchy Summary report, along with the page views, visits, and number of uniques associated with content hierarchy groups.

Page 14: Hitbox Installation Guide

|Page 2

Forgot your password?

No problem! Just click the Forgot my password link under the login area and enter the email address associated with your HBX user name. After Omniture authenticates your information, you will receive a new password by email.

NOTE: You must change this password the next time that you login.

Localization in Japanese

The HBX and Downloads and Administration interfaces are now available in Japanese.

Choose日本語 from the languages dropdown menu on the HBX login page.

Installation Introduction

HBX provides you advanced real-time outsourced Web intelligence. It analyzes information gathered by visitor and customer interaction with specially coded pages on your Web site. The code you place on your site's pages generates valuable data that is then processed by HBX in real time. While the actual process of adding code to pages is straightforward, an optimal implementation of HBX code requires some strategic planning and insight into your business needs, and how those needs are best met by the design of your Web site.

To profit from an HBX installation, there are several steps involved in installing HBX. Some of these steps are discussed in this installation guide; others are better answered through training provided by Visual Sciences; still others depend on the logical structure of your Web site and your targeted audience of Web users. Use a process-based approach to optimizing visitor click-through and increasing customer retention. This approach is known as the continuous improvement methodology. It involves the following steps.

Set up your account with HBX.

Analyze how your site currently enhances acquisition of visitors, encourages repeat customers, handles click-through, and retains visitors.

If necessary after this analysis, make changes to your Web site to increase capture rate.

Create models of the business logic based on anticipated visitor behavior and customer scenarios.

Identify the pages, pages groups, input forms, advertisements, or Flash objects on your site where customer interaction may generate information crucial to your business

Download the latest HBX .js file, and add page code tailored to these pages

Add more generic page code to other pages of your site.

Create internal users for your HBX account.

"Beta test" your implementation with internal users, and tweak the design if required.

Launch your newly coded pages.

Implement incremental changes to refine your Web site design, based on your customer's feedback or changes in your marketing and product management strategies.

You can also use HBX page code as a kind of live diagnostic or debugging tool to see where bottlenecks occur in the current Web site design, and to identify revenue-generating channels or actionable page paths. After analysis, you can then implement optimizing changes to your site.

This installation manual directly addresses bullets number five through seven above. The bullet items eight and nine are discussed in the HBX User Manual

Page 15: Hitbox Installation Guide

|Page 3

To continue with this installation, you must have an administrator-level password to be able to logon to the HBX Site Tools and Edit Account area.

Identifying Essential Pages or Flash Media Objects

In the early pre-commercial days of the World Wide Web, a Web site was no more than a public ally (or privately) accessible URL containing listings of files. The introduction of graphic Web browsers extended the visual appeal and functionality of Web sites. Regardless of the complexity of the backend programming or amount of content, today's Web site should try to strike a balance between content and presentation, between product offerings and "eye candy".

Omniture recognizes that the crucial page for any Web site is the index page or home page. Because this is the page that reflects your business to many visitors for the first time, its design is key to retaining visitors and customers. If a visitor arrives at the home page in search of information, but can't find it quickly, you may lose a potential customer. Other visitors may arrive at your Web site after being referred by a link from another site, a search engine, a banner ad, and so on. If a visitor follows a link into your site, and the page is not found, you may lose future visitors.

Remember that what is considered a key page for your site depends on the kind of business logic you are applying to the pages. A form submission page might be considered a perfect candidate for applying HBX specialized form abandonment tracking to pinpoint the field where visitors lose interest or are unable to complete the form. By contrast, a power HBX user may wish to add lead tracking to the page confirming a form submission, recognizing that this information made available in the forms on this page may eventually generate several business opportunities.

HBX allows you to evaluate the relative strength of approaches you take to implementing business logic on your Web pages. If you design pages to promote a visitor's one-way navigation of a funnel to the conversion level, you might use different methods for placing links, graphics, and content than for a two-step response-conversion campaign. Yet other methods for arranging content and improving usability should be applied when handling referrals from portals or banner ads.

HBX Terminology

In this HBX Installation Guide, certain terms referring to the coding of pages are given special meanings. This section defines these terms and provides examples of their use.

variable - A variable is traditionally defined as a location in memory where a value can be stored for use by a program. HBX uses only JavaScript variables to store values for use in tracking visitor behavior on a site. All HBX JavaScript variables are defined in the page code with the general form hbx.h1="value"; All HBX JavaScript variables begin with the characters hbx. and are generally no longer than five characters. For the expression following the variable identifier to be a valid variable definition, the equals sign = must separate the variable and its value. In addition, the statement must be terminated with the semicolon ; The value must be enclosed on both sides by double quotes " The amount of whitespace between the variable the equal sign and its value is irrelevant, as long as the entire statement occurs on the same line. The value initially assigned to the variable in the HBX page code is known as its default value. Many HBX variables have a null default value, that is the value = "";

Examples:

hbx.hra="";

hbx.cp="null";

hbx.pn="PUT+PAGE+NAME+HERE";

Page 16: Hitbox Installation Guide

|Page 4

value - Valid data assigned to a variable. Consult the illegal characters (below), page coding and campaign coding, and campaign ID charts in the HBX installation guide to determine what constitutes valid data, in terms of length and kinds of characters permissible, case sensitivity, and permissible separators, such as comma or semicolon. When defining variables in the page code, the value must be enclosed on both sides by double quotes "" If a value is defined in the URL, no double quotes are used. The value initially assigned to the variable in the HBX page code is known as its default value. Many HBX variables have a null default value, that is the value = "";

Examples:

in page code

"PUT+PAGE+NAME+HERE"

"EMC-5240;LAST;BAC-2430,ILC-2388;NLL-8203"

"myDynamic01"

"(3,2c)|(2,1)"

in URL queries

EMC-5240;LAST;BAC-2430,ILC-2388;NLL-8203

myQuery

name-value pair - In a URL, a name-value pair consists of an equality statement for a variable's name and its value. The general form is NAME=VALUE. The syntax of value portion of the name-value pair can change according to the number of HBX accounts being tracked, or whether more than one value can apply to a specific page.

Examples:

http://www.whynot.com?CMP=EMC-5240

CMP is the name and EMC-5240 is the value

http://www.whynot.com?MyStaticGoal=EMC-5240;LAST;BAC-2430,ILC-2388;NLL-8203

MyStaticGoal is the alternative campaign query parameter (that is, the name) and LAST, EMC-5240, BAC-2430, ILC-2388, NLL-8203 are values

attribute - An attribute is a feature that is essential or crucial to something. An essential attribute of an acid is its sour taste on the tongue. In HBX, the word attribute can be applied to several features.

Response Attribute, Lead Attribute, Conversion Attribute

A response attribute might be "Contains+Flash"

(hbx.hra="Contains+Flash";)

This indicates that the response campaign page contains a Flash object.

A lead attribute might be "store+locator"

(hbx.hla="store+locator";)

This indicates that the lead designation page contains a store locator.

A conversion attribute might be "Order+confirm+offers"

(hbx.hcn="Order+confirm+offers";)

to indicate that the goal page presents special offers once the visitor's order is confirmed.

Page 17: Hitbox Installation Guide

|Page 5

Custom Metric

Values assigned to the custom metric variables (hbx.hc1 through hbx.hc4) are also used as attributes.

if hbx.hc1="4+wheel+drive";

the attribute or essential feature of the custom metric page is "4 wheel drive".

Page error code

Values you assign to the page error code variable (hbx.pec) are also used as attributes.

if hbx.pec="Invalid+Address";

the attribute for the page is "Invalid Address" Generally, the page error code variable allows you to insert specific attributes to track and debug problematic pages. But, you can implement the page error code variable to track any essential feature of a page.

Attributes you apply to pages by coding these variables are typically reported in the rows of the summary table for the statistic. Note that attributes are values assigned to page code variables, while attribute names or labels (see below) describe these values, and are determined through administration tools in HBX (either the Campaign Administration page, by uploading campaigns, or HBX Downloads and Administration > Edit Account page).

attribute name or label - An attribute name or label is the user-defined identifier for an attribute. In HBX, the attribute label is modifiable for two kinds of attributes.

Attribute Tab for Campaign Responses A default name "Attribute" appears on the tab used to display the list of response attributes tracked by HBX.. You change this default by modifying the attribute label when creating/updating campaign definition files through the upload feature, or by entering a name in the Attribute name field in the Campaign Administration Field. For example, if attributes you assign to your response pages generally describe content-based aspects of the response page, hbx.hra="news"; hbx.hra="editorials"; hbx.hra="feature+article"; you might consider the attribute label "Content" when creating a campaign.

Page 18: Hitbox Installation Guide

|Page 6

Custom Metric Menu names The default name for menu choices in the Custom Metric menus is Custom Metric 1 (or Custom Metric 2 - 4). You change this default by entering a new name in the HBX Downloads and Administration > Edit Account page. For example, if the custom metric attribute hbx.hc1 for one set of pages generally describe sports, hbx.hc1="squash"; hbx.hc1="curling"; hbx.hc1="croquet"; you might consider the attribute label "Sports" when changing the Custom Metric 1 name in the HBX Downloads and Administration > Edit Account page.

query parameter - In HBX, query parameter is the name given to the value assigned to several variables following the special shortcut notation. For variable definitions of the form

hbx.cmp="_P::VALUE"; hbx.dcmp="_P::VALUE"; hbx.gp="_P::VALUE"; hbx.hra="_P::VALUE";

and hbx.hra="_R::VALUE";

Page 19: Hitbox Installation Guide

|Page 7

the VALUE component of the definition is the query parameter.

alternate (dynamic) campaign query parameter if hbx.cmp="_P::myStatic01"; or

hbx.dcmp="_P::myDynam01"; the alternate (dynamic) campaign query parameter is myStatic01 (myDynam01)

if hbx.gp="_P::myGoal01"; the alternate goal page query parameter is myGoal01 attribute query parameter - an attribute query parameter is the name of the value assigned to the hbx.hra variable following the special shortcut notation if hbx.hra="_P::pos"; the attribute query parameter (for current page) is pos if hbx.hra="_R::qw"; the attribute query parameter (for referring page) is qw

query parameter value - In HBX, the value assigned to the query parameter. This term applies to both the alternate query parameters and the attribute query parameters (see above).

for the alternate campaign query parameter form of the variables hbx.cmp or hbx.dcmp if hbx.cmp="_P::myStatic01"; and query is http://abc.com/abcd.htm?myStatic01=EMC-2312 the query parameter is myStatic01 and the alternate campaign query parameter value is EMC-2312

Page 20: Hitbox Installation Guide

|Page 8

for the alternate goal page query parameter form of the variable hbx.gp if hbx.gp="_P::myGoal01"; and query is http://abc.com/abcd.htm?myGoal01=EMC-2312 the query parameter is myGoal01 and the alternate goal page query parameter value is EMC-2312 attribute query parameter value - an attribute query parameter value is the value assigned to the attribute query parameter form of the hbx.hra variable if hbx.hra="_P::pos"; and URL of current page is http://abc.com/abcd.htm?pos=middle3 the query parameter is pos and the current page attribute query parameter value is middle3 if hbx.hra="_R::qw"; and URL of referring page is http://abc.com/bcd.htm;http://msite.com/yz.htm?qw=turbine the query parameter is qw and the referring page attribute query parameter value is turbine

conversion - For HBX, the conversion is loosely a change in the cookie information associated with a visitor once certain conditions are met (such as performing certain on-line actions and/or landing on a Web page, known as an event). A conversion can also be associated with a value.

For a simple example, if a visitor responds to an HBX campaign by visiting a response page where the campaign is coded, the cookie stores information about that campaign. This first visitor action is the response event. Once the same visitor lands on a goal page for the campaign, HBX modifies the information on the cookie about that response. In order to land on the goal page, the visitor often must satisfy an e-business goal, such as submit a form to sign up for a service, make a purchase, click on a banner ad, and so forth. This second visitor action is called the conversion event. After landing on the goal page, the cookie indicates that the campaign has converted for that visitor. If the goal page has an associated value, it is also included in the change in cookie information.

Conversions are not confined solely to landing on goal pages, but to a number of situations which are either pre-defined by HBX or which you can custom define, based on page name, content group, link ID, URL, or form submit name.

conversion page - For HBX, the conversion page is the page containing HBX code that triggers a conversion when using the landing page method, or when defining a custom conversion via the conversion administration page. A conversion page may also be associated with a conversion value.

Page 21: Hitbox Installation Guide

|Page 9

In the case of an HBX campaign, the conversion page is defined by assigning a campaign ID to the hbx.gp variable, while its conversion value corresponds to the value assigned to the hbx.hcv . For an HBX funnel, the conversion page is indicated by a c in the level definition of the hbx.fnl variable. For the HBX commerce module, the conversion page contains the order confirmation page code, and the corresponding value of the conversion is the sum of the comma-delimited values assigned to order variable hbx.pc. For a custom (or generic) conversion, the conversion page contains a custom event defined in the custom event section of the HBX page code. For a custom event, value is taken from the value assigned to the cnv.value variable.

Note that you can also define a page as a conversion page to trigger a custom conversion -- without altering the page code -- by specifying the page name in the conversion administration page.

Unicode Support in HBX

You can track Unicode-encoded pages with HBX if your Web site contains Unicode page names, content groups, or link IDs, custom metric data, product names (in the HBX commerce module), and so on. This Unicode information will be rendered in the HTML UI properly. You can also enter Unicode information in various text boxes in the HTML UI.

While the discussion below focuses on page names, it applies equally to content groups, link IDs and any other string data handled by HBX.

For example, if the title of your Web page contains the following string with Unicode characters:

%u05DC%u05D0%u05E8%u05E9%u05D9%u00A0%u05E2%u05DE%u05E9

it will be displayed in the HBX report as this:

This assumes that your browser encoding is set to display Unicode.

To change your browser to display Unicode (UTF-8) character encoding:

• in Firefox go to View > Character Encoding > Unicode (UTF-8)

• in Internet Explorer, go to View > Character Encoding > Unicode (UTF-8)

Special Considerations

Browsers do not handle Unicode information from referrers (such as search engines) in the same way. Suppose a referring URL contains information from Unicode sources. This information is re-encoded by browsers differently. When displayed in reports such as Referring URLs, Internet Explorer displays that information in mouseovers as boxes or question marks. Mozilla-based browsers (Firefox and Netscape) correctly render the Unicode characters as intended.

The same principle applies to HBX reports Campaigns > Campaign Performance > Campaign Response for OKC or KNC/KNL campaigns in the drilldown to Typed Keywords, as well as the Acquisition Sources > Typed Keywords > Clicks report. While the search engine sends a URL that contains the typed keyword, that URL is not a UTF-8 compliant URL. Some search engines render this information as a UTF-8 URI, while others use different encodings. Because the URL is often non-standard, HBX cannot decode the Unicode information contained in it. For example, a typed keyword may be displayed in the following manner: OKC-OrganicKeywords|»ªçæ775i945gz hdòôæµ²å¿×

Page 22: Hitbox Installation Guide

|Page 10

The Scheduled Report task name currently does not allow entry of Unicode information. If you enter Unicode or extended ASCII characters in the name of the Scheduled Report task, HBX does not display the name correctly.

Note about differences in reporting prior to and following the release of HBX V3.7

In all versions of HBX up to version 3.6, characters from the extended ASCII character set (the range between 128 and 255) were processed differently than characters in the non-control set of printable ASCII (the range between 32 and 126). HBX did not sanction the use of these extended ASCII characters when implementing the HBX page code. Nonetheless, extended ASCII characters are found in some page names. Examples include pages with the copyright symbol © or the registered trademark symbol ®, or any accented characters used in Western European languages such as à é ü or esset ß.

In HBX versions prior to V3.7, page names containing these characters were captured and processed by HBX, but the portions of the name using the extended ASCII characters were rendered with special characters. With the release of HBX 3.7, page names containing the extended ASCII characters will be correctly displayed.

It is important to understand that although the same underlying page name is associated with the data being displayed in the HBX report, the traffic associated with the page name displayed prior to HBX 3.7 will no longer be counted in V3.7. Instead, the data will begin to be associated with the correctly displayed page name in HBX V3.7. This implies that traffic and visitor trends for page names containing extended ASCII characters are interrupted.

Suppose that in HBX V3.6 the underlying page name (found for example between the <TITLE></TITLE> tags on the html page) is Best Practices in Enzyme® Detention and Deportation. In the HTML UI, traffic on the page (in the Most Requested Pages report) may be connected with a displayed page name of Best Practices in Enzyme[(¿ Detention and Deportation. Note that the registered copyright symbol is not displayed.

In HBX V3.7, the page is displayed in the report as Best Practices in Enzyme® Detention and Deportation. Here, the registered trademark is correctly displayed. HBX data that was previously counted under the page name missing the registered copyright symbol will instead be counted with the page name with the symbol.

Illegal Characters

Many areas within HBX and the HBX commerce module allow you to enter information. These include places to:

customize your view (Customize Dashboards)

create user profiles and passwords (User Administration)

change account information (Edit Account)

write notes on trends you have built (Note Administration)

create funnels (Funnel Administration)

specify page names or content groups as funnel level criteria in tagless funnels, tagless campaigns, and custom-defined conversions (Tagless Funnel Administration, Conversion Administration, Tagless Campaigns)

search keywords for building funnel level criteria in tagless funnels (Tagless Funnel Administration)

specify filters for active segments (Creating Active Segments)

define conversion names (Conversion Administration)

Tip

Page 23: Hitbox Installation Guide

|Page 11

enter page names or content groups as custom conversion criteria, and assign a value to the conversion (Conversion Administration)

give names to report schedule jobs (Schedule Reports)

assign names to visitor segments (Population Groups, Active Segmentation Administration)

manage campaigns (Campaign Administration)

add campaign classifications and classification parameters (Campaign Classification)

name the custom metric report (Custom Metric)

add names of commerce module stores and rename the Custom Metric 1, Custom Metric 2, and so on product and order variables (Commerce Administration)

For each of these data-entry areas, restrictions are placed on both size and content, that is, the number and choice of characters. Size constraints range from 0 to 500 characters. In terms of character choice, you are in general allowed to use most of the printable (non-control code) characters in the ASCII character set (ASCII decimal values 33 - 126), with the exception of the ampersand & single ' and double quotes " and the greater than and less than signs > < . In addition, you can use any characters in the extended ASCII character set and any Unicode characters. Read more about extended ASCII characters and the Unicode character set.

For custom conversions, <sname> and <cname> must adhere to rules for valid JavaScript identifiers. A valid JavaScript identifier may begin only with an upper- or lower-case character (a through z or A through Z), as well as the underscore and dollar sign. _ $ You cannot begin a JavaScript identifier with a numeral. When assigning values to HTML or JavaScript attributes, ensure that you avoid reserved JavaScript identifiers or words. A partial list of JavaScript identifiers may be found at this link. In addition, avoid assigning any value to an HTML or JavaScript attribute that matches any of the internal JavaScript methods. For example, because JavaScript has the internal submit method of the document.form object, do not use submit as the value of a name.

In particular, do not use the following values:

name=submit

name=onSubmit

For a full listing of all HBX page code, campaign, and custom event variables, refer to the summary table of variables or Appendices H and I of the HBX Installation Guide. For a listing of HBX commerce module variables, consult the summary table of variables.

The following chart shows the ASCII decimal values 33 to 126. Extended ASCII characters 128 to 255 are allowed as well as characters from the Unicode character set.

Characters not allowed in any user-entry field are highlighted in red.

In addition to the red characters, the characters shown in blue are also not allowed when coding page names, content names, page code variables, or user names created in the HBX Administration and Downloads User Administration page.

Note that the forward slash is allowed for content names.

Also, the pipe character is allowed as a delimiter for the custom metric attribute

Page 24: Hitbox Installation Guide

|Page 12

Page 25: Hitbox Installation Guide

|Page 13

HBX DOWNLOADS AND ADMINISTRATION AREA

USER DATA ILLEGAL CHARACTERS NUMBER OF

CHARACTERS ALLOWED

USER AND GROUP NAME

- _ ALLOWED

only lower-case alphabetic and numeric characters allowed in

user name. Unicode characters and these ASCII characters not allowed: | % ' " ` * + [ ] { } ; : ? ^

( ) < > / \ # ~ &

2 TO 20

PASSWORD

MUST CONTAIN ONE CHARACTER EACH

FROM THREE OF THE FOLLOWING

FOUR CLASSES:

1) LOWER-CASE ALPHANUMERIC

2) UPPER-CASE ALPHANUMERIC

3) NUMERAL (0 TO 9)

4) NON-ALPHABETIC CHARACTERS

(SUCH AS !, $, #, %)

Unicode characters not allowed.

Illegal Characters ' " & space + < >

5 TO 15

ACCOUNT NAME Illegal Characters

' " & < > UP TO 30

EMAIL ADDRESS

only alphabetic, numeric and these - _ @ . , $

characters allowed

GROUP DESCRIPTION Illegal Characters

' " & < > UP TO 30

CUSTOM METRIC NAMES AND CROSS-

METRICS

Illegal Characters ' " & < > UP TO 25

SEARCH ATTRIBUTE LABEL Illegal Characters

' " & < > UP TO 25

SALESFORCE.COM USER NAME Illegal Characters

' " & < > UP TO 15

SALESFORCE.COM PASSWORD Illegal Characters

' " & < > UP TO 15

HBX Downloads and Administration area Illegal Characters

Page 26: Hitbox Installation Guide

|Page 14

Summary of Illegal Characters and Size of Entries for User Entry Fields In HBX

USER DATA ILLEGAL CHARACTERS NUMBER OF CHARACTERS

ALLOWED

EDIT ACCOUNT

USER FIRST NAME ' " & < >

UP TO 25

USER LAST NAME ' " & < >

UP TO 25

COMPANY/ORGANIZATION ' " & < >

UP TO 25

SITE DESCRIPTION ' " & < >

UP TO 120

EMAIL ADDRESS only alphabetic, numeric and

these - _ @ . , $

characters allowed

JS FILE LOCATION ' " & < > MUST START WITH http:// OR

https:// AND END WITH

<hbx_file_name>.js

FUNNELS

FUNNEL NAME ' " & < > UP TO 25

FUNNEL LEVEL NAME ' " & < > UP TO 25

TAGLESS FUNNEL PAGE OR

CONTENT GROUP NAME ' " &

UP TO 100

POPULATION GROUP

POPULATION GROUP NAME ' " & < > | UP TO 15

ACTIVE SEGMENTS

ACTIVE SEGMENT NAME ' " & < > UP TO 25

ACTIVE SEGMENT

DESCRIPTION ' " & < >

UP TO 40

FILTER CONDITIONS FOR

ACTIVE SEGMENTS

' " & < >

| not allowed when specifying text for

a Geography filter UP TO 100

UNIQUENESS FILTERS

UNIQUENESS FILTER NAME ' " & < >

UP TO 25

UNIQUENESS FILTER

DESCRIPTION

' " & < > UP TO 40

Page 27: Hitbox Installation Guide

|Page 15

UNIQUENESS FILTER

OPERAND ' " & < >

UP TO 100

NOTES

NOTES BRIEF DESCRIPTION ' " & < > + UP TO 25

DESCRIPTION (NOTES) ' " & < > + UP TO 500

CAMPAIGNS

CAMPAIGN DESCRIPTION ' " & < > , UP TO 30

CAMPAIGN ID SUFFIX ' " & ! # $ % ^ * : | / \ < >

~ ; = , + UP TO 24

CAMPAIGN COST 0.00 TO 10 BILLION MINUS 0.01

AUDIENCE SIZE 1 TO 10 BILLION MINUS 1

CONVERSION VALUE

OVERRIDE 0.00 TO 10 BILLION MINUS 0.01

VALUE OF A RESPONSE OR

LEAD EVENT TRIGGER ' " & < >

UP TO 1024

ATTRIBUTE PARAMETER

(RESPONSE OR LEAD) ' " &

UP TO 20

CAMPAIGN CLASSIFICATION

LABEL ' " < > , \ &

UP TO 24

CLASSIFICATION PARAMETER ' " < > , \ & UP TO 24

CAMPAIGN ATTRIBUTE

REPORT TITLE ' " & < > ,

UP TO 30

DEFAULTS TO "ATTRIBUTE"; FOR

KEYWORD CAMPAIGNS, DEFAULTS

TO "KEYWORD"

CAMPAIGN RESPONSE

EXPIRATION

UP TO 9999 (DAYS)

CONVERSIONS

CONVERSION RULE AND

GOAL NAMES ' " & < > , \

UP TO 25

CRITERIA FOR CONVERSION

RULE TRIGGER ' " < >

UP TO 100

CONVERSION VALUE 0.00 TO 10 BILLION MINUS 0.01

CONVERSION GROUP NAME ' " & < > \ UP TO 25

Page 28: Hitbox Installation Guide

|Page 16

DASHBOARDS

DASHBOARD NAME ' " & < > ^ UP TO 25

DASHBOARD DESCRIPTION ' " & < > , UP TO 250

CONFIGURE DASHBOARD

ELEMENT - GOAL VALUE

AND BREAKPOINTS 1 AND 2

whole number or fractional number (2

decimal places) 0 TO 100 BILLION MINUS ONE

SEARCH UTILITY

SEARCH KEYWORD ' " & UP TO 25

SEARCH TERM (PAGE OR

CONTENT NAME, LINK ID,

URL)

' " & UP TO 100

SCHEDULE REPORTS

SCHEDULE REPORT TASK

NAME

Unicode characters not allowed ' " & < > UP TO 25

HBX COMMERCE MODULE

USER DATA ILLEGAL

CHARACTERS NUMBER OF CHARACTERS ALLOWED

COMMERCE

STORE NAME

only alphabetic and numeric

characters allowed UP TO 30

NAME OF ORDER-LEVEL AND

PRODUCT-LEVEL CUSTOM

METRICS

only alphabetic and numeric

characters allowed UP TO 30

HBX Illegal Characters

Page 29: Hitbox Installation Guide

|Page 17

HBX Page Code

The HBX page code, available for download on the Site Tools and Reporting > Edit Account page, comes in several varieties, depending on the kinds of content on your site and statistics you wish to track. For tracking virtually all HBX statistics, use the HBX code. For tracking the Broken Link Pages and Files Not Found statistics, place the Error Page code on the 404-error page that your server uses. For tracking interaction with Flash objects on Web pages, use the HBX Code and make modifications to the source code for the Flash media object.

The hbx.js file (discussed below) to be placed on your server works together with the HBX page code inserted in your Web pages to track visitor behavior. Because many important tracking functions are defined in the .js file, the file is referenced by the page code. Instead of placing all of the defined functions on the page itself, this separate arrangement keeps the page code light and accelerates the download of pages for visitors.

File names for the HBX page code available for download are: hbx_page_code_standard.txt hbx_page_code_commerce_add_to_cart.txt

hbx_page_code_commerce_order_confirmation.txt

hbx_page_code_commerce_checkout.txt hbx_page_code_no_external_js_file.txt hbx_page_code_for_error_pages.txt and hbx_wireless.txt

Placement of the HBX Page Code

In general, it is recommended that you place the HBX page code just after the opening <body> tag on your Web pages. If you are more interested in tracking link views on the page, place the page code at the very end of your Web page, just before the closing </body> tag.

Organization of the Page Code

The HBX page code is arranged in several sections. These groups of variable definitions are either structural or functional in nature. A structural variable definition group indicates parts of the page code that are mandatory or optional, editable or non-editable, whereas a functional variable definition group indicates how the variable definitions are used by HBX. JavaScript variables supporting campaigns, for example, have their own section. The structural variable definition groups include:

//REQUIRED, NON-EDITABLE SECTION //BEGIN EDITABLE SECTION //REMAINING VARIABLES ARE ALL OPTIONAL //END EDITABLE SECTION //REQUIRED SECTION. CHANGE "YOURSERVER" TO VALID LOCATION ON YOUR WEB SERVER (HTTPS IF FROM SECURE SERVER)

In addition to these groups of structural variable definitions, comments are also used to mark the beginning of groups of functional variable definitions. These include:

//CONFIGURATION VARIABLES //ACTION SETTINGS //POPULATION GROUPS AND FUNNELS //CAMPAIGNS //CUSTOM VARIABLES //INSERT CUSTOM EVENTS

Comments about the role of page code sections

Variable and function definitions in the //REQUIRED, NON-EDITABLE SECTION are used to create a new JavaScript object used by the remainder of the page code. This JavaScript object is actually a pre-defined HBX custom event (a page view, or pv event). Other variable definitions appearing in this section are for internal use by HBX.

The //BEGIN EDITABLE SECTION lists several groups of functional variable definitions. The //REMAINING VARIABLES ARE ALL OPTIONAL comment marks the section with optional variable definitions. Optional

Page 30: Hitbox Installation Guide

|Page 18

indicates that you do not need to change the default values assigned to these variables unless implementing the function.

This installation guide details the implementation of the functional variable definition groups: Campaigns, Population groups, Funnels, Custom Variables, Custom Events, as well as other action settings and configuration variables. Some of these action settings are discussed in the Advanced Coding section.

For advanced users only

If you are concerned about the relative weight of the code on your Web pages added by the HBX page code and wish to expedite the loading of Web pages, certain variable definitions and groups of variables can be removed with no impact on the ability of the page code to gather information on visitors. Before you do this, make certain that if you remove certain sections or variable definitions, you only remove what you do not wish to collect for the Web page. For example, if you don't implement lead tracking or custom variables on a certain Web page, you may safely remove the lines in the page code where hbx.hlt hbx.hla and hbx.hc1 through hbx.hc4 are defined.

Any variable definition section following the comment

//REMAINING VARIABLES ARE ALL OPTIONAL

but before the section starting with the comment

//REQUIRED SECTION. CHANGE "YOURSERVER" TO VALID LOCATION ON YOUR WEB SERVER (HTTPS IF FROM SECURE SERVER)

may be safely removed from the code with no effect. Removing unused variable definitions from the page code is equivalent to leaving the unused variable assigned to default values in the page code.

The section starting with the comment

//CONFIGURATION VARIABLES

but before the section starting with the comment

//REMAINING VARIABLES ARE ALL OPTIONAL

must be modified if:

you have more than one account (change the hbx.acct variable) and/or

you wish to view HBX reports classified by content grouping you determine and avoid the appearance of the list item Ungrouped in content reports.

In addition, while you may also remove any of the JavaScript comments beginning with the double slash // It is recommended that you leave comments in the page code as a reminder of the names and functions of the variables and variable definitions groups.

Installing HBX Code and the hbx.js File

hbx.js File

Before you begin to code your Web site pages with HBX code, obtain a copy of the hbx.js file from Omniture. This file is crucial to the functioning of the HBX technology. If this file is not correctly referenced in the HBX code on your Web pages, you will receive browser errors.

The hbx.js File for HBX

The standard file hbx.js works for all HBX installations that use any version of the HBX page code (and for the HBX commerce module, the cart add abandonment, item view tracking, checkout abandonment code, and order confirmation page code), regardless of which JavaScript version the customer's browser uses.

It is suggested that you upload the hbx.js file to your server in a specific subdirectory, where it will not conflict with other files on your server. For example, you may wish to create a /js directory on your server for exclusive

Page 31: Hitbox Installation Guide

|Page 19

storage of the hbx.js file. Once you have uploaded this file, you need to make changes to the HBX page code you have already installed, or intend to install. These changes include:

placing the HBX code on your pages (or modifying already installed code) and assigning the page code variables you wish to use (as specified in the following sections of this document) and

changing the reference location of the hbx.js file in the code from <script language="javascript1.1" src="http://YOURSERVER/hbx.js"> to the location on your server (discussed in the next section). You can use either a relative path (for example, /js/hbx.js), or an absolute path (for example, http://outsourced.webserver.com/js/hbx.js).

If you specify an absolute path, and the Web pages you wish to track reside on a secure server, make sure you change http:// to https:// in the path name.

.js files must be hosted locally on your system. HBX no longer supports other locations for the .js file, such as on the Akamai server. If you have previous versions of the page code, you should ideally obtain the latest page code from the Site Tools and Reporting>Edit Account page. But you must change the reference of the .js file to point to a location on your server.

The hbx.js File and Secure-Served Web Pages

Tracking statistics when serving secure Web pages via the https:// protocol requires the use of the HBX page code with no external .js file reference if you wish to avoid security alerts thrown by the browser from inconveniencing the visitor to your Web site. Most browsers by default warn the visitor if the URL changes between secure and not secure mode. The HBX page code with no external .js file reference (also known as the SSL code prior to HBX) is a page code solution to the security alert issue. Rather than invoking the hbx.js file via an include statement, it "in-lines" the definitions and functions contained in the hbx.js file.

The HBX page code with no external .js file reference is larger in size than the HBX code because the hbx.js file is in-lined in the page code. If you wish to streamline, and reduce page loading times, you may use the regular HBX code and the hbx.js file for your SSL pages, but only if the Web pages are served via the https:// protocol and the hbx.js file is on a secure server.

To track secure Web pages via SSL, you must specify the location on the secure server where you store the hbx.js file. This location must be specified in the page code using a fully qualified, absolute URL, requiring a small change to the page code as outlined previously.

Note that you can make the same change to secure-served Web pages that implement the Error page code.

Downloading and Updating the hbx.js File and HBX page code (or HBX commerce page code HBX wireless page code for WML decks)

Initial Installation

Once you decide on which variety of HBX page code (or HBX commerce page code or HBX Wireless) to use for your site, and where you want to store the hbx.js file as explained in the preceding paragraph, you need to:

specify a target location for the hbx.js file

download the hbx.js file and

download the HBX page code (either HBX page code or HBX commerce page code or HBX Wireless)

Page 32: Hitbox Installation Guide

|Page 20

In the Site Tools and Reporting > Edit Account, you can download HBX page code (or HBX commerce page code) for your Web pages and the hbx.js file. To obtain the HBX page code (or the HBX commerce page code or HBX Wireless page code), click on both the Download Page Code File button for the variety of page code you need and the Download JS File button. If you have an HBX commerce account, read about the varieties of HBX commerce page code you can install on your e-commerce site in the HBX commerce installation guide. Read about how to track wireless devices on the WML decks for you wireless site.

Save both of these files to your local computer. In the Save As dialog box that pops up, specify a location on your local machine for saving the files. Once you save the files, copy only the hbx.js file to the target position you specified for your Web server.

To put the HBX page code (or HBX commerce page code) on your Web pages, you can either:

create a server-side script to assign values to HBX page code variables (for example, see hbx.asp) or

install the code manually.

A text box is provided for you to enter the target directory and location for the hbx.js file on your server. When you first set up your HBX account, this text box is blank.

Enter a fully qualified and valid URL (beginning with http:// or https:// and ending with hbx.js ) [example: http://www.mybestwebsite.com/js/hbx.js] in the text box. The URL must conform to character size and character types described in Illegal Characters. Click Update Account for HBX to remember the URL in your account configuration.

If the location entered is not valid, a popup message appears advising you to choose a valid location.

NOTE: You must enter a location for the JS file on your server and click on the Update Account button

before using the code in the text boxes on your Web pages.

Updating .js Files

The hbx.js file is periodically revised and updated to bring you the latest features of HBX. To obtain the updated file, simply click on the Download JS File button. The file specified in the location box is checked for version. Just as when initially saving the hbx.js file, a Save As dialog box pops up to specify a location on your local machine for saving the file. Once you save the file locally, copy it to the target position on your server. It is OK to overwrite the version on your server.

If you have the most recent version, a message indicates that the hbx.js file on your server is the most recent version.

If the file on the server is out of date, you will be prompted to download the latest version.

If HBX detects any modification to the hbx.js file on your server, you are advised that continuing to use the altered file may produce unexpected results.

If the location you specify is behind a firewall or otherwise protected from external requests, it is not possible for HBX to verify the recency of your .js file, but you can still download the most recent version.

Comparison of Multi-level Content, Campaign Analysis, Population Groups, and Funnels

Tip

Page 33: Hitbox Installation Guide

|Page 21

HBX offers a variety of real-time tools for analyzing and understanding visitor behavior on your site. Multilevel content tracking enables you to categorize visitors based on content group on those pages visited, and how "deep" the visitor is willing to dig for specific content. Campaigns quantify the respondent's behavior to specific sales campaigns by tracking movement between landing and goal pages. Population groups provide a way to slice and abstract out visitor traffic based on functionality of specific content or patterns in visitor-page interaction. Funnels allow you to map typical user goals and scenarios to your page content and business goals.

Page 34: Hitbox Installation Guide

|Page 22

TOOL/FEATURE BUSINESS

GOAL EXPLANATION EXAMPLE ADMINISTRATION

SAMPLES OF CODING ON PAGES

MULTI-LEVEL

CONTENT

TRACKS MOST

POPULAR/LEAST

POPULAR

CONTENT

GROUP

PAGES

CATEGORIZED

INTO CONTENT

GROUPS;

HIERARCHY OF

CONTENT UP TO 8

LEVELS DEEP

PRODUCT

PAGES;

DOWNLOAD

PAGES

NONE; SELECT FROM

LIST OF CONTENT

GROUPS TRACKED BY

HBE

hbx.mlc="/auto/paint";

CAMPAIGN

ANALYSIS

MEASURES

SUCCESS OF

MARKETING

CAMPAIGNS

RESPONSE &

CONVERSIONS TO

REGULAR AND

LEAD CAMPAIGNS

ARE TRACKED;

ROI CALCULATED

EMAIL

CAMPAIGN;

BANNER AD

CAMPAIGN;

NEWSLETTER

CAMPAIGN

DYNAMIC (NO

ADMINISTRATION

NECESSSARY)

CAMPAIGN

ADMINISTRATION TO

SELECT NAME,

LAUNCH DATE,

CATEGORY &

INVESTMENT IN

CAMPAIGN

LANDING PAGE METHOD

hbx.cmp="EMC-21523";

ON-LINE METHOD

&CMP=EMC-21523

POPULATION

GROUPS

COUNTS

MEMBERSHIP IN

PAGES WITH

CERTAIN

FUNCTIONALITY,

OR PAGES

REQUIRING

SPECIFIC

ACTION

CHANGES IN

POPULATION

GROUP

MEMBERSHIP

(CONVERSIONS)

ARE TRACKED

VISITOR IN

READER

POPULATION

GROUP

CONVERTS TO

REGISTRATION

POPULATION

GROUP BY

SIGNING UP

FOR A

SERVICE

POPULATION GROUP

ADMINISTRATION TO

NAME POPULATION

GROUPS

hbx.seg="1,-2";

FUNNELS

MODELS SIMPLE

VISITOR/SITE

USER

SCENARIOS

SEQUENCE OF

PAGES REFLECTS

THE TYPICAL

GOAL-DRIVEN

VISITOR PATH

PRODUCT

CATALOG

PAGE TO

COMPARISON

SHOPPING

PAGE TO

SHOPPING

CART PAGE

FUNNEL

ADMINISTRATION TO

SELECT FUNNEL NAME

AND LEVEL NAME

hbx.fnl="(2003,1)";

Comparison of Multi-level Content, Campaign Analysis, Population Groups, and Funnels

Page Names

Before you begin coding, make sure you have access to all your Web site pages. You should also determine a unique name for each of those pages. If you are coding for multiple accounts, refer to the advanced coding appendix. Keep these items in mind when you are defining page names:

The page names must conform to character size and character types described in Illegal Characters.

Page 35: Hitbox Installation Guide

|Page 23

If a page includes a product you want to track, you may want to include an identifier for the product in the page name (such as Catalog+Rolex515).

The page name variable in the HBX code is hbx.pn. The default assignment for the variable is "PUT+PAGE+NAME+HERE". In the code, it appears this way:

hbx.pn="PUT+PAGE+NAME+HERE";

If you do not define a page name within the HBX code, the Page Name variable will default to the page title within the HTML <title></title> tags. If you choose not to name your page, make sure to leave the default page name text "PUT+PAGE+NAME+HERE" in the code.

You may set the page name variable to default to the file name of the site page (such as, aboutus.html), rather than the page title. To do so, change the variable assignment hbx.pndef="title"; to hbx.pndef="index.html"; (or hbx.pndef="home.html"; or whatever file name the default document name is for your server) within the HBX code. When this variable has been changed, HBX will use the actual file name of the page instead of the page title if you do not define a page name with the page name variable.

Designating Content Groups

With HBX, you can group site pages together that contain similar types of content, such as download pages, product pages, corporate information pages, and so on. Group your pages together using the content group variable in the HBX code. Replace the content group default text "CONTENT+CATEGORY" with a content group for each page that you wish to be part of each content group.

The content variable in the HBX code is hbx.mlc. The default assignment for the variable is "CONTENT+CATEGORY". In the code, it appears this way:

hbx.mlc="CONTENT+CATEGORY";

For example, all your pages that provide product information could be identified with the content group "Products" within the HBX code. Content groups should follow the same parameters as page names, listed above.

Note that you are not required to add content group names to your pages. If you choose not to specify content groups for your pages, you must leave the text "CONTENT+CATEGORY" in the code. If you leave the text as the default value, certain content statistics will display the page as "Ungrouped".

Coding Multi-level Content Groups

The content grouping variable hbx.mlc in the page code allows you to define up to eight content levels for your site pages. Replace the text "CONTENT+CATEGORY" in the content variable with a content group name for each page that you wish to be part of each content group. Separate content group levels with a forward slash /

For example, if your site contains a section on sports, and that section contains the subsections football, baseball, and soccer, you may define content levels for each of those sections. So the pages within the top-level sports section would be given the content group "/Sports," the pages in the football section would be given the group "/Sports/Football," the baseball section "/Sports/Baseball," and so on. If the football section contained subsections on the NFL and the AFC, each of the pages in those sections could be further defined in the content groups "/Sports/Football/NFL," and "/Sports/Football/AFC."

The initial forward slash / should be placed at the beginning of each content group (/Sports/Football; not Sports/Football). There should be no forward slash at the end (/Sports/Football; not Sports/Football/). Content groups should follow the same coding conventions as page names (above).

If you do not define a content group for a page, then the content group variable will default to the full directory path of the site page as determined from the page's URL (for example, /about/company). If you want the content group variable default to display only the current directory in which the page resides (for example, /content) you may change the variable assignment hbx.ctdef="full"; to hbx.ctdef="current"; in the HBX code.

Page 36: Hitbox Installation Guide

|Page 24

Campaign Analysis

Campaign analysis allows you to use HBX to measure the success of marketing campaigns—both online and offline—designed to send visitors and customers to your Web site. Campaign analysis provides you with tools and measurements to measure the acquisition rate, response rate, time to conversion, and return on investment for marketing campaigns, as well as create dynamic campaigns, bulk upload and download campaign information, and track lead campaigns.

For more information, see Creating Campaigns and Coding Campaigns.

Population Groups

HBX allows you to define custom population groups for relevant site pages. Using population group, you can develop targeted programs and campaigns. A visitor entering a pre-defined location or arriving from a particular campaign, referrer, or domain may be tagged as a member of a particular population group. For example, a visitor may initially be a "reader". Upon registration for specific content, the visitor becomes a "subscriber". After a purchase, the visitor is converted into a "buyer".

For more information, see Creating Population Groups and Coding Population Groups.

Funnel Analysis

You can examine the sequential navigation and traffic behavior of your visitors within a given set of pages using funnels. A funnel is a group of Web pages with a discrete business goal, such as triggering a purchase or a subscription to a service. Ideally, a visitor enters the funnel at the first level, progressively interacts with other pages in the funnel, and arrives at a goal page. It is necessary to touch all levels in sequence without idling more than 30 minutes between levels of the funnel. The visitor may stray away from the funnel pages or go backwards in the funnel. But as long as all levels in the funnel are traversed in sequence, the visitor's funnel activity will result in a conversion.

Read more about Creating and Coding Funnels.

Installing HBX Code Manually

The following instructions will provide you general guidelines for installing the HBX code by hand. Installation variations for dynamically generated pages and sites with frames are discussed below.

1. Navigate to https://login.hitbox.com/login and log on to your HBX account.

2. A JavaScript file, hbx.js, supplied by HBX, must be uploaded to your server .

3. Select from the Site Tools and Reporting > Edit Account menu. Buttons in the Edit Account page allow you to download the HBX page code, HBX page code with no external .js file reference for secure pages, and the HBX error page code for 404-error page templates (or other appropriate templates that measure broken links or files not found). You use the HBX page code to track visitor interaction with Flash objects, if desired.

4. After downloading the appropriate page code in step 2, open the page code file in an editor.

5. Any changes or customizations to the page code must conform to character size and character types described in Illegal Characters. Also, refer to page naming conventions.

6. Open the HTML page in a text editor and paste the code into the file immediately after the open <body> tag. Read this note for improved link views tracking.

7. Change the reference location of the hbx.js file in the code from <script language="javascript1.1" src="http://YOURSERVER/hbx.js">

to the location on your server. You can use either a relative path (for example,

Page 37: Hitbox Installation Guide

|Page 25

/js/hbx.js), or an absolute path (for example, http://outsourced.webserver.com/js/hbx.js).

8. Replace the page name variable ("Put+Page+Name+Here") in the code with a unique name for the page. Use the + symbol in place of spaces. The content group must conform to character size and character types described in Illegal Characters. For example, a page with the name "Book Order Form" would be added to the HBX code as "Book+Order+Form". You may want to use your text editor's find and replace command to simplify this step. If you do not define a page name within the HBX code, the page name variable will default to the page title between the opening and closing <title></title> tags.

9. You may set the page name variable to default to the file name of the site page (such as, aboutus.html), rather than the page title. To do so, change the variable assignment hbx.pndef="title"; to hbx.pndef="index.html"; (or hbx.pndef="home.html"; or whatever file name the default document name is for your server) within the HBX code. When this variable has been changed, HBX will use the actual file name of the page instead of the page title if you do not define a page name with the page name variable.

10. Add the content group, if any, by changing the default assignment ("Content+Category") for the content grouping variable hbx.mlc. The content group must conform to character size and character types described in Illegal Characters. Follow the same guidelines as the page name variable, replacing any spaces with the + sign. You might want to use your text editor's find and replace command to simplify this step. If you choose not to define your content grouping variable, then the content grouping variable will default to the full directory path of the site page (for example /about/company/).

11. If you want the content grouping variable default to display only the current directory in which the page resides (for example /content/) you may change the hbx.ctdef variable from the default assignment of "full" thus: hbx.ctdef="full"; (default assignment) hbx.ctdef="current";(only current directory)

12. If you wish, add campaign information and population group, funnel, form validation, custom attribute, and error code information to your page.

13. Note that any variables listed in the code not directly addressed in the installation instructions are either automatically populated in the code itself (such as the account variable), or are currently inactive.

14. Repeat steps 3 through 11 for every page on your Web site that you want HBX to track.

Page 38: Hitbox Installation Guide

|Page 26

If you are upgrading your site pages with a new HBX account, or new HBX code, make sure you remove any old HBX code from your pages.

Installation for Frames

If your Web site uses frames, you should insert the HBX code only in the content frames, not in the navigation frames, side frames, or frameset. Follow the instructions above to add the code to the pages that will make up the content frames of your site.

Do not place HBX code in multiple frames. If you put code in more than one frameset, you will dramatically inflate your page view counts, and therefore fail to comply with Internet Architecture Board (IAB) standards. You will also artificially inflate your unique visitors, by 200 percent or more.

Installation for Dynamically Generated Pages

In order to install HBX code for dynamically generated pages, your site developer will need to write a program that resides on your Web server to dynamically insert the HBX code and replace the page name and content grouping variables in the code with the unique page name and content group at the time that each page is being generated.

If you only wish to collect statistics at the template level, insert the HBX code directly into your template page and replace the page name variable with the template's name and the content grouping variable with the template's content group. All pages using one template will be tracked as one page.

If you want to make changes to the page name and content group default variables, you should make these changes to the HBX code before you set up your dynamic insertion scripts.

Escaping Characters in HBX page code with no external .js file in Server-side Scripts

Certain characters are used internally with special meanings by server-side scripts (such as in the perl or ColdFusion languages). Examples include:

ColdFusion Web servers and the # character

Perl / Mod_perl-served cgi scripts containing the $ character

If you implement a server-side script in either of these two languages to generate values for variables in the page code with no external .js file (also known as the SSL code prior to HBX), you must make changes to the script so that the HBX page code can properly track Web traffic.

To handle special characters, it is necessary to escape them. To escape means to precede a special character with another character (an escape character) in order to toggle the meaning of the special character in a particular Web programming language. When the perl interpreter or the parsing engine in ColdFusion reads the input string of HBX code, it encounters this escape character and the following character. The second character is then read in with its literal meaning, and not the special meaning normally associated with it in the Web programming language.

Tip

Tip

Page 39: Hitbox Installation Guide

|Page 27

Each programming language has different escape characters. For ColdFusion, the escape character is hash #, while for perl the escape character is the backslash \ To ensure proper interpretation of HBX variables in the page code with no external .js file, follow these steps:

ColdFusion Web Servers

For every instance of a # character that is served via ColdFusion in any .cfm file or template, insert an additional # character just next to the existing one.

Example:

instead of

addBehavior("#default#homePage")

use the following code compatible with HBX

addBehavior("##default##homepage")

perl / mod_perl-served cgi Scripts

Ensure that the cgi script either:

escapes the HBX $ character

or

prints the output as a literal

Example:

instead of

function $ii(a,b,c){...}

use the following code compatible with HBX

function \$ii(a,b,c){...}

Here, the code is shown with the backslash character as escape character for the $

or

instead of

print <<PAGECODING; function $ii(a,b,c){...}

PAGECODING

use the following code compatible with HBX

print <<'PAGECODING'; function $ii(a,b,c){...}

PAGECODING

Here, PAGECODING is a block literal representing the entire second <script></script> section of the page code with no external .js file code. Literals (or block literals) are specified by single quotes around the value PAGECODING

Sample Scripts

Here are sample scripts to demonstrate how you can insert the correct HBX code into your dynamic pages, with the correct page name and content group, as they are being generated. A VB.NET example is found in Appendix G.

Perl Example

The following example shows a simple method of incorporating HBX code into a dynamic environment using perl/cgi scripts. The template is loaded and printed out, with variables in the template swapped for scalars in the

Page 40: Hitbox Installation Guide

|Page 28

perl scripts. The example assumes that you have a template with the HBX code in it with "markers" where you will be swapping dynamic values.

#!/usr/local/bin/perl -w use strict; my $page_name = "Airline Tickets"; ## set for substitution later my $content_category = "Travel"; ## set for substitution later if (param('to_do') eq "results") { ShowResults(); } sub ShowResults # some subroutine inside your perl script { # some database call my $results = $sth->fetchrow; ## call to template printing subroutine to print new code &#9;PrintForm($results, "Results"); } sub PrintForm ## slurps up template, and prints out, substituting dynamic variables { my ($to_show, $page_name) = @_; open (TEMPLATE, "/templates/form"); my @lines = <TEMPLATE>; close(TEMPLATE); print "Content-type: text/html\n\n"; foreach my $line (@lines) { $line =~ s/PUT\+PAGE\+NAME\+HERE/$page_name/g; $line =~ s/CONTENT\+CATEGORY/$content_category /g; $line =~ s/_RESULTS_HERE_/$to_show/g; print ("$line\n"); } exit; }

ColdFusion® Example

The following example shows a simple method of incorporating HBX code into a dynamic environment using ColdFusion®. By placing hbx.cfm somewhere on your server, you can then reference the <CF_HBX> tag in your page to automatically insert the appropriate code, page name, and content group name, as shown here:

<!--- Passing parameters to template ---> <CF_HBX AccountID="Account Number" Title="Page+Name" Content="Content+Category"> <P> This is your text. </P> ------------------------------------------------ The file hbx.cfm contains the following code: <CFSETTING ENABLECFOUTPUTONLY="True"> <!--- File: CF_HBX Date: 6/30/2000 Description: Auto inserts HBX code. You must pass the Account ID. ---> <CFIF NOT IsDefined("Attributes.AccountID")> <CFOUTPUT> <B>CF_HBX Error</B>: You must include the AccountID. </CFOUTPUT> <CFABORT> </CFIF> <CFPARAM NAME="Attributes.Title" DEFAULT="PUT+PAGE+NAME+HERE"> <CFPARAM NAME="Attributes.Content" DEFAULT="CONTENT+CATEGORY"> <CFOUTPUT>

Page 41: Hitbox Installation Guide

|Page 29

<!-- OMNITURE CODE HBX2.0 (Universal)--> <!--COPYRIGHT 1996 - 2008. OMNITURE, INC. ALL RIGHTS RESERVED. U.S.PATENT No. 6,393,479B1 and 6,766,370. MORE INFO: http://www.omniture.com/privacy/ --> <script language="javascript"> //REQUIRED, NON-EDITABLE SECTION var _hbEC=0,_hbE=new Array;function _hbEvent(a,b){b=_hbE[_hbEC++]=new Object();b._N=a;b._C=0;return b;}var hbx=_hbEvent("pv");hbx.vpc="HBX0200u";hbx.gn="hg123"; //BEGIN EDITABLE SECTION //CONFIGURATION VARIABLES hbx.acct="#Attributes.AccountID#";//ACCOUNT NUMBER(S) hbx.pn="#Attributes.Title#";//PAGE NAME(S) hbx.mlc="#Attributes.Content#";//MULTI-LEVEL CONTENT CATEGORY hbx.pndef="title"; hbx.ctdef="full"; //REMAINING VARIABLES ARE ALL OPTIONAL //ACTION SETTINGS hbx.fv="";//FORM VALIDATION MINIMUM ELEMENTS OR SUBMIT FUNCTION NAME hbx.lt="manual";//LINK TRACKING hbx.dlf="n";//DOWNLOAD FILTER hbx.dft="n";//DOWNLOAD FILE NAMING hbx.elf="n";//EXIT LINK FILTER //POPULATION GROUPS AND FUNNELS hbx.seg="";//POPULATION GROUPS hbx.fnl="";//FUNNELS //CAMPAIGNS hbx.cmp="";//CAMPAIGN ID hbx.dcmp="";//DYNAMIC CAMPAIGN ID hbx.dcmpe="";//DYNAMIC CAMPAIGN EXPIRATION IN YYYY:MM:DD FORMAT QUERY OR VALUE hbx.dcmpre="";//DYNAMIC CAMPAIGN RESPONSE EXPIRATION IN YYYY:MM:DD FORMAT QUERY OR VALUE hbx.hra="";//RESPONSE ATTRIBUTE hbx.hlt="";//LEAD TRACKING hbx.hla="";//LEAD ATTRIBUTE hbx.gp="";//CAMPAIGN GOAL hbx.hcn="";//CONVERSION ATTRIBUTE hbx.hcv="";//CONVERSION VALUE hbx.cp="null";//LEGACY CAMPAIGN hbx.cpd="";//CAMPAIGN DOMAIN //CUSTOM VARIABLES hbx.ci="";//CUSTOMER ID hbx.hc1="";//CUSTOM 1 hbx.hc2="";//CUSTOM 2 hbx.hc3="";//CUSTOM 3 hbx.hc4="";//CUSTOM 4 hbx.hrf="";//CUSTOM REFERRER hbx.pec="";//ERROR CODES //INSERT CUSTOM EVENTS //END EDITABLE SECTION //REQUIRED SECTION. CHANGE "YOURSERVER" TO VALID LOCATION ON YOUR WEB SERVER (HTTPS IF FROM SECURE SERVER) </script><script language="javascript1.1" src="http://YOURSERVER/hbx.js"></script> <!--END OMNITURE CODE--> </CFOUTPUT> <CFSETTING ENABLECFOUTPUTONLY="False">

PHP Example

The following example shows a simple method of incorporating HBX code into a dynamic environment using PHP. The example assumes that you have the HBX code as a template in a local file:

Page 42: Hitbox Installation Guide

|Page 30

/templates/HBX_code.txt. The example also assumes that your page names are in a database table PRODUCTS having the column NAME.

<HTML> <BODY> <SCRIPT language=PHP> /* Name: dynamic_HBX.php3 Requires: PHP3.0 (and MySQL for the database sample) */ /* ----------------------------------------------------------------- Declare the ITEM ID variable for this example. Normally, this would be passed in the QUERY_STRING. -------------------------------------------------------------------- */ $item_id = 1 ; /* ----------------------------------------------------------------- Declare the PAGE name and CONTENT TYPE variables. -------------------------------------------------------------------- */ $page_name = "" ; $content_cat = "" ; /* ----------------------------------------------------------------- Database connection variables. ----------------------------------------------------------------- */ $hostname = "dbmachine.yourdomain.com"; $username = "johnshaft"; $password = "superlove"; $dbName = "acme_products"; /* ----------------------------------------------------------------- Make connection to database. ----------------------------------------------------------------- */ MYSQL_CONNECT($hostname, $username, $password) OR DIE("Unable to connect to database"); @mysql_select_db("$dbName") or die( "Unable to select database"); /* ----------------------------------------------------------------- Select PAGE name variables from table. ----------------------------------------------------------------- */ $query = "SELECT name, content_category FROM products WHERE product_id = $item_id"; $result = MYSQL_QUERY($query); /* ----------------------------------------------------------------- Hopefully the query retrieved 1 record. ----------------------------------------------------------------- */ $number = mysql_numrows($result); IF ($number > 0) : /* ----------------------------------------------------------------- Retrieve Page Name and Content Category from database result set. ----------------------------------------------------------------- */ $page_name = mysql_result($result,0,name); $content_cat = mysql_result($result,0,content_category);&#9; /* ----------------------------------------------------------------- Read in HBX counter code Template from File. ----------------------------------------------------------------- */ $HBX_string = join('', file('templates/HBX_code.txt'));

Page 43: Hitbox Installation Guide

|Page 31

/* ----------------------------------------------------------------- Search and Replace variables in HBX code. Replace "PUT+PAGE+NAME+HERE" with the $page_name Replace "CONTENT+CATEGORY" with the $content_cat ----------------------------------------------------------------- */ $name_string = "PUT+PAGE+NAME+HERE" ; $cat_string = "CONTENT+CATEGORY" ; $HBX_code = str_replace($replace_string, $page_name, $HBX_string); $HBX_code = str_replace($replace_string, $content_cat, $HBX_string); ENDIF ; /* ----------------------------------------------------------------- Print the correct HBX code into the HTML. ----------------------------------------------------------------- */ PRINT " "; PRINT " "; PRINT $HBX_code; /* ----------------------------------------------------------------- Close the database connection. ----------------------------------------------------------------- */ MYSQL_CLOSE(); </SCRIPT> </BODY> </HTML>

ASP Examples

The following examples show two methods of incorporating HBX code into a dynamic environment using ASP.

Simple Method

By placing the file hbx.asp (in Appendix B) in a directory on your server, you can then reference the file in any page or template to automatically insert the appropriate code and page name as shown here:

<!--- Passing parameters to template ---> <%PageName = "Test Page" ContentCategory = "Test Content Category" AccountID = "YOUR ACCOUNT NUMBER" MachineName = "YOUR MACHINE NAME" %> <!--#include file = "hbx.asp"-->

Please refer to Appendix C: Simple ASP Example to see an example of this simple method of incorporating HBX code into an .asp page.

If you do not specify a page name or content category when you insert the code, then the standard HBX defaults will be used. Your customized code will already include your Account Number hbx.acct

Advanced Method

Tip

Page 44: Hitbox Installation Guide

|Page 32

You can also use any ASP variables already available in your site page to populate the page name and content variables within the HBX code. For example, if you wanted to pass the page name and parameters in the URL of the document such as http://www.yoursite.com/yourpage.asp?pagename=tpage&content=testcontent you could do so as demonstrated below:

<!--- Passing parameters to template ---> <%PageName = Request.QueryString("pagename") ContentCategory = Request.QueryString("content") AccountID = "YOUR ACCOUNT NUMBER" MachineName = "YOUR MACHINE NAME" %> <!--#include file = "Hbx.asp"-->

Please refer to Appendix D: Advanced ASP Example to see an example of this method of incorporating HBX code into an .asp page.

Installing HBX Code for Sites Built with Macromedia™ Flash®

HBX page code is tailored for use with Macromedia™ Flash 4.0+ Web sites and applications. The following instructions will show you how to track your visitors' navigation and interaction with your Flash Web site in the same manner that it is possible to track visitor activity in standard HTML-based Web sites.

In order to complete the installation of HBX page code on sites that use Flash objects, you need development knowledge of Flash 4.0, as well as a basic understanding of the ActionScript language used by Flash.

Integration of HBX JavaScript with Flash ActionScript

Standard HBX code is run once as each Web page is loaded, using JavaScript to gather visitor statistics and then sending that data to Omniture servers for storage and viewing using the HBX HTML interface.

The HBX page code and hbx.js file are designed for optimized tracking of Macromedia Flash objects. The page code script is loaded once but run many times. The script encapsulates or wraps the actions of the JavaScript in a function that is then accessed and modified by the Flash ActionScript getURL command.

To implement Flash tracking in HBX you must make the following changes:

download the hbx.js file

put the HBX page code available in the Site Tools and Reporting > Edit Account menu on pages with embedded Flash objects and

change the source code of your Flash file as described in the following section.

In addition, you may, under certain circumstances only, wish to modify the HBX page code. The modification involves defining the hbx.onlyMedia variable. When hbx.onlyMedia="y";, HBX gathers only information about the page that is made available from the Flash media object, provided that the Flash media object is modified as shown in the examples below.

If you are certain you wish to implement this specialized behavior, take the following steps.

in the HBX page code, add the hbx.onlyMedia variable, and assign it the value y thus: hbx.onlyMedia="y";

Page 45: Hitbox Installation Guide

|Page 33

Because this variable is absent from the conventional HBX page code, you must add it. This change ensures that only the information gathered from the media object (the Flash movie) on this page is sent to HBX for tracking when the page is loaded. For this variable, HBX only recognizes the lower-case y when enabling this feature.

change the source code of your Flash file as described below.

Modifying the Flash Source Code

Make your modifications to the source .fla Flash file in Macromedia Flash development studio. Changes generally involve adding one line of code in the URL field of the getURL command, with the following generic form:

javascript:function ("VariableName")

In Flash-based Web sites, users navigate to different areas of the site using button-behavior objects. The standard telltarget ActionScript command related to these buttons in Flash is part of the on release function. In order to use the Flash tracking capabilities of HBX, add the getURL command to the on release function as well, so that ActionScript will correctly call the HBX page code in the HTML page where the Flash program is embedded.

In describing these functions, the Flash event most commonly associated with an HBX function is the button on(release) event. Remember however that any Flash event may be associated with an HBX function as long as there is an on(release) (or similar) method for the Flash event.

HBX Flash Tracking Functions

There are several separate functions that you can call within the Flash object that send data to HBX about page views, exit links, download links, HBX funnels, campaigns, goal pages, link IDs, and population groups:

_hbPageView(YourPageName,YourContentCategoryName)

_hbExitLink(YourExitLinkName)

_hbDownload(YourDownloadName)

_hbFunnel((FunnelID,FunnelLevelID),YourPageName,YourContentCategoryName)

_hbCampaign(YourCampaignID,YourPageName,YourContentCategoryName)

_hbGoalPage(YourGoalPageCampaignID,YourPageName,YourContentCategoryName)

_hbVisitorSeg(YourPopulationGroupID,YourPageName,YourContentCategoryName)

_hbSet(AnyHitBoxGatewayVariable,AlternateValueofVariable)

_hbSet() / _hbSend()

_hbSend() / _hbHalt()

_hbLink(YourLinkID, YourLinkPosition, 'x, y, width, height')

_hbLink(YourLinkID, YourLinkPosition)

_hbLink(YourLinkID)

Suppose your Web site is about custom software applications. You might use a Flash movie to describe custom software applications. Pressing a button in the Flash movie may allow the viewer to access a section of your Web site or another portion of your Flash movie that presents information on application service providers (ASPs). If you want to use HBX to track the Flash movie user's page view activity or the user's interaction with HBX funnels, campaigns, goal pages, or population groups targeted by the button press, you can add one of the above functions, encapsulated as an ActionScript expression, which would then be triggered by the on (release) behavior of the button. This expression would be executed along with the standard telltarget and any other optional commands when the button is released.

Page 46: Hitbox Installation Guide

|Page 34

Note Enter a page name, content category name, campaign ID, population group ID, or funnel name/level in the HBX function associated with the on(release) code for the target page name, category name, campaign ID, population group ID, or funnel. The HBX function only applies to actions triggered by the on(release) behavior of a button in a Flash movie, and not to the Flash movie object itself, or the loading of the Flash object on the page. If for some reason, your Flash movie contains no buttons, no on(release) events will be available to bind to the

HBX tracking functions.

These functions must be encapsulated in a JavaScript statement, using correct JavaScript syntax. Besides starting the encapsulated statement with the standard javascript: label, JavaScript also requires single quotes ' to be placed around string entities, such as names for specific pages, content categories, exit links, downloads, campaign IDs, or population group IDs.

For example, the following JavaScript statement correctly encapsulates the HBX function:

javascript:_hbPageView ('ASP', '/homepage/software+vendors')

This statement is then included in the URL field of the basic getURL command for the button thus:

getURL("javascript:_hbPageView ('ASP', '/software+vendors')");

PARAMETERS FOR THE HBX FLASH TRACKING FUNCTIONS

In general, all parameters in the HBX tracking functions for Flash objects must adhere to page coding naming and illegal character conventions.

YourPageName

The page name of the page targeted by the button release. Spaces are replaced by the plus sign +

Examples:

ASP ASP+Vendors Preferred+ASP+Vendors

YourContentCategoryName

The name of the multi-level content category targeted by the button release. Content names and content sublevels must be preceded by the forward slash / Spaces are replaced by the plus sign +

Examples:

/english /english/pictures /english/vacation+pictures

(FunnelID,FunnelLevelID)

The IDs for the funnel and funnel level targeted by the button release. Obtain these IDs from the funnel administration page. When using this parameter, you must enclose the funnel ID and funnel level ID in parentheses, separated by a comma. Both funnel ID and funnel level ID must appear together as a pair. If the funnel level represents a conversion, use a c immediately after the conversion level ID.

Examples:

(242,5) (1858,3) (128,4c)

YourCampaignID

The campaign ID for which you wish to track responses to a campaign when the button is released. Obtain this ID from the campaign administration summary page.

Examples:

SP18616 IL2023

YourGoalPageCampaignID

The campaign ID or IDs for which you want to track conversions to a campaign on a landing page when the button is released. Obtain these IDs from the campaign administration summary page. If you want to track conversions to the last campaign the visitor responded to (as stored on the visitor's cookie), use LAST instead of a campaign ID. Multiple campaign IDs are concatenated with a comma. See campaign coding information for more details.

Page 47: Hitbox Installation Guide

|Page 35

Examples:

SP18616 IL2023 SP18616,IL2023 LAST

YourPopulationGroupID

The ID for the population group whose status on the customer's cookie is potentially changed when the button is released. Obtain this IDs from the population group administration page. Multiple population group IDs are concatenated with a comma. Before coding, review details on adding and removing population group IDs on the customer's cookie.

Examples:

1 +1 2,3 ++1 --1

YourExitLinkName

The name of the exit link targeted by the button release, expressed as an absolute URL including the page name.

Example:

http://www.zelkovaserrata.jp/haiku/wateroflife.htm

YourDownloadName

The name of a downloadable file targeted by the button release, expressed as an absolute URL including the file name and appropriate file extension.

Examples:

http://www.obscure.org/necronomicon/purgatory.exe

ftp://ftp.beherenow.com/namaste.nfo

AnyHitBoxGatewayVariable

Any HBX gateway variable (see table)

Examples:

n

gp

AlternateValueofVariable

The value you wish to substitute for the current value of the HBX variables currently being sent to HBX for analysis

Examples:

Intro+Movie

BAL-312153

YourLinkID

The value of the link ID you wish to send HBX, as displayed in the Link Analysis reports. The link ID is typically connected with a link object on a page, but can be associated with any non-link object on a page, such as a table column <TD> element that uses an ONCLICK event.

Examples:

SearchLink

First_column

YourLinkPosition

Always used together with the parameter YourLinkID (above). The value of the position of the link ID. The link position is typically connected with a link object on a page, but can be associated with any non-link object on a page, such as a table column <TD> element that uses an ONCLICK event.

Examples (showing both parameters YourLinkID and YourLinkPosition):

SearchLink,top

First_column,middle

Page 48: Hitbox Installation Guide

|Page 36

'x, y, width, height'

Always used together with the parameters YourLinkID and YourLinkPosition (above). Note that this parameter is a set of four comma-separated variables, enclosed in single quotes. These parameters reflect the values of the coordinates for a Flash button object, where x is the position in pixels of the object from the top of the screen, y is the position in pixels of the object from the left of the screen, width is the number of pixels wide of the object, and height is the number of pixels high of the object.

Example (together with parameters YourLinkID and YourLinkPosition):

PlayMovie,top,'100,100,150,40'

USING HBX FLASH TRACKING FUNCTIONS

_hbPageView tracks how many times a target page is viewed once a Flash event is executed.

_hbExitLink tracks how many times a specific exit link is followed once a Flash event is executed.

_hbDownload tracks the number of downloads of a specific file upon the execution of a Flash event.

Note that when coding the _hbExitLink or _hbDownload functions, you must isolate your HBX ActionScript code by encapsulating it in an on (press) event. Make sure the getURL commands are in an on (release) event of the same button. Failure to do this can yield inaccurate tracking results. See example below.

_hbFunnel tracks visitor interaction with HBX funnels within Flash objects when a Flash event occurs. Before coding this function, make sure you have created funnels in the Funnel Administration page. Note that data collected by HBX for funnels will be available only after midnight of the creation date.

_hbCampaign tracks responses to HBX campaigns within Flash objects when a Flash event occurs. Before coding this function in your Flash objects, ensure that you have created campaigns in the Campaign Administration page, and that you thoroughly understand how campaigns work in HBX. Note that data collected by HBX for campaigns will be available only after midnight of the campaign creation date. As long as you use the campaign ID displayed in the campaign summary page, this function can track either tagged or tagless campaigns.

_hbGoalPage tracks the conversions of HBX campaigns within Flash objects when a Flash event occurs. Before coding this function in your Flash objects, review the information on coding goal pages and creating campaigns in HBX. As with the _hbCampaign function, you must have active campaigns before HBX begins to report conversions for the campaigns.As long as you use the campaign ID displayed in the campaign summary page, this function can track either tagged or tagless campaigns.

_hbVisitorSeg tracks HBX population group activity within Flash objects when triggered by a Flash event. Before coding this function in your Flash objects, you must create population groups in the Population Group Administration page, and understand how population groups work in HBX. Note that data collected by HBX for population groups will be available only after midnight of the population group creation date. Note also that HBX does not track active segments in Flash objects.

_hbLink(YourLinkID)

_hbLink(YourLinkID, YourLinkPosition)

_hbLink(YourLinkID, YourLinkPosition, 'x, y, width, height')

These three variations of the _hbLink() function track html elements that can be connected with visitor interaction with a Web page, such as an ONCLICK event.

The first two _hbLink(YourLinkID) and _hbLink(YourLinkID,

YourLinkPosition)can be used to count as links many visitor interactions with typically non-link elements on your Web page.

The last variant _hbLink(YourLinkID, YourLinkPosition, 'x, y, width, height') of this function is specifically used with Flash objects because the active Flash movie overrides most of the properties of the standard html elements. Note that the last parameter of the function is a set of four comma-separated variables, enclosed in single quotes. Read more about how to implement link tracking in ActionScript for Flash movies.

Page 49: Hitbox Installation Guide

|Page 37

_hbSet(AnyHitBoxGatewayVariable,AlternateValueofVariable) allows any onclick Flash event to trigger a string of variables to be sent to HBX for analysis. It is always used with _hbSend() below. If, for example, you wish to track the user's interaction with the Flash movie that potentially leads to the user's interaction with a HBX funnel or campaign without the user exiting the Flash movie, you can send a string of HBX code (exactly like that seen in the URL) with the _hbSet function. Then, send the modified code to HBX for analysis with _hbSend().

Note Note that the use of the _hbSet function does not alter the actual coding on your Web page. The changes are effective only for one instance of the values of the variables you wish to modify.

In technical terms, whenever a visitor accesses a Web page with HBX JavaScript (the "page code"), the JavaScript generates a string of encoded information that is sent to the HBX gateway for analysis. This information is drawn directly from the values assigned to variables in the page code. Because you set the values of these page code variables when designing the page, the information sent by the page is always the same. For a Web page with embedded Flash objects, the information associated with the page and sent to HBX is always the same. If your site design leverages various visitor interactions with the Flash object, the information sent to HBX by the Web page encapsulating the Flash object is the same.

The _hbSet and _hbSend()functions offer you more flexibility over what sort of tracking information can be sent from the Web page. Now when you use the _hbSet function, you create a copy of all HBX gateway variables and their values defined for the Flash-object embedded Web page. You can then send to the HBX gateway any valid values for gateway

variables via the _hbSend() function. Thus you create several virtual pages by coding different values in the _hbSet function followed by _hbSend().

See examples.

_hbSend() is a function that takes no arguments. It is always used in conjunction with the _hbSet(AnyHitBoxGatewayVariable,AlternateValueofVariable) function. If _hbSend() does not follow the _hbSet(AnyHitBoxGatewayVariable,AlternateValueofVariable), values for page code variables hbx.acct, hbx.pn, hbx.mlc, hbx.vpc are not reset (or cleared) when the page is sent to HBX. By contrast, the values of all other variables are cleared when the page is transmitted to HBX. If a variable's values are cleared upon transmission, ensure that the page can regain these values (or that you substitute new values with _hbSet ) before sending the page again with _hbSend(). See explanation above and examples.

_hbHalt() is a function that takes no arguments. This function typically occurs in a program control block of an event interface where code conditions are checked. It is used before calling the _hbSend() or any other HBX function. _hbHalt()prevents the execution of subsequent _hbSend()or other HBX functions if intervening conditional statements evaluate to false.

Suppose you enable link tracking on your Web page by defining hbx.lt="auto"; However, you want to track the link clicks for selected links only. Use _hbHalt() and the _hbOnLink() functions to insert a section of code to exclude tracking Google link clicks. The following code prevents the occurrence of a link click event if

the link URL contains google. In this example, the _hbSend() function is implied. This example also assumes that a Web page contains a clickable URL pointed at www.google.com and that hbx.lt='auto';

Note also that this function must be defined in the hbx.js file and not as a script in the HBX page code.

<script> function _hbOnLink(a){ if(a.href.indexOf('google') > -1){ _hbHalt(); } } </script>

Page 50: Hitbox Installation Guide

|Page 38

Note that there is a one-to-one correspondence between Flash events and these functions. Make sure that you do not combine any of these functions for the same event. For instance, do not try to track both a page view and a download for the same button's on (release) method. You must bind only one HBX function to a specific Flash button event.

GATEWAY VARIABLES

Consult the list of gateway variables corresponding to page code variables to determine which ones can be modified with the _hbSet() function.

Note Make sure that you are tracking visitor interaction with your Flash objects only when there is an event (such as clicking a button within the Flash object)—not when the Flash object loads into the Web page. Tracking the

loading of the Flash object itself will result in overcounting of data in some statistics.

ActionScript Code Samples

The following are examples of simple ActionScript code. Contrasted here are the uses of ActionScript without the HBX Flash tracking implemented, with Flash tracking implemented, with Flash tracking implemented for funnels, campaigns, population groups, goal pages, a download parameter, and the _hbSet and _hbSend functions.

Note that in ActionScript the download URL must contain http:// in the getURL command. Any custom coding you do must conform to character size and character types described in Illegal Characters.

Button code with HBX in an ActionScript Command:

on(release) {

getURL ("javascript:_hbPageView ('ASP','/software+vendors')");

}

Button code with HBX funnel tracking in an ActionScript Command:

on(release) {

getURL ("javascript:_hbFunnel ('(81,3c)', 'ASP', '/software+vendors')");

}

Button code with HBX campaign tracking in an ActionScript Command:

on(release) {

getURL ("javascript:_hbCampaign ('ILC-2023', 'ASP', '/software+vendors')");

}

Button code with HBX goal page tracking for campaign conversions in an ActionScript Command:

on(release) {

getURL ("javascript:_hbGoalPage ('LAST', 'ASP', '/software+vendors')");

}

Button code with HBX population group tracking in an ActionScript Command:

on(release) {

getURL ("javascript: _hbVisitorSeg ('1,5', 'ASP', '/software+vendors')");

}

Button code with a download in an ActionScript Command:

on(press) {

getURL ("javascript:_hbDownload ('YourDownloadName')");

Page 51: Hitbox Installation Guide

|Page 39

}

on(release) {

getURL ('http://www.yourdomain.com/file.exe');

}

Button code with _hbSet and _hbSend

For example, a secondary movie is located in part of your Flash movie, and you wish to launch a campaign whenever the movie is played, as well as to show number of times the movie is played by having HBX track the page name Promotional+Movie. Use the following code:

on(press) {

getURL ("javascript:_hbSet('cmp','BAC-34589');javascript:_hbSet('n','Promotional+Movie')");

}

on(release) {

getURL ("javascript:_hbSend()");

play ();

}

Note that in ActionScript, only one getURL call is allowed per event, such as on(press) or on(release). Therefore, simply place multiple HBX javascript: function calls in the same getURL call, separated by a semicolon. If more than one getURL call is associated with an event, Flash only recognizes the last getURL call.

This registers a response to campaign BAC-34589 in the campaign response statistic, and increments page views for the page "Promotional Movie" whenever the movie is played.

Implementation of HBX Code for Flash Sites:

1. Using your HTML editor, open the HTML page where the Flash program will be embedded.

2. Add the HBX page code. Define the content group and page name as usual.

3. Open your Flash object within the Macromedia Flash development studio.

4. Using the URL field, insert the ActionScript getURL command for the button instances that will call the special HBX Flash-tracking JavaScript functions so it can dynamically gather information about your visitors. Customize each getURL command for each button instance.

5. Compile the .fla file to the .swf format and place the compiled Flash object in your HTML page.

Page 52: Hitbox Installation Guide

|Page 40

To ensure that HBX tracks your Flash-related statistics accurately, you should always isolate the HBX getURL event from other events. Other functions related to each button action should be placed in a separate ActionScript command from the HBX function.

Media Tracking

Introduction to Media Tracking

HBX allows you to track visitor interaction with media streamed from your Web site. HBX provides information on both live and pre-recorded audio, video, and multimedia streams.

HBX reports both client-side and server-side media streaming. In both kinds of media streaming, media files are downloaded and played, often simultaneously, using a media player client application. While the reports are nearly identical for both these approaches analysis of visitors use of media streaming on your Web site, HBX distinguishes between them in these ways:

Client-side media tracking allows you to track a variety of media-playing clients, such as QuickTime(r), Windows Media Player, and RealPlayer(r). By comparison, server-side media tracking is available only for Windows Media Services 9 Series. See chart below.

Client-side media tracking gathers information from the player embedded in the visitor's browser using JavaScript. By contrast, server-side media tracking takes data provided directly by the server. Note the media stream data available from the server versus from the client varies substantially. Therefore, you will notice quantitative differences in the data reported for Windows Media Player 7 and up for the same media stream, depending on whether you chose client-side or media-size media tracking.

Client-side media tracking requires a modification to the HBX page code and the hosting of a js file. To enable server-side media tracking, you must install a server plug-in to expose information about the actions of the media.

For the client-side media tracking, HBX reports identify the views, audience size, streams, complete stream views, as well as what percentage of streams are viewed to completion, the average duration of a stream view, and the average percent of the stream played. For the server-side media tracking, the HBX reports are similar. You can examine information on views, audience size, and streams.

Metrics on live streams are available only in some HBX reports.

HBX Media Tracking

Media tracking is designed to send a media event when a media object is played, paused, or stopped. A media event is an HBX datapoint containing information about the visitor interaction with the stream. Media objects tracked by HBX include the compressed audio, video, or multimedia file types listed in the table below.

HBX tracks media at the event level or at the interval level, depending on the streaming technology. For event-level tracking, changes in the play state of the media object are recorded. For example, HBX reports if the media stream changes from play to pause. For interval-level tracking, the state of the media object is polled at regular intervals for changes in the play state. In the case of videos, polling occurs every second.

Tip

Tip

Page 53: Hitbox Installation Guide

|Page 41

The procedure for enabling media tracking is outlined in this section. Note that each media player requires that you embed different code on the Web page.

TECHNOLOGY MEDIA TYPE OR MIME TYPE (AUDIO/VIDEO/MULTIMEDIA)

SERVER KIND OF TRACKING

TYPICAL FILE

EXTENSIONS

Client-side Media Tracking

Windows Media Player

video/x-ms-wmv n/a event .wmv

read full information on the file types supported by various versions of Windows Media Player

Note that Windows Media Player does not play any files with QuickTime or RealNetworks content, nor does it play .mp4 files

video/x-msvideo n/a event .avi

video/x-ms-asf n/a event .asf .asx

application/x-oleobject n/a event for special OLE embedded objects

files that can be served when the the Mozilla ActiveX plug-in is installed

Quicktime Player

video/quicktime n/a interval .mov .moo .moov .qt

video/mpeg n/a interval .mpeg .mpg .mp2 .mp3 .mpa .mpe .m1v .m2v

Page 54: Hitbox Installation Guide

|Page 42

RealPlayer video/vnd.rn-realvideo audio/x-pn-realaudio-plugin

audio/x-pn-realaudio

audio/x-pn-realvideo

n/a interval .rm .rv

Server-side Media Tracking

Windows Media Services 9 Series

video/x-ms-wmv video/x-msvideo video/x-ms-asf application/x-oleobject

Windows Server 2003

event full information on the file types supported by various versions of Windows Media Player

Coding Media Tracking

Every media player requires different code installed on the Web page to enable HBX client-side media tracking. Four elements are essential:

the media player must be defined in the Web page

the value of the hbx.media variable must be the same as the ID of the media object defined on the page

remove the DEFER directive at the end of the HBX page code

the HBX page code must reference the hbxmedia.js file

Media Player General Installation

Each Web page containing an embedded media player has a code block that defines the media player object. The general form of this code block is:

<object id="media_object_ID" type="MIME_type" width="width" height="height" classid="clsid:class_id"> <param name="src" value="my_movie"/> <!-- for non-Windows Media Player definitions --> <!-- OR --> <param name="filename" value="my_movie"/> <!-- for Windows Media Player V6.4+ definitions --> <!-- OR --> <param name="URL" value="my_movie"/> <!-- for Windows Media Player V7+ definitions --> <embed name="media_object_ID" type="MIME_type" src="my_movie" width="width" height="height"></embed> </object>

Page 55: Hitbox Installation Guide

|Page 43

where:

media_object_ID is a unique ID you assign to the media object

my_movie is the media file name with extension

MIME_type is one of the media types listed in the table above Note that any media type supported by the media can be defined here

class_id is the class ID specified for the media player listed in the table above

width is the width of the media object in pixels

height is the height of the media object in pixels

Review below some examples of embedding various media players.

hbx.media variable

In the HBX page code, set the value of the hbx.media variable to the ID of the media object on the page that you wish to track. Because this variable is does not appear by default in the HBX page code, you must add it to the HBX page code. Define this variable in any portion of the HBX page code between the two comments //OPTIONAL PAGE VARIABLES and //END EDITABLE SECTION Note that you can track only one media object per page.

For example, if the ID of the media object is PlayerRMP, that is, if id="PlayerRMP" and <embed name="PlayerRMP", then define hbx.media="PlayerRMP";

Remove the DEFER directive

For the HBX page code to process the client-side media information embedded in the page, you must remove the DEFER directive located at the bottom of the HBX page code, if it exists. By default, DEFER appears in the following location.

//REQUIRED SECTION. CHANGE "YOURSERVER" TO VALID LOCATION ON YOUR WEB SERVER (HTTPS IF FROM SECURE SERVER) </script> <script language="javascript1.1" DEFER src="http://YOURSERVER/hbx.js"></script> <!--END OMNITURE CODE-->

Simply delete DEFER on the page containing the HBX page code.

Reference the hbxmedia.js file

HBX client-side media tracking is only functional if

you have a copy of the hbxmedia.js file and

the HBX page code refers to the location where you stored the hbxmedia.js file

Download the hbxmedia.js file from the Edit Account page, and store this file somewhere accessible by your Web pages, indicated in the example as YOURSERVER. In any location in the Web page after the definition of the media object, before the closing </body> tag, add a JavaScript include statement referring to this file.

<script language="javascript1.1" src="http://YOURSERVER/hbxmedia.js"></script>

Page 56: Hitbox Installation Guide

|Page 44

Supported Streaming Media

This table lists the ClassIDs associated with the media player versions supported by HBX.

TECHNOLOGY VERSION CLASSID=

Windows Media Player

Any version "CLSID:22d6f312-b0f6-11d0-94ab-0080c74c7e95"

7 and higher (now called the Series 9 control)

"CLSID:6BF52A52-394A-11D3-B153-00C04F79FAA6"

6.4 and higher "CLSID:22D6F312-B0F6-11D0-94AB-0080C74C7E95"

QuickTime Player n/a "CLSID:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B"

RealAudio n/a "CLSID:CFCDAA03-8BE4-11CF-B84B-0020AFBBCCFA"

Embedded Media Client Examples

These examples show implementation with both the <object> and the <embed> tags. The <object> tag defines the media object in Internet Explorer, while the <embed> tag indicates the same to other browsers, such as Netscape and Firefox, as well as to Internet Explorer for the Macintosh.

Windows Media Player, any version

This code allows the hbxmedia.js file to determine which version of Windows Media Player is installed on the user's browser.

in the HBX page code

hbx.media="PlayerWM";

in the body of the page

<object id="PlayerWM" type="application/x-oleobject" classid="clsid:22d6f312-b0f6-11d0-94ab-0080c74c7e95" width=320 height=304> <param name="filename" value="my_movie.wmv"> <param name="autostart" value="false"/> <embed name="playerwm" type="application/x-mplayer2" width=320 height=240 src="my_movie.wmv" autostart="false"></embed> </object> ... <script language="javascript1.1" src="http://YOURSERVER/hbxmedia.js"></script>

Windows Media Player, V7.0 and higher

This code omits the <embed> tag of the previous example. Note that this non-portable method of defining the media object does not allow Firefox browsers without the ActiveX plug-in to play the video. For best results in cross-browser compatibility, HBX recommends always including the <embed> tag when defining media objects. However read note below the code block.

in the HBX page code

hbx.media="PlayerWM";

in the body of the page

Page 57: Hitbox Installation Guide

|Page 45

<object id="PlayerWM" type="application/x-oleobject" classid="clsid:6bf52a52-394a-11d3-b153-00c04f79faa6" width=320 height=304> <param name="url" value="my_movie.wmv"> <param name="autostart" value="false"/> </object> ... <script language="javascript1.1" src="http://YOURSERVER/hbxmedia.js"></script>

For the Firefox browser with a Windows Media file, advanced implementations can include JavaScript sniffer code to determine if the ActiveX plug-in is installed for the client's Firefox browser. If it is installed, then another script is called to insert the embed tag dynamically. This approach ensures that this particular browser-media file combination will play and can be analyzed by HBX client-side media tracking. The most likely scenario is the first row of the following chart. It assumes that the standard install of a Firefox browser does not include the ActiveX plugin.

FIREFOX BROWSER WITH A WINDOWS MEDIA FILE

<embed> tag used to define object

ActiveX plug-in for Firefox browser

does the media file play?

can HBX track the media file?

Y N Y N

Y Y Y N

N Y Y Y

N N N N

RealNetworks

In this example the source media file is .rpm. This is the only extension for RealNetworks media files recognized natively by the Firefox browser. You must install another plug-in to obtain recognition for RealNetworks media files with other file name extensions.

in the HBX page code

hbx.media="PlayerRMP";

in the body of the page

<object id="PlayerRMP" type="video/vnd.rn-realvideo" classid="clsid:cfcdaa03-8be4-11cf-b84b-0020afbbccfa" width="320" height="320"> <param name="controls" value="imagewindow,controlpanel"/> <param name="autostart" value="false"/> <param name="src" value="test.rpm"/> <embed name="playerRMP" src="test.rpm" type ="video/realmedia" width="320" height="240" nojava="true" controls="imagewindow,controlpanel" console="one" autostart="false"> </object> ... <script language="javascript1.1" src="http://YOURSERVER/hbxmedia.js"></script>

Tip

Page 58: Hitbox Installation Guide

|Page 46

QuickTime

in the HBX page code

hbx.media="PlayerQT";

in the body of the page

<object id="PlayerQT" type="video/quicktime" classid="clsid:02bf25d5-8c17-4b23-bc80-d3488abddc6b" width="320" height="320"> <param name="controller" value="true"> <param name="autoplay" value="false"> <param name="src" value="my_movie.mov"/> <embed name="playerqt" src="my_movie.mov" width="320" height="320" enablejavascript="true" autoplay="false" pluginspage="www.apple.com/quickime/download"> </object> ... <script language="javascript1.1" src="http://YOURSERVER/hbxmedia.js"></script>

Page 59: Hitbox Installation Guide

|Page 47

Specific Browser/Media Client Combinations and Functionality Notes

In order to play streaming media in Mozilla-based browsers without the ActiveX control, you must also define the media file with the EMBED tag. While most standard installations of Firefox do not include this plugin, you can obtain it here.

For the Firefox browser, RealMedia files only play if saved as an .rpm file. To play other RealMedia files, a modified plug-in is required. Plug-ins are available at http://kb.mozillazine.org/RealPlayer.

Note that only QuickTime issues pause and play events when the viewer moves the current position bar on the player. Moving the current position bar on other media players fires no events.

RealVideo sends the top event with the current position.

For all media players (except those defined by the ClassID for Windows Media Player version 6.4 or higher), auto-rewind cannot be configured. If defined in the page code, the autorewind parameter has no effect

For Windows Media Player version 6.4 or higher, you can send the current position on all stop events, by configuring auto-rewind as 0 or false. This code turns off auto-rewind: <param name="autoRewind" value="false">

Windows Media Player sends 0 as the current position on all stop events. A stop event is triggered when the player reaches the end of the stream.

Server Plug-in

For HBX to provide server-side tracking of Windows Media player streams, you must install a special server plug-in. This plug-in is provided as part of a self-installing file along with a brief help file (readme.txt) that details how to configure the plug-in properties.

Read more information about the Windows Media Services 9 Series component of the Windows Server 2003 system and the servers supported.

Microsoft recommends this minimum hardware configuration:

COMPONENT SIZE/CAPACITY/SPEED OTHER

Processor 550 MHz

RAM Memory 1 GB

Hard Disk Storage 521 MB 521 MB = 500 MB (content) + 15 MB (installation) + 6 MB (system files)

NIC (Network Interface Card)

handles Ethernet and TCP/IP

Plug-in Package Contents

WindowsMediaPlugin03.dll

WindowsMediaPlugin03PluginProps.dll

readme.txt

Plug-in Installation

Prior to installation, stop all services running on the WMS (Windows Media Services) server.

Page 60: Hitbox Installation Guide

|Page 48

The plug-in is self-installing. Simply follow the instructions in the wizard for the plug-in package. The installer asks for unique identifying information, such as your HBX account and the URL to the HBX gateway.

During the installation of the plug-in, choose the default option It's just for me when prompted.

When installing, you can specify whether the plug-in should log events occurring on the server. If you choose this option, and you are a NETWORK SERVICE user, ensure that you have write access to the log file. Without write access, the server cannot record events to the log file.

The installer puts the two .dll files listed above in the WMS directory on the Windows 2003 server. This directory is conventionally \WINDOWS\system32\windows media\server The installer also creates entries in the Windows registry to reflect the information entered during installation.

The key functions of the plug-in are contained in WindowsMediaPlugin03.dll while the second file WindowsMediaPlugin03PluginProps.dll allows you access to the properties window in the WMS

Management Console.

After installation, refresh the WMS screen for the HBX plug-in to appear in the plug-in window. TheHBX Streaming Media Analysis Plug-In appears as an Event notification plug-in in the WMS management console. After restarting the WMS services on the Windows 2003 server, you must enable the plug-in at the server level by right-clicking on the plug-in in the WMS console and selecting Properties>Enable.

Plug-in Repair and Uninstallation

Following the initial installation of the plug-in, every subsequent launch of the installation program runs it in maintenance mode. In this mode, you have the options to repair the features already installed, or remove the entire program.

Choose the repair option if you want the installer to check for any type of corruption, such as missing or damaged files, incorrect registry entries, or self-registering files. The installer then attempts to repair the problem if any corruption is detected.

Choose the remove option if you no longer wish to keep the plug-in on your server. This option reverses all the changes to the server performed during the installation.

Plug-in Uninstallation

The installation program also allows you to uninstall the plug-in. Alternatively, you can uninstall the plug-in via the Control Panel>Add/Remove Programs applet.

Other Information

For reporting purposes, the plug-in sends event data to the HBX server over http (port 80).

Once the plug-in is enabled, it requires no user or administrative interaction.

Wireless Tracking

Introduction to Tracking for Wireless Web Pages

HBX allows you to track wireless devices with the same Web analytics solution provided by HBX for visitor interaction with your standard Web pages. Now you can track which wireless device brands, models, and wireless markup languages are preferred by visitors who arrive at your WAP or Web site. The WAP protocol is designed to display Web content on handheld wireless clients, such as mobile phones and handheld computers. You can also create active segments based on wireless visitors to your WML decks or Web pages.

In order to track visitors to your wireless decks use to display content on the majority of mobile phones, you must insert a small code snippet to the WML deck. No special code is needed to track visitors to your regular

Page 61: Hitbox Installation Guide

|Page 49

Web pages from PDAs. The HBX page code currently installed correctly on your HTML pages is sufficient to track PDAs.

HBX supports a variety of wireless markup languages. The language must be XML compliant and must

allow the insertion of a wireless bitmap image (.wbmp) in the code. A .wbmp is the only image that can be displayed in a WAP microbrowser.

Because of limitations of the event model for microbrowsers, and poor support for DHTML, certain kinds of Web interaction tracked by HBX for conventional Web pages and viewed in standard browsers are not available for the wireless visitor accessing content via microbrowsers (either PDAs or mobile phones). Wireless features that HBX does not track include link tracking, form abandonment, exit links, custom events, media tracking, flash tracking, and JavaScript errors.

Definitions

WAP is the Wireless Application Protocol, the standard for information services targeted at digital mobile phones. Among elements included in the WAP is the WML.

WML is the Wireless Markup Language, the prevailing de facto standard among XML-compliant languages for encoding Web content.

A WML deck is a Web page intended for viewing on microbrowsers.

A card is the content-containing portion of a WML deck. A deck may have one or more cards, each with its own title and ID.

A microbrowser is a small software application for displaying Web content on wireless devices.

A PDA is a Personal Digital Assistant. This is an personal information manager, typically with a small LCD display and complete 101-key keyboard, and data transfer capabilities. PDAs include wireless devices such as the Blackberry, and the PalmPilot.

Reference

The list of wireless devices tracked by HBX may be found at http://wurfl.sourceforge.net. This is the Wireless Universal Resource File, an XML-formatted configuration file describing features and capabilities of most known wireless devices.

New wireless devices are released on the market continually. While HBX attempts to provide the most up-to-date information on available wireless devices, the accuracy of that information depends directly on how often the wireless devices database at the URL above is updated. A device not currently tracked by HBX may not yet exist as an entry in the database.

Tracking Wireless Visitors

When you download the wireless code from the Edit Account page, you need to place it on all decks of your wireless site which you wish to track with HBX for mobile phone traffic. Note that no special code is needed to track visitors to your regular Web pages from PDAs. The HBX page code currently installed correctly on your HTML pages is sufficient to track PDAs.

Tip

Tip

Tip

Page 62: Hitbox Installation Guide

|Page 50

Here is a sample of the code to add to your WML decks (or any decks written in an XML-compliant language that accepts a wireless bitmap image):

<!-- BEGIN OMNITURE WIRELESS CODE v2.0 (wireless)--> <!-- COPYRIGHT 1996 - 2008. OMNITURE, INC. ALL RIGHTS RESERVED. U.S.PATENT No. 6,393,479 B1. Privacy notice at: http://www.omniture.com/privacy/ --> <img src="http://ehg.HBX.com/HG?whbx=1&hv=6&ce=y&hb=WE100200300400&cd=1&n=PUT+PAGE+NAME+HERE&vcon=CONTENT+CATEGORY" alt=""/> <!-- END OMNITURE CODE -->

Note that this examples shows ehg.HBX.com and WE100200300400 as the gateway machine name and the wireless account name, respectively. When you download the wireless page code, these values are automatically filled in with the correct information.

For information on how to name your pages, refer to the section on page names.

For information on how to arrange the content hierarchy, refer to the section on multi-level content groups.

Here is an entire WML deck, complete with HBX page code. This deck includes the card entitled WML Sample deck. The deck is organized under the /introduction content group.

<?xml version="1.0"?> <!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml"> <wml> <!-- BEGIN OMNITURE WIRELESS CODE v2.0 (wireless)--> <!-- COPYRIGHT 1996 - 2008. OMNITURE, INC. ALL RIGHTS RESERVED. U.S.PATENT No. 6,393,479B1. Privacy notice at: http://www.omniture.com/privacy/ --> <img src="http://ehg.HBX.com/HG?whbx=1&hv=6&ce=y&hb=WE100200300400&cd=1&n=WML+sample+deck&vcon=/introduction&quot; alt=""/> <!-- END OMNITURE CODE --> <card id="Sample" title="WML Sample page"> <p> This is my WML sample page. </p> </card> </wml>

You can create a WML deck that dynamically inserts the HBX wireless code.

For advanced WML implementations, you can track campaigns, funnels, population groups, and many other HBX metrics with special HBX code on a wireless deck.

Dynamically Generated Wireless Decks

For WML decks that are built with server-side scripting languages for dynamically generation of content, you can adapt the HBX wireless code.

Here is one sample of a deck in asp that inserts HBX wireless code dynamically.

<!-- BEGIN OMNITURE WIRELESS CODE v2.0 (wireless)--> <!-- COPYRIGHT 1996 - 2008. OMNITURE, INC. ALL RIGHTS RESERVED. U.S.PATENT No. 6,393,479B1. Privacy notice at: http://www.omniture.com/privacy/ --> <img src="http://ehg.HBX.com/HG?whbx=1&hv=6&ce=y&hb=<% acct_id %>&cd=1&n=<%= dynamic_page_name %>&vcon=<%= dynamic_content_group %> alt=""/> <!-- END OMNITURE CODE -->

Page 63: Hitbox Installation Guide

|Page 51

where

acct_id is the HBX account ID associated with your wireless account,

dynamic_page_name is the name to be added to the page, and

dynamic_content_group is the dynamic content grouping

Advanced Wireless Deck Code

If you wish to leverage the power of HBX campaigns, population groups, funnels, and so on as part of your analysis of visitor interaction with WML cards written for wireless phones, review the following general outline.

PDAs can access both pages written in WML and HTML. You do not need special code for tracking visitor

interaction with PDAs. The HBX page code currently installed correctly on your HTML pages is sufficient to track PDAs.

Standard HTML pages implement HBX page code via JavaScript variables and a reference to the hbx.js file. By contrast, WML cards do not make JavaScript available, and cannot call the hbx.js file. However, it is still possible to pass information that is typically defined via JavaScript variables to HBX for analysis.

This solution involves the creation of a customized query string that contains values assigned to gateway variables. This is the same technique (the on-line method) used when passing a campaign ID via the query string.

In the following example, the following information is to be passed to HBX:

account name is WE100200300400

page name is WML Sample deck

content group is /introduction

campaign ID is EMC-30205

funnel ID is 2593

population group ID is 15

custom 1 variable is wireless

A wireless visitor coming to the card sends the information when the HBX code is:

<img src="http://ehg.HBX.com/HG?whbx=1&hv=6&ce=y&hb=WE100200300400 &cd=1&n=WML+sample+deck&vcon=/introduction&cmp=EMC-30205&fnl=2593&seg=15&c1=wireless" alt=""/>

To pass the values of other HBX variable, simply append the query string with the gateway variable, the equal sign, and the value of the variable.

Link Tracking Code

Both HBX and the HBX active viewing feature enable you to track the click-thru behavior of visitors. You can either let HBX track links automatically, or you can add special code to the href anchor tags that frame hyperlinks in your pages.

For certain of its functions, the HBX active viewing feature relies on a valid definition for the hbx.lt variable in the HBX page code. By default, the hbx.lt variable is defined as "none" so that link tracking is not enabled.

Tip

Page 64: Hitbox Installation Guide

|Page 52

Whether the default value for this variable is changed depends on the results you are seeking.

If you wish to track click traffic on links via the Click Rendering feature of HBX and the HBX Active Viewing plug-in, you can enable link tracking for any site pages containing links.

If you are going to implement custom event code to track links leading to conversions or to track the connections between links, internal searches, and conversions, enable link tracking only on the search results pages of your Web site. Read about converting link tracking events based on custom search events in the HBX Installation Guide or the installation portion of the HBX on-line help.

Read about converting link tracking events based on custom search events.

You must upgrade your page code and download the latest .js files before implementing link tracking on your pages.

To optimize reporting on link views, it is suggested that the HBX page code is installed at the bottom of the Web page, just before the </body> tag.

Note that any values you assign to variables lid and lpos (described below) must conform to the restrictions on page coding variables for HBX or the HBX commerce module. The lid variable can be assigned a value no longer than 70 alphanumeric characters. You may use most of the printable (non-control code) characters in the ASCII character set (ASCII decimal values 33 - 126), with the exception of: ' " & , ! # $ % ^ * : | \ / > < ~ ;

Methods offered by HBX active viewing for tracking links (described below) are well supported under most recent browsers. There is one notable exception: for versions of Netscape 6.0 and earlier, the name attribute is not recognized within the href tag. If you wish to specify values for the lid and lpos variables, yet avoid undercounting link-clicking visitors using older Netscape browsers, the most portable coding solution is to append the lid and lpos variables to the end of the target page/file specified in the href anchor element. For example, use the following code: <a href="catalog_page.html?lid=Catalog_Page&lpos=first">Buy Me</a>

Using HBX page code for link tracking in frames or IFRAMES

When you create Web pages that use frames or IFRAMES, it is suggested that you place the code in the main content window only. If you place the code in the main content window as well as other windows, it is unlikely that the numbers reported by HBX will accurately reflect the traffic to your Web pages.

While it is suggested that you do not place HBX code in framesets, if you do decide to use HBX code in framesets, do not modify the value of the

hbx.acct hbx.pn hbx.mlc

variables. If you place HBX code in framesets or IFRAMES, and you do not maintain the default names of the hbx.acct hbx.pn or hbx.mlc variables, HBX Active Viewing is unable to detect the frameset containing the HBX code. All other functionality of HBX Active Viewing will be available.

Page 65: Hitbox Installation Guide

|Page 53

Kinds of Links

Simple links in Web pages can be tracked using the various link tracking modes listed below. A simple link is one using the <a href="link_name.htm">Link Name</a> format. In addition, HBX Active Viewing can track links inside of image maps using the Automated Text Link Tracking mode (hbx.lt="auto";).

For the following kinds of links, however, you must manually provide the link ID and link position:

Links generated in DHTML menus

Links found in any embedded objects, such as Flash animations.

Instructions for enabling tracking of these kinds of links are in the advanced link tracking section.

Conventional Link Tracking Modes

In the page code, the hbx.lt variable can be defined in four different ways

hbx.lt="none";

hbx.lt="auto";

hbx.lt="auto_pos";

hbx.lt="manual";

Link tracking disabled

hbx.lt="none"; (This is the default setting.)

If you do not wish to use click rendering to explore hyperlinks to graphic or textual elements of the page, leave the variable in its default setting. If the code on your pages does not have a value for the hbx.lt variable or the hbx.lt variable does not exist (for previous versions of HBX page code), link tracking will not be performed by HBX.

If the hbx.lt variable has the value of "none" you cannot enable link tracking by overriding the

default behavior value of the variable (described below).

Automatic text link tracking

hbx.lt="auto";

If you wish to track the text of the links that the user clicks on, use this definition of the hbx.lt variable. Read how to override this behavior below. You may wish to override the default behavior of automatic text link tracking if for example you are tracking one link ID at multiple positions on the same page. For example, if your page has the following link: <a href="catalog_page.html">Buy me</a> the HBX active viewing feature will display the link to catalog_page.html by labeling it as Buy me along with the rank, the percentage of clicks, the percentage of clicks (in terms of Page Views), and the total number of clicks received by the element. If you use an image instead of text in the link to serve as the clickable item, you must define the name attribute of the <a> anchor tag with a string beginning with &lid=

Page 66: Hitbox Installation Guide

|Page 54

Suppose you have an image link targeting catalog_page.html <a href="catalog_page.html" name="&lid=Catalog_Page"><img src="buy_me.gif"></a>

whenever your visitors click on the image, the HBX active viewing feature tracks the image "buy_me.gif" and labels the href link to catalog_page.html as "Catalog_Page"

For this code:

<a href="http://www.nonstick.com/portuguese"><img src="../images/flags/emportugues.gif" border="0" width="112" height="22">

</a>

where

hbx.lt="auto";

the link is labeled with the name of the image as "../images/flags/emportugues.gif".

You can review information about the image link in the overlay detail viewing mode.

In the Link Analysis reports (Top Links Per Page, Top Links, and Global Links), you may see unexpected differences in the data displayed for the (Link) Views and (Link) Clicks columns of the summary table. This situation occurs in one specific instance only if you define hbx.lt="auto"; or hbx.lt="auto_pos"; and

you do not specify values for the link ID in the href anchor tag on the page containing the link. In this case, HBX will display results for only the (Link) Clicks column, while the (Link) Views column will contain all zeros.

Automatic text link and position tracking

hbx.lt="auto_pos";

If you wish to track both the text and the location of the link determined by the browser when creating the JavaScript link array object, use this definition. Read how to override the automatic text tracking behavior below. For example, if your page has the following link and this link is the fifth link in order (top to bottom, left to right) on the html page: <a href="catalog_page.html">Buy me</a> the HBX active viewing feature will display the link to catalog_page.html by labeling it as Buy me along with the rank, the percentage of clicks, the percentage of clicks (in terms of Page Views), as well as the total number of clicks received by the element, and lists the link as "5" among the links appearing on the page. If you use an image instead of text in the link to serve as the clickable link, you must define the name attribute of the <a> anchor tag with a string beginning with &lid=

Page 67: Hitbox Installation Guide

|Page 55

Suppose you have an image link which is the fifth link in order (top to bottom, left to right) on the html page targeting catalog_page.html <a href="catalog_page.html" name="&lid=Catalog_Page"><img src="buy_me.gif"></a>

whenever your visitors click on the image, the HBX active viewing feature tracks the image "buy_me.gif", displays the link to catalog_page.html by labeling it as "Catalog_Page", and lists the link as "5" among the links appearing on the page.

If you define hbx.lt="auto_pos"; and you later delete a link in the page, HBX does not know that the link has been deleted. Only Web pages with a static number of links (that is, Web pages where the number

of links on the page do not change) should be used with the auto_pos option for the hbx.lt variable. Because the data HBX collects for the page when using the auto_pos option is structured based on a static array of links on the page, whenever a link is removed, it will skew results of data already collected. Thus, do not define

hbx.lt="auto_pos"; for pages where links (or other Web page elements) are dynamically generated or for content sites where content is refreshed periodically or advertisements rotated on a regular basis. Note also that if a link has been removed from a page, the link is still named in the table of the link tracking view, but

its removal is indicated by a red X preceding the name in the link tracking table.

In the Link Analysis reports (Top Links Per Page, Top Links, and Global Links), you may see unexpected differences in the data displayed for the (Link) Views and (Link) Clicks columns of the summary table. This situation occurs in one specific instance only if you define hbx.lt="auto"; or hbx.lt="auto_pos"; and

you do not specify values for the link ID in the href anchor tag on the page containing the link. In this case, HBX will display results for only the (Link) Clicks column, while the (Link) Views column will contain all zeros.

Manual link tracking mode

hbx.lt="manual";

If you wish to specify the text and the position of the links in your page by coding identifiers for each link, use this definition of the hbx.lt variable. For example, suppose your Web page uses the following link: <a href="catalog_page.html" name="&lid=Catalog_Page&lpos=bottom_page" >Buy me</a> HBX tracks the link to catalog_page.html by labeling it as "Catalog_Page". HBX will track only those links you have labeled. If the code on your pages defines the hbx.lt variable as manual, but does not explicitly label links as detailed in this section, HBX will not track links.

Page 68: Hitbox Installation Guide

|Page 56

As a convenience for coding the position in the page, you can assign any valid string (such as bottom_page) or numerical identifier (such as 5) to the lpos variable. Remember, however, that neither string nor numeric identifiers assigned to the lpos variable are displayed by HBX Active Viewing in the link information. HBX Active Viewing only displays the ranking of the number of clicks on the link, relative to other links on the same page.

You can also code the link tracking by appending the &lid and the &lpos variables to the query string of the href itself. The first example given above is equivalent to the following: <a href="catalog_page.html?...&lpos=bottom_page&lid=Catalog_Page" >Buy me</a> where ? marks the start of a query string and &lpos=bottom_page and &lid=Catalog_Page are name-value pairs included in the query string.

Here, the page indicated by the href (catalog_page.html) is followed by a query string. Query strings always begin with the query string marker ? and contain any number of name-value pairs. In a URL, a name-value pair consists of an assignment statement between a variable's name and its value. Name-value pairs that do not start the query string (that is, do not immediately follow the name of the page in the href) always begin with the ampersand & The general form is NAME=VALUE. In this case, the name is &lpos (or &lid) and the value is bottom_page (or Catalog_Page)

If you set the value of the lpos or lid variables by appending to the href, and other values are

defined for the name attribute in the href anchor tag, then the values defined for the name attribute take precedence over the values you defined when appending. For example, if you code the link this way: <a href="catalog_page.html?...&lpos=bottom_page&lid=Catalog_Page" name="&lid=Catalog_Begin_Page&lpos=top_page" >Buy me</a> only the values Catalog_Begin_Page and top_page will be tracked for the link. The values appended to the href are ignored.

Note also that the order of the variables lpos lid is unimportant. The first example given in this section is equivalent to the following:

<a href="catalog_page.html" name="&lpos=bottom_page&lid=Catalog_Page" >Buy me</a> or <a href="catalog_page.html?...&lid=Catalog_Page&lpos=bottom_page" >Buy me</a>

Manually Tracked Links

You can specify the values for the link id and position in any parameter of the anchor tag <a>.

<a href="" id="&lid=maillink&lpos=bottom">Write me!</a>

While the parameter id can be used to transmit the link ID and the link position to HBX, remember that any valid JavaScript identifier is suitable as a parameter in the anchor tag. Read more about information on valid JavaScript identifiers.

Ensure that you choose a unique parameter name that does not conflict with the name of other parameters in the <a> tag.

Page 69: Hitbox Installation Guide

|Page 57

To track links in this way, add the variable hbx.lida to the HBX page code. For each Web page containing a link you wish to track, define the hbx.lida variable. By default, the value for hbx.lida is name. Keep in mind however that the name attribute in the anchor element <a> is deprecated.

If for example you wish to track the link ID and link position in the anchor element <a> with the parameter id, use this definition: hbx.lida="id";

and then tag links as follows:

<a href="/" id="&lid=maillink&lpos=bottom">Write me!</a>

If you use the parameter title to track link ID and link position, use this definition:

hbx.lida = "title";

and then tag links as follows:

<a href="/" title="&lid=maillink&lpos=bottom">Home</a>

Advanced Link Tracking

Tracking non-simple links on Web pages

HBX allows you to track interactions with links in Flash objects, DHTML menus, and image maps. In order to enable link tracking for these kinds of links, you must manually add the link ID and link position in the href attribute of the anchor elements for the links. The following sections describe how to code the lid variable in these cases.

You must upgrade your page code and download the latest .js files before implementing link

tracking in Flash objects, DHTML menus, or image maps.

Flash objects

You may have Macromedia Flash movies on your site for which you want to track link clicks. Implementing link tracking in Flash movies is a two-step process: first you need to implement an ActionScript function for the Flash object, and then you need to publish the movie. When you publish a movie in Macromedia Flash, the button click and other event codes are converted to HTML anchor tags. This is the only way that you can make Flash link information available to HBX.

For more information on adding HBX code to Web pages with embedded Flash objects, refer to the HBX installation guide or the Installation > Flash Installation section of the on-line help.

Tracking the Flash object click event

To detect link tracking for your Flash movie, you need to use the HBX function, _hbLink(). This function enables HBX Active Viewing to create a semi-transparent overlay to display the information about the link in the underlying Flash movie frame. Using a standard definition of the parameters for the function causes this overlay to occupy the same dimensions and coordinates as the linked object. When you activate the Flash overlay function of HBX Active Viewing and click on the link in the frame of the Flash movie, an overlay is created in the browser directly on top of the button with the link information.

This function requires the link ID (lid), and page coordinates (x and y), width, and height of the Flash object (as provided by the Macromedia Flash application). Optionally, you can also provide the link position (lpos).

_hbLink ('lid', 'lpos', 'x, y, width, height')

The parameters of this function must be manually added to Flash ActionScript for all Flash objects in the movie that you want to track.

Page 70: Hitbox Installation Guide

|Page 58

In the ActionScript example below, the on(release) event linked to the button in the movie launches the _hbLink function, where MyMovie_Yes is the name of the link ID and left is the named location of the link (lpos).

The coordinates are relative to the upper left corner in the Flash movie (the file with the .swf extension). To find the and copy coordinates easily in the Macromedia Flash development application, click on a Flash movie button you would like to track and copy/paste the button coordinates (W, H, X, Y) from the properties window to the _hbLink ('lid', 'lpos', 'X, Y, W, H') function call in the ActionScript code window below.

In technical terms, if coordinates are listed as (130, 172, 113, 38), then 130 is location in pixels of the button from the left of the screen, 172 is location in pixels of the button from the top of the screen, 113 is the width of the button, and 38 is the height of the button.

on (release)

{

getURL("javascript:_hbLink('MyMovie_Yes','left','130,172,113,38')");

}

When you publish the Flash movie into a HTML page, the getURL calls are translated during the Flash publish process into anchor tags as follows:

<a href="javascript:_hbLink('MyMovie_Yes','left','130,172,113,38')"></a>

To determine the overlay positions, HBX Active Viewing parses the published HTML to find the anchor tags and to extract the button positions.

If you do not plan to use the lpos variable when coding the _hbLink() function, ensure that you send the lpos variable the empty string, that is, '' Following the above example, if you do not use left as a value for the lpos variable, use the following code:

on (release) { getURL("javascript:_hbLink('MyMovie_Yes','','130,172,113,38')"); }

How to track clicks on buttons in different Flash movie frames that occupy the same space

When you need to track link clicks for a Flash movie where more than one button occupies the same space in different Flash movie frames as the other buttons, that is, the coordinates of all the buttons are the same, there are two ways to implement:

define the _hbLink function the same for all buttons so that Active Viewing aggregates the number of link clicks for the buttons

define the _hbLink function differently for all buttons so that Active Viewing displays the number link clicks on individual buttons.

In the first scenario, suppose that one of the buttons in the Flash movie has the coordinates (x=100, y=100, w=60, h=30). Now you wish to track two other buttons occupying the same space (same button position on the page and same button dimensions) in the movie, but different movie frames. To have Active Viewing total the link clicks for all three overlapping buttons as if they were the same button in the same frame, use the same values for the coordinates and lid and lpos variables specified as parameters in the _hbLink function. Use this code:

on (release) { getURL("javascript:_hbLink('MyMovie_Yes','left','100,100,60,30')"); }

Page 71: Hitbox Installation Guide

|Page 59

in the ActionScript for each button.

In the second scenario, suppose that one of the buttons in the Flash movie has the coordinates (x=100, y=100, w=60, h=30). Now you wish to track two other buttons occupying the same space (same button position on the page and same button dimensions) in the movie, but in different movie frames. Instead of defining each with the same ActiveScript expression as in the previous example, use unique values for the lid variable and different values for the coordinates. The overlay coordinates should be positioned next to each other either by width (side by side arrangement) or height (top to bottom arrangement). Because the button is 60 pixels wide and there are three buttons that would normally overlap, define the coordinates so that Active Viewing creates new overlays, where the following button is offset by one-third the width of the previous button, or 20 pixels in this case. In addition, assign different link IDs to each button.

Use this code to set the overlays in a side by side arrangement:

on (release) { getURL("javascript:_hbLink('1st_fram','left','100,100,20,30')"); } on (release) { getURL("javascript:_hbLink('2nd_fram','left','100,120,20,30')"); } on (release) { getURL("javascript:_hbLink('3rd_fram','left','100,140,20,30')"); }

Here, only the second coordinate (absolute left position from side of screen) has changed (by 20) as well as the lid for each button. In this way, Active Viewing shows the link clicks for each button separately in staggered overlays.

Publishing a Flash Movie

In terms of the Macromedia development environment, publishing a Flash movie means simply that you are creating the .swf file. At the same time, an HTML file is created that contains all of the tags necessary to display the .swf file.

In addition, when you publish a Flash movie, you must define the value of the wmode parameter as "opaque". HBX does not support wmode if the parameter value is set to "window". In the Macromedia Flash Publish Settings, click on the HTML tab and make sure that the Window Mode is set to "Opaque Windowless" (or "Transparent Windowless").

When you publish a Flash movie into a HTML page, the getURL calls are translated into anchor tags as presented below

<!--url's used in the movie--> <a href="javascript:_hbLink('MyMovie_Yes','left','130,172,113,38')"></a> <a href="javascript:_hbLink('MyMovie_No','right','298,172,113,38')"></a> <!--text used in the movie--> <object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=5,0,0,0" width="550" height="400" id="flashtest" align="middle"> <param name="movie" value="flashtest.swf" /> <param name="wmode" value="opaque" /> … <embed src="flashtest.swf" quality="high" wmode="opaque" bgcolor="#ffffff" width="550" height="400" name="flashtest" align="middle" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" /> </object>

Page 72: Hitbox Installation Guide

|Page 60

Once the movie is published as an HTML page, you need to add the HBX code to the page, and HBX Active Viewing will detect all published Flash objects and apply overlays at the proper location.

Note that you will have to republish the movie each time you modify the movie and

objects to be tracked in the movie have changed or

positions of objects have changed or

the link ID has changed.

Special Considerations When Publishing Flash Movies

There are some cases when the anchor tag will not be listed in the HTML page when the Flash movie is published. The Flash publisher can add the missing links (using the format below) if they are not automatically added during the publishing process.

The following are cases where anchor tags are not listed in the HTML page when publishing:

When the ActionScript is located in the 'Button' object (two message handlers). These anchor tags fail to list when published because the getURL command for the tracked link is located in a message handler following another command:

on (release){ getURL("javascript:_hbPageView(\"Jane+Doe\", \"/HBX+Microsite/Analyst\")"); } on (press){ gotoAndPlay("guy"); getURL("javascript:_hbLink('Jane+Doe','Analyst4_btn','14,246,79,52')"); }

To list the tracked link automatically in the <!--url's used in the movie--> section of the HTML page when publishing, ensure the getURL command for the tracked link is the first command in the second message handler.

on (release){ getURL("javascript:_hbPageView(\"Jane+Doe\", \"/HBX+Microsite/Analyst\")"); } on (press){ getURL("javascript:_hbLink('Jane+Doe','Analyst4_btn','14,246,79,52')"); gotoAndPlay("guy"); }

The getURL command entry for the page view will also automatically list in the <!--url's used in the movie--> section of the HTML page when publishing since two handlers are used in this instance.

When the ActionScript is located in the 'Button' object (one message handler). These anchor tags fail to list when published because the getURL command for the tracked link is located in a message handler following another command:

on (press){ getURL("javascript:_hbPageView(\"Jane+Doe\", \"/HBX+Microsite/Analyst\");javascript:_hbLink('Jane+Doe','Analyst4_btn','14,246,79,52')");

Page 73: Hitbox Installation Guide

|Page 61

gotoAndPlay("guy"); }

To list automatically the tracked link in the <!--url's used in the movie--> section of the HTML page when publishing, ensure the getURL command for the tracked link is the first command in the message handler:

on (press){ getURL("javascript:_hbLink('Jane+Doe','Analyst4_btn','14,246,79,52');javascript:_hbPageView(\"Jane+Doe\", \"/HBX+Microsite/Analyst\")"); gotoAndPlay("guy");

}

Only instances of symbols with the behavior characteristic set to 'Button' will automatically list the tracked link in the <!--url's used in the movie--> section of the HTML page that is created when published.

When the ActionScript is located in a 'Movie Clip' object (one message handler). These anchor tags fail to list when published because the ActionScript is located in a 'Movie Clip' object.

on (press){ getURL("javascript:_hbLink('Jane+Doe','Analyst4_btn','14,246,79,52')"); gotoAndPlay("guy"); }

DHTML menu

A DHTML menu (a menu navigation technique that relies on built-in Dynamic HTML functions of modern browsers) is commonly used to conserve screen real estate and to add a professional appearance to menu selections on a Web page. HBX allows you to track links found in DHTML menus, including the root level. There is no limit to the number of levels in the menu hierarchy that you can track with HBX.

Only those menu items that have actually been clicked will be tracked. Menu items that a visitor simply moves the mouse over but does not click on are not tracked.

Background on DHTML menus

Typically, the DHTML menu for a Web site will implement a set of JavaScript files and specially formatted JavaScript links in order to produce menu animations. However, you can also track menus created with DIV tags or any other third-party menu generation tool.

Note, however, that if the menu item is not located within an anchor tag, you need to add the _hbLink function to each object. This function requires the link ID of the menu object. Optionally, you can also provide the link position. This function must be manually added to each menu item that you want to track.

_hbLink ('lid', 'lpos')

As a simple abbreviated example, suppose you have constructed a menu system to create a two-level hierarchical menu when the user mouses over a link on the index page. In the figure below, this menu opens up to a list of contacts if you click on the first level ("ABOUT").

Page 74: Hitbox Installation Guide

|Page 62

Example of a DHTML menu

In order to track clicks on your menus, you need to add information on the menu items so that Active Viewing can recognize the menus and menu levels. Each menu level will be preceded by two forward slashes (//). To identify the menus, use the parameter hbxrootmenuid as follows

hbxrootmenuid="//About"

When you use hbxrootmenuid, you are telling Active Viewing that this element is a root -- or top level menu -- and the menu ID.

If the root menu is an anchor tag and you want to track the clicks on that menu, you must provide a link ID set to the same value as the hbxrootmenuid (in the above example, name="&lid=//about"). It is important that you set both the hbxrootmenuid and the link ID to the proper hbxrootmenuid so that the metric for the menu is properly tracked.

You also need to specify the menu orientation using the hbxrootmenuorientation parameter as follows:

right

down

For example, hbxrootmenuorientation="down". Specifying the menu orientation ensures that the DHTML menu overlay will have the same behavior as the menu.

Subsequent levels in the hierarchy are also defined by two forward slashes separating each level of the menu and are defined as the link ID, as in lid=//About//Service//Online Support.

In order to properly track DHTML menus, you must specify all levels in the root menu.

Sample code for the example above may look like

<SCRIPT LANGUAGE="JavaScript1.2" SRC="http://www.example.com/js/menu.js" TYPE="text/javascript"></SCRIPT> <td class=menutop valign=top><a href="/about.php" hbxrootmenuid="//About" hbxrootmenuorientation="down">ABOUT</a> <li><a href="/management.php" name="&lid=//About//Management">Management</a> <li><a href="/contacts.php" name="&lid=//About//Contacts">Contacts</a> <li><a href="/support.php" name="&lid=//About//Support">Support</a>

Page 75: Hitbox Installation Guide

|Page 63

Image Maps

Image maps may use Manual Link Tracking, but normally, you will want to use Automatic Link Tracking. To track link clicks in an image map using HBX Active Viewing, simply set hbx.lt="auto"; or hbx.lt="auto_pos"; HBX tracks only client-side image maps and does not track CGI server-side image maps.

Image maps are implemented in HTML using one MAP element to encompass a collection of AREA HTML elements. The MAP element creates a new image map structure and represents one image map.

Example of an image map

The HTML for the above image map looks like:

<MAP NAME="FrontGraph"> <AREA SHAPE=RECT COORDS="61,35,147,59" HREF="http://www.nonstick.com/inside.html" ALT="Inside Termite Terrace"> <AREA SHAPE=RECT COORDS="32,66,78,91" HREF="http://www.nonstick.com/new.html" ALT="What's New"> <AREA SHAPE=RECT COORDS="81,73,117,91" HREF="http://www.nonstick.com/links.html" ALT="Links"> <AREA SHAPE=RECT COORDS="119,64,177,91" HREF="http://www.nonstick.com/toc.html" ALT="Table Of Contents"> <AREA SHAPE=RECT COORDS="30,96,81,114" HREF="http://www.nonstick.com/sounds.html" ALT="Sounds"> <AREA SHAPE=RECT COORDS="79,104,128,130" HREF="http://www.nonstick.com/wmovies/index.html" ALT="Online Cartoons"> <AREA SHAPE=RECT COORDS="127,97,174,117" HREF="http://www.nonstick.com/pictures.html" ALT="Pictures"> <AREA SHAPE=RECT COORDS="129,123,177,141" HREF="http://www.nonstick.com/search.html" ALT="Search"> <AREA SHAPE=RECT COORDS="31,122,82,139" HREF="http://www.nonstick.com/credits.html" ALT="Credits"> <AREA SHAPE=RECT COORDS="70,144,141,173" HREF="http://www.nonstick.com/wbinfo.html" ALT="Warner Bros. Animation Info."> <AREA SHAPE=default HREF="http://www.nonstick.com"> </MAP> <p align="center"><img SRC="images/imagemaps/NewFront.gif" ALT="** Main Navigation Graphic **" width="361" height="420" USEMAP="#FrontGraph" BORDER="0"></p>

Note that you can also name your image map by ID, rather than name (<MAP id="ourmap">). ID should only be used when your business requirements exclude Netscape™ and other browsers based on Mozilla from your

Page 76: Hitbox Installation Guide

|Page 64

collected metrics. When Active Viewing encounters the MAP tag, it first checks if the name parameter is set and uses the name for the link ID. If the ID parameter is used instead, Active Viewing will use and display the ID for the link ID. If both the name and ID attributes are used, the name attribute will take precedence.

Each time the user clicks an area, the page code will set the link ID to the MAP ID and the link position to the AREA coordinates. In the above example, if the user clicks on the first area in the example, the link ID will be set to ourmap and the link position will be set to 190,0,350,23. Note that even if you have set hbt.lt to auto, the position value will still be set.

If you manually tag AREA elements, note that you will be overriding the default information normally provided by automated link tracking, since you are specifying a value for the lid (and optionally the lpos) variable. Default values identified by automated link tracking are:

the link ID, which corresponds to the name of the .map file used to plot out the coordinates for individual links and

the link position, corresponding to the coordinates of the links in the map

Should you choose to use manual link tracking, you will have to add the link ID and link position to each AREA element in the image map. A simple example of manual link tracking would look like:

<MAP name="ourmap"> <AREA shape="rect" coords="190,0,350,23" href="http://www.example.com/us?lid=us"> <AREA shape="rect" coords="351,0,446,23" href="http://www.websidstory.com/services?lid=supplies">

</MAP>

For every link in the image map using manual link tracking, HBX displays the actual name you provided (for example, "supplies"). Using easily identifiable names makes it easier for you to track the various areas of an image map.

To track regions in your image map if the USEMAP attribute is used, be sure to use the map name attribute to name your image map. If you use map ID, the regions will not be tracked. An example of USEMAP is as follows:

<img src='http://www.example.com/monkeys.gif' usemap="#Monkeys"/> <map id="MapRect" name="Monkeys"> <area shape="rect" coords="5,10,40,64" href="http://www.example.com/HBX_Page5.htm" target="_blank" alt="Page5"/> <area shape="rect" coords="50,5,90,50" href="http://www.example.com//HBX_Page6.htm" target="_blank" alt="Page6"/> <area shape="rect" coords="70,1,140,35" href="http://www.example.com" target="_blank" alt="WSS Home"/> </map>

Page 77: Hitbox Installation Guide

|Page 65

Overriding default behavior of the hbx.lt variable

Regardless of the definition of the hbx.lt variable -- that is, hbx.lt="manual"; hbx.lt="auto"; hbx.lt="auto_pos"; -- you can define:

the name attribute of the anchor tag or

append a value to the href query string

so that HBX recognizes link tracking (and the named position of the link, if desired).

FOR TRACKING THE LINK NAME

If an image on your page has the following code linked to another page on your site:

<a href="catalog_page.html" name="&lid=Catalog_Page"><img src="buy_me.gif"></a>

or

<a href="catalog_page.html?lid=Catalog_Page" name=""><img src="buy_me.gif"></a>

you can track the image buy_me.gif linked to catalog_page.html only if

the name attribute is defined with &lid and is assigned a value (such as Catalog_Page) or the variable ?lid is appended to the href and is assigned a value (such as Catalog_Page).

Similarly, if you use the following code linked to catalog_page.html

<a href="catalog_page.html" name="&lid=Catalog_Page">Buy me</a>

or

<a href="catalog_page.html?lid=Catalog_Page" name="">Buy me</a>

the HBX Active Viewing feature will track the href link to catalog_page.html and display the link as "Catalog_Page" whenever the hyperlinked text "Buy me" is clicked on only if

the name attribute is defined with &lid and is assigned a value (such as Catalog_Page) or the variable ?lid is appended to the href and is assigned a value (such as Catalog_Page).

FOR TRACKING THE LINK NAME AND THE LINK POSITION

To track a specific position of a image link to catalog_page.html use the following code:

<a href="catalog_page.html" name="&lid=Catalog_Page&lpos=bottom_page"><img src="buy_me.gif"></a>

or

<a href="catalog_page.html?lid=Catalog_Page&lpos=bottom_page" name=""><img src="buy_me.gif"></a>

HBX tracks the image linked to catalog_page.html and displays the link as "Catalog_Page" only if:

Page 78: Hitbox Installation Guide

|Page 66

the name attribute is defined with lid and is assigned a value (such as Catalog_Page ) or the variable ?lid is appended to the href and is assigned a value (such as Catalog_Page) and the position of the link is defined with lpos either in the name attribute or in the query string, and assigned a value (such as "bottom_page").

FOR TRACKING THE LINK NAME AND THE LINK POSITION

To track a specific position of a image link to catalog_page.html use the following code:

<a href="catalog_page.html" name="&lid=Catalog_Page&lpos=bottom_page"><img src="buy_me.gif"></a>

or

<a href="catalog_page.html?lid=Catalog_Page&lpos=bottom_page" name=""><img src="buy_me.gif"></a>

HBX tracks the image linked to catalog_page.html and displays the link as "Catalog_Page" only if:

the name attribute is defined with lid and is assigned a value (such as Catalog_Page ) or the variable lid is appended to the href and is assigned a value (such as Catalog_Page) and the position of the link is defined with lpos either in the name attribute or in the query string, and assigned a value (such as "bottom_page").

Similarly, to specify the position of the link to catalog_page.html use this code:

<a href="catalog_page.html" name="&lid=Catalog_Page&lpos=bottom_page">Buy me</a>

or

<a href="catalog_page.html?lid=Catalog_Page&lpos=bottom_page" name="">Buy me</a>

the HBX active viewing feature will track the position of the href link catalog_page.html and display "Catalog_Page" whenever the link "Buy me" is clicked on only if

the name attribute is defined with lid and is assigned a value (such as Catalog_Page ) or the variable lid is appended to the href and is assigned a value (such as Catalog_Page). and the position of the link is defined with lpos either in the name attribute or in the query string, and assigned a value (such as "bottom_page").

In contrast with the standard numbered positions (1 to n) reported by automatic link position tracking when using hbx.lt="auto_pos"; you can assign any valid string to the position of the link on the page when using &lpos= after the query string or in the name attribute.

Suppose a link ID occurs in many positions on a single page, and you want HBX to track all link IDs automatically. But you also want to track link clicks for various positions of a single link ID. To do this, define

Page 79: Hitbox Installation Guide

|Page 67

hbx.lt="auto"; for the page, and then specify the name attribute of the href tag so that different link positions are tagged in connection with the link.

If Link ID is Pedido and is connected with several positions on the page such as top+menu bottom+menu side+menu, each link is coded thus:

href="http://restaurant.ora.com/exp/pedido_info.html" name="&lid=Pedido&lpos=top+menu">Place an order</a>

href="http://restaurant.ora.com/exp/pedido_info.html" name="&lid=Pedido&lpos=bottom+menu">Place a big order</a>

href="http://restaurant.ora.com/exp/pedido_info.html" name="&lid=Pedido&lpos=side+menu">Place a small order</a>

Note that specifying multiple locations for a single link ID only works if you define hbx.lt="auto"; HBX does not support tracking of multiple locations for a single link ID if you define hbx.lt="auto_pos"; for a page.

Planning for Updates to Link Tracking Mode

MIGRATING CODED WEB PAGES FROM hbx.lt="auto"; OR hbx.lt="auto_pos"; TO hbx.lt="manual";

The translation of pages from the auto or auto_pos setting to the manual setting requires changes in the page code to preserve data already collected via the auto or auto_pos settings. If you initially assign specific values to the lid or lpos variables for the href links in a Web page, and if you change the link tracking model from auto to manual or from auto_pos to manual, HBX active viewing continues to track links for these pages only if the revised page using the manual link tracking model uses the following code:

<a href="catalog_page.html?lid=&lpos=">Buy me</a>

or <a href="catalog_page.html" name="&lid=&lpos=">Buy me</a>

Link Tracking Special Case

Suppose a visitor does not click on a link you are tracking, yet views the link-enabled page. In this case, neither link clicks nor page views are reported by HBX for the page in link analysis metrics.

Events

An event is any data collection request sent to the HBX data center triggered by a visitor's interaction with a page on your Web site containing HBX code. With events, you can track new patterns in visitor behavior by creating an ad hoc query of HBX data based on sequences of defined events. Datapoints collected in the defined event include the referring URLs, page name, and name of entry page associated with a page view.

In the following section, read about creating an event sequence in HBX. The HBX user manual contains information about reading and interpreting the event sequence report and the event sequence detail view.

You can also create a custom (or user-defined) event. One example of creating a custom event is defining a custom event in the HBX page code.

Creating an Event Sequence

When you first navigate to the Event Sequence report, no event sequences are defined. You must first create an event sequence before HBX can display information. A minimum of two events must be defined in order to create an event sequence. If you select only one event and click on Finish, HBX notifies you that an event sequence constitutes at least two events.

Page 80: Hitbox Installation Guide

|Page 68

Note that you can create only one event sequence at a time. If you wish to examine a different event sequence, you must start over again and define the new sequence. Unless you redefine an event sequence, this event sequence definition remains available whenever you login to your account with your user name.

Note also that if you open a window in another brand of browser (for example, Netscape Navigator if you are using Internet Explorer), the event sequence you define will not appear in the other browser brand. This is because HBX stores the event sequence definition in a persistent browser-specific cookie.

To create an event sequence, start by defining a single event using the dropdown menus to build an event criteria.

Select an event type from the first dropdown menu. Event types include:

Referring URL (the URL that refers visitors to your site) Note that Referring URL indicates an external URL. It does not include any Internal URLs. See the HBX User Manual for more information on the difference between Referring URLs and Internal URLs.

Entry Page (the first page viewed when a visitor enters your site. An entry page can be defined only as the first event in a sequence, or as the first Page immediately following a Referring URL.)

Page

Exit Page (the last page viewed before the visitor leaves your site. An exit page can be defined only as the last event in a sequence.)

In the second step, you select from a set of operators including:

Name equals (the name of referring URL, entry page, or page must correspond exactly to the term)

Name does not equal (returns all sessions where no name in the session exactly matches the string entered in the text field)

Name contains (one of the names of the referring URL, entry page, or page must match the term)

Name does not contain (returns all sessions where no name in the session matches any portion of the string entered in the text field)

Name starts with (the beginning portion of a referring URL, entry page, or page must match the term)

Name ends with (the final portion of a referring URL, entry page, or page must match the term)

Next, enter text or a number to serve as the right-hand side of the comparison/equation. Words you enter in the text field must adhere to restrictions outlined in the Illegal Characters section. To complete the event sequence, define another event just as you defined the first event, but this time define the relationship between Events 1 and 2 by selecting one of the following operators:

And (the matching page/entry page or referring URL must meet conditions set for Events 1 and 2, in any order)

Followed by (the matching page/entry page or referring URL must meet conditions set for Events 1 and 2. Event 1 must occur before Event 2, but non-matching events may occur between the two events.)

Followed immediately by (the matching page/entry page or referring URL must meet conditions set for Events 1 and 2, in that order, and with no other event intervening between the two events).

Page 81: Hitbox Installation Guide

|Page 69

If you create an event sequence where the first event type is a Referring URL followed immediately by a Page event type, HBX logically renames the Page event type to Entry Page.

At each level in building criteria to describe the event sequence, HBX displays the event type, the operator, and the term in the preview area just above the criteria dropdown menus using icons in the table below. Each event type and its position in the sequence is identified by a letter-number code above the icons, such as E1 E2 and so on.

Suppose several pages on your site have the word tool in the page name, and you wish to determine how many times an entry page with tool in the name is followed by another page with tool in the name. Select Entry Page from event type, select Name contains, and enter the word tool as the term. Because you use the Name contains operator, results will also show tools tool-shed as well as stool, so on. This completes the definition for the first event.

Connect the two events by selecting Followed by. Now, define the second event in the same way you defined the first event. This time, select Page, Name contains, and enter the word tool. Before completing the definition, review the definition of the event sequence in the Event Sequence Preview box. Use the following table to interpret the icons used in representing the different events and their relationships, or mouse over the icons for popup text.

Click Finish. When the screen refreshes, you see a series of matches to the event sequence you defined.

ICON MEANING

EVENT TYPE

ENTRY PAGE

SUBSEQUENT EVENT PAGE

EXIT PAGE

REFERRING URL

INTER-EVENT RELATIONSHIP

AND

FOLLOWED BY

FOLLOWED

IMMEDIATELY BY.

Event Sequence Icons

Editing an Event Sequence

Once you create an event sequence, you may wish to add, remove, or modify criteria that determine events. To do this, navigate to the event sequence report and click on the Edit Event button. The Create Event Sequence page opens with the currently defined event. You can then change the terms used in the event criteria, change how conditions are related to each other, and so on.

When refining the event sequence by adding more conditions (events), you can narrow the set of criteria used if results of the query are too general. On the other hand, defining a sequence of events too narrowly will produce no results. Indeed, only event sequences that describe at least one actual set of events within a user's click-stream will be displayed once you click Finish. You can also search through results of an event sequence via the Search tool at the top of the screen.

Page 82: Hitbox Installation Guide

|Page 70

Campaign Analysis

This section provides a conceptual overview of HBX campaigns. The next section discusses how campaigns are administered. The final section discusses how to implement the campaign variables on your Web site

Overview of Campaigns

Of all the features offered by HBX for gathering Web intelligence, campaign analysis provides one of the most robust and powerful tools to acquire and retain visitors. You can use campaigns to track multiple channels of information on how visitors respond to campaigns, how they convert to campaigns, and what happens in-between.

Classes of Campaign

HBX recognizes three classes of campaigns and two methods of implementation:

CLASS

Conventional campaigns (two-step campaigns)

Lead campaigns (three-step campaigns)

Salesforce.com campaigns (three-step hybrid campaign)

IMPLEMENTATION

Tagged campaigns (campaigns where you define response or conversion triggers by adding HBX page code to Web pages likely to lead to a response or conversion, or by adding specially-coded campaign IDs to URLs which point to pages you are targeting in the campaign)

Tagless campaigns (campaigns where you define response or conversion triggers based on filters of page, URL, or link ID information established when you create the campaign). Tagless campaigns do not require you to change the page code on your site.

The following sections focus on creating tagged campaign for all three classes of campaign. The creation/implementation of tagless campaigns for all three classes is found in the tagless campaign section.

Conventional Campaigns

Conventional campaigns use the response > conversion model, based on response to campaign collateral and conversions of campaign responses. Only two levels are distinguished in a conventional campaign.

For example, you might launch an email campaign to invite readers to examine your catalog pages. When the visitor responds to the link in the email, the catalog home page targeted by the link triggers a response in HBX to the email campaign. If the visitor buys an item from the catalog, the order confirmation page becomes the goal for the campaign. When the respondent lands on the order confirmation page, a conversion is triggered for the campaign

Lead Campaigns

Lead campaigns use the response > lead > conversion model. This class of campaign extends the conventional campaign model by adding an additional step where events that generate a lead (also known as opportunity) can be tracked before the campaign is converted. The lead campaign visitor is transformed from respondent, to lead designate, and finally to converter. This class of campaign provides an extra level of detail when analyzing the progression of campaign events. For example, you might launch an email campaign for recruiting subscribers to your newsletter. When the visitor responds to the link in the email, the newsletter welcome page targeted by the link triggers a response in HBX to the email campaign. From the welcome page, the respondent clicks on a link to a form for signing up for your

Page 83: Hitbox Installation Guide

|Page 71

newsletter. After the respondent successfully fills out the form and clicks submit, this information enters your database, and the respondent then arrives at the lead designation or lead qualification page. Information submitted with the form can trigger other related campaigns directed at the new subscriber. The subscriber is now known generically as a lead designate, for having successfully completed the subscription form, and landing on the lead designation page. On the lead designation page, the subscriber can be invited to pursue other potential Web-based opportunities or offers. For example, the subscriber/lead designate might wish to "enter a drawing to win great giveaways" or to personalize subscription information.

The subscriber/lead designate who clicks on the offer and enters the drawing then converts to the lead campaign by landing on the "thank you for entering" goal page. In this case, a lead campaign increases the retention of the visitor by offering further enticements to remain on the site, as well as to allow the business to develop a consumer profile by mining the database. The business can then target the campaign converter with new, related campaigns. It is important to identify which pages are best suited as response pages, and which other pages are best suited to serve as lead designation or goal pages. HBX allows you to assign up to 20 goals per campaign. You should never place the hbx.cmp and hbx.gp variables (for response page and goal page) on the same Web page. The same principle applies with lead designation pages: never define hbx.cmp and hbx.hlt on the same page.

To count a conversion for a lead campaign, the visitor must

respond to the campaign by accessing the response page

become a lead designate by accessing the lead designation page and

then access the goal page for the campaign. While it is possible to define lead designation and campaign conversion on the same page, you should consider how visitor behavior and interest in products or services can be channeled toward other related products or services once the visitor-prospect lands on the lead designation page. Once you implement emergent Web-based business opportunities from the lead designation page, you will no longer need to design your site so that lead designation and campaign conversion are collapsed on the same page.

You can create a lead campaign dynamically or through the Campaign Administration page. You can also track attributes associated with the lead designation page, as discussed in the following section. In the design of the lead campaign, HBX enables you to channel multiple lead campaign respondents into one lead designation page, in the same way that multiple campaign respondents to conventional HBX campaigns can convert on the goal page. Alternatively, you can track the visitors responding just to the last lead campaign, just as with conventional campaign conversions. This feature of HBX lead campaigns is tailored to Web site designs where many potential paths point to a lead designation page.

Salesforce.com Campaigns

A Salesforce.com campaign is the result of collaboration between Omniture and Salesforce.com®. It allows you to use tracking features of HBX campaigns with campaigns in Salesforce.com. Salesforce.com campaigns are made available if you already have an account with Salesforce.com

Background on the Salesforce.com campaign

Corresponding HBX and Salesforce.com terminology

Flow of information during a Salesforce.com campaign

The Salesforce.com campaign is a specialized and simplified version of the Lead Campaign. You create three web pages that allow you to track the behavior of a visitor/prospect from response to a campaign to campaign

Page 84: Hitbox Installation Guide

|Page 72

conversion. In the process, the campaign respondent is invited to submit a filled out "Contact us" or "Sign up now" form with information such as :

address

e-mail address

company

Web site

name

telephone number

job title

Because strategies for planning the response and conversion pages are similar to what you use for the same pages in conventional and lead campaigns, the page code implementation of a Salesforce.com campaign is relatively simple. Read details about:

tracking Salesforce.com campaigns (includes information on creating the "Thank You" page -- Web-to-Lead page -- as well as downloading the HBX custom Web-to-Lead code).

tracking Salesforce.com goal attributes

Restrictions on the Salesforce.com campaign

There are however, some important differences to remember when launching a Salesforce.com campaign:

FOR HBX

You are limited to 100 active Salesforce.com campaigns

Overall, the number of campaigns must total 1000 or less. For example, if you have 100 active Salesforce.com campaigns, you can have only 900 conventional or lead campaigns

Only static (non-dynamic) Salesforce.com campaigns can be created. In addition, you cannot create tagless Salesforce.com campaigns.

Only HBX-generated campaign IDs are available. You cannot create your own Salesforce.com campaign ID.

You cannot upload or download information about Salesforce.com campaigns using campaign definition files. But you can update daily costs involved with campaigns via daily cost definition files

A respondent who fills out and submits the Web-to-Lead form is counted as a conversion for the most recent campaign only.

Because the HBX cookie holds information for just one Salesforce.com campaign at a time, you can use one "Thank you" page to convert responses to several Salesforce.com campaigns, but that conversion will only be to the last campaign visited by the respondent.

Only one Salesforce.com campaign can be converted at a time per "Thank You" page, regardless of the number of HBX accounts tracked on the page.

The "Thank You" page always defines hbx.hlt="LAST"; to designate conversion of the Salesforce.com campaign

Page 85: Hitbox Installation Guide

|Page 73

For the conversion page, do not use the Salesforce.com campaign ID that you used on the response page.

If you plan to track the lead attribute, define the hbx.hla variable on the "Thank You" page.

Note that because Salesforce.com does not recognize the HBX lead attribute, it does not appear when viewing information about the campaign in Salesforce.com.

FOR SALESFORCE.COM

You must have a current valid account with Salesforce.com

You must enable users defined for your account with the "Marketing User" function

You must enable Web-to-Lead functionality in the setup section for your account

FOR BOTH HBX AND SALESFORCE.COM

Because Salesforce.com is a Web-based CRM application that always requires intervention (requiring manual processing of administrative information about new leads -- assigning them to contacts, accounts, or opportunities) between the response and conversion of a campaign, Salesforce.com campaigns return conversion results more gradually than conventional or lead HBX campaigns.

The tradeoff is in immediacy of results versus a much richer and granular customer/prospect data set integrated into the database of your current Salesforce.com contacts and opportunities.

Successful creation of a Salesforce.com campaign means that one and only one campaign ID is used to identify that particular campaign when viewing information about the campaign from either the HBX or the Salesforce.com campaign administration pages. In terms of relational database design, there is a one-to-one correspondence between an HBX and a Salesforce.com campaign. Neither HBX nor Salesforce.com support one-to-many campaign ID mappings.

Implementation: Designing Tagged Campaign Pages to Acquire and Convert Visitors

You implement a tagged campaign via two variations of a simple user navigation scenario. In this simple scenario, the visitor arrives at one of your site pages, thus triggering a response to campaign A. The visitor is counted as a respondent to campaign A. Both campaign ID and time/date stamp (recording the visitor's first access time) is added to the respondent's cookie. If the respondent with campaign A information in the cookie then arrives at another of your site pages, a conversion to campaign A is triggered.

The two variations of this user navigation scenario reflect how the user arrives at the site pages. These variations are known as the on-line method and the landing page method.

On-line - URL Query string

The first variation, called the on-line method, is probably the quickest and simplest way to launch a HBX campaign. Combined with the dynamic campaigns feature, you can create campaigns on the fly, and then later update ROI parameters for the dynamic campaign in the campaign administration page.

Page 86: Hitbox Installation Guide

|Page 74

In this variation, the user simply clicks a specially coded link, or follows a specially coded URL. Clicking on the link or following the address causes a page on your Web site to open in the browser. By virtue of following this address, the user triggers a response to a campaign A, and is counted as a respondent to campaign A. The information about campaign A is then written on the respondent's cookie. If the same respondent with campaign A information stored in the cookie clicks on another specially-coded link, the visit then triggers a conversion for campaign A. The respondent is counted as a converter for campaign A.

To implement the on-line method, you need only create a specially coded URL. You can place this URL in a variety of locations: in an email you send to prospects; or in a banner ad, newsletter, or Flash movie; or in an affiliate's site, among many others. The advantage to the on-line method is its quick implementation. On the other hand, this implementation may require a vehicle for disseminating the campaign, such as emails, banner ads, newsletters, and so on. One option to circumvent this is to place an internal link on one of the pages of your Web site that uses this specially coded URL.

Note that the on-line method is ideally suited for acquiring visitors and triggering responses. Once the campaign respondent has arrived at your site, your emarketing focus then shifts to retaining the respondent and causing conversion. Strong content and ease-of-navigation are major keys to visitor retention. The on-line method can be used as prelude to the second variation, the landing page method, where the respondent then needs to move toward one or more goal pages. But a URL can just as easily be coded to trigger a conversion of a campaign.

Landing Page / Goal Page

In the second variation, the landing page method, the user enters your site by normal means, such as a "free" referral from a search engine, an ordinary link from another Web site, and so on. If the page that the user lands on contains special HBX campaign code, the visit triggers a response for campaign A. The visitor is counted as a respondent to campaign A, and information about the campaign is written on the respondent's cookie. If the same respondent with campaign A information stored in the cookie then lands on a page reflecting the goal for the campaign, the visit triggers a conversion to campaign A. The respondent is then counted as a converter to campaign A.

To implement the landing page method, you need to identify which page should trigger a campaign response and which pages represent a goal page. This page may be an order confirmation page, a thank you page, a registration summary page, and so on.

Creating Campaigns: Campaign Administration Page

This section describes how to set up tagged and tagless HBX campaigns via the Campaign Administration Page.

Creating HBX Campaigns

Generally, there are three basic ways of creating campaigns in HBX.

Filling out information about your new campaign via the Campaign Administration Page and clicking Finish. For tagged campaigns, you then implement the newly created campaign via the on-line method or the coded landing page method. For tagless campaigns, no implementation on Web pages or changing of URLs is necessary.

Creating dynamic tagged campaigns on the fly and implementing via the on-line method or the coded landing page method. Later you return to the campaign administration page and add details

Page 87: Hitbox Installation Guide

|Page 75

about the dynamic campaign. The dynamic method is not available when creating Salesforce.com campaigns. The dynamic method does not apply to tagless campaigns.

Bulk uploading of campaigns (exporting) can be used to create campaigns and update campaign definitions and daily values. The bulk uploading method is not available for tagless campaigns.

The following sections focus on creating a tagged and tagless campaign through the campaign administration page. Also examined are ways to register new tagged campaigns and update tagged campaign data via bulk uploading.

The majority of the information that follows on creating a new static campaign "from scratch" in the campaign administration page also applies to changes you might make in the campaign administration page for newly launched dynamic campaigns. The only differences are that the following information is no longer modifiable for a newly launched dynamic campaign: campaign type, category, campaign ID; and start and end dates.

Campaign analysis is not a campaign management tool. Creating the campaign in HBX gives you the

ability to track that campaign's acquisition, response, conversion, and Return On Investment (ROI) success as it relates to your Web site. The HBX campaign analysis feature does not actually generate any campaign collateral, such as e-mail text or banner ad art, or track and manage direct mail lists, banner ad placement records, and so on.

Campaign Summary Page

To access the campaign administration page, select Site Tools and Reporting > Administration > Campaigns from the menu option. The campaign administration window opens, displaying a tabbed view for current and archived campaigns. You can click a small help icon for a brief explanation of technical concepts introduced in this page.

SALESFORCE.COM(R) ACCOUNT ADMINISTRATION

The Salesforce.com Account Administration link allows you to enter information about the Salesforce.com accounts, including the account ID (equivalent to the user's email address), and password.

Note You must have a Salesforce.com account established prior to entering the Salesforce.com information on this page. If no matching account is found in the Salesforce.com database, an error appears prompting you to register first with Salesforce.com.

CURRENT CAMPAIGNS

Information on all current tagged and tagless campaigns registered by HBX for your account are listed in the

Current Campaigns tab. The campaign information table contains the following columns:

Campaign ID

Description

Category

Dynamic toggle

Start Date

End Date

At the top of the table are buttons for these campaign actions:

Create To create a campaign, click Create Campaign

Page 88: Hitbox Installation Guide

|Page 76

Edit To edit a campaign, click Edit

Import To import (upload) a file with all campaigns, click Import

Export To export (download) either a campaign definition file or daily cost definition file, click Export

Export All To export (download) all campaigns, click Export All

Archive To archive a campaign, click Archive

Classification To create or edit campaign classifications, click Classifications

All columns in the list are sortable. You can click the column headers to reorder the items listed in either ascending or descending order. An icon next to the column header indicates the sort order. The default sort is based on campaign start date in ascending order.

ARCHIVED CAMPAIGNS

In the Archived Campaigns tab, HBX displays a list of archived campaigns, that is, a list of campaigns that you

no longer want to display in the Current Campaigns list (such as those campaigns that have reached their end date) and which you have archived. You must choose to archive a campaign since HBX does not automatically archive campaigns. Any campaign you archive can also be unarchived.

Archived campaigns are listed based on category (e-mail, banner ad, and so on) and on the number of completed campaigns within each category. If you click a folder, a popup window opens listing the contents of the folder in tabular format with the following columns:

Campaign ID

Description

Start Date

End Date

You may click the folder icon next to each category to see a drill-down list of the campaigns archived under each category.

HBX enables you to create up to 1000 separate campaigns.

INFORMATION PRESENTED IN THE CURRENT AND ARCHIVED CAMPAIGNS TABLES:

ID: This is the identifier that HBX uses to distinguish among campaigns. You set this ID when specifying a category of campaign. If you click the ID, a popup window opens with detailed information about the campaign: basic Campaign Parameters and Campaign Triggers.

Campaign Parameters. In this tab HBX displays primary campaign parameters, including:

Campaign Type

Categories

Description

Date Range

Cost Model - Amount

Audience Size

Page 89: Hitbox Installation Guide

|Page 77

Conversion Value (Amount)

Campaign Triggers. If the campaign is tagless, or you have defined classification parameters, or you changed the attribute parameter or attribute report title, HBX displays in this tab the information about response, lead, and/or conversion triggers applied, whether conversions are applied, and a list of classification parameters. To view any of these details, click the icon for the section. Specifically, it provides:

a description of the response and/or lead trigger

the name of the attribute parameter for response or lead

the name given the campaign attribute report

whether Response Expiration or Campaign expiration upon conversion applies to this campaign

a list of specific conversions associated with the campaign

If the campaign's cost model is daily cost, you may view the campaign's daily costs by clicking View Daily Cost Values. A popup window is displayed showing the dates and the associated costs.

Description: A short description for your campaign.

Category: The kind of campaign.

Dynamic: A checkmark in this column indicates a campaign that has not been defined in the Campaign Administration screen, but instead coded on landing pages, and submitted via the on-line campaign method, or created via the upload feature. When a page coded with a dynamic campaign is accessed for the first time, the campaign is created and data for it begins to be counted by HBX. The start date of a dynamic campaign is the date the campaign first receives a response. HBX recognizes an end date for a dynamic campaign only if it is specified. Dynamic campaigns can be archived, but they still collect information.

Start and End Dates: The dates established for beginning and (optionally) ending the campaign.

Campaigns for which the end date has passed are known as expired campaigns. The start and end dates of expired campaigns are highlighted in red for expired campaigns in the campaign list. If a campaign's expiration date is soon approaching (within five days), the start and end dates are highlighted in yellow in the campaign list. However, remember that you may edit the campaign at any time before the expiration date to prolong the campaign (that is, postpone the expiration date).

CAMPAIGN ADMINISTRATION: CREATING A CAMPAIGN

This section describes how to set up tagged and tagless HBX campaigns via the Campaign Administration Page.

To create a campaign, click the New button. The Create Campaign screen opens.

The campaign creation process consists of two steps:

in step 1, decide on basic parameters used in the campaign (ID, name, category, conversion value, date range, and so forth)

in step 2, decide on whether to implement a tagged or a tagless campaign, and other response characteristics of the campaign.

For a tagged campaign, do not enter information for the response (or lead) triggers or assign specific conversions to the campaign.

Page 90: Hitbox Installation Guide

|Page 78

For a tagless campaign, you must indicate to HBX how responses or lead designations in the campaign will be determined. You can also associate the campaign with specific user-defined conversions.

Refer to more information about other features of the campaign administration page.

CAMPAIGN ADMINISTRATION STEP 1

Enter the information listed in the following bullets for your campaign. Unless marked (optional) or greyed out in the campaign administration page, all fields on this page are required. The HBX HTML interface displays an error message reminding you about missing information in a required field if you fail to enter information.

To launch a Salesforce.com campaign, first make sure you have a Salesforce.com account.

If you don't already have an account, you can create it by visiting the Salesforce.com Web site and going to the Products section.

Campaign Type: Select the campaign type from the drop-down menu. The choice of campaign type affects how HBX displays data. If you choose a conventional two-step response > conversion campaign type, no information about that campaign will appear in the Campaign Leads or Campaign Lead Drilldown views, or in the leads section of the Campaign Funnel drilldown from the campaign ROI statistic.

To track the number of responses that become conversions, choose Response > Conversion.

To track the number of responses that become leads and then conversions, choose Response > Lead > Conversion.

To track Salesforce.com campaigns, choose the Salesforce.com (tm) type. Note that before you can finish creating a Salesforce.com campaign, you must enter your Salesforce.com user name and password to authenticate your account. HBX provides access to authentication of the Salesforce.com account through the Salesforce.com

Account Administration button. If you click this button, a new window opens, allowing you to enter the necessary information Once you create a Salesforce.com campaign, one campaign ID with the same number is carried to your Salesforce.com account. Only one HBX campaign is connected with a Salesforce.com campaign. HBX does not support the creation of tagless Salesforce.com campaigns.

Read more information about the differences between these campaign types.

Keyword network: Check the box if you wish to use this campaign to collect all keywords associated with a keyword advertising network. Read more about the keyword advertising network campaign If you choose a keyword network campaign, the prefix of the campaign is automatically set to KNC- or KNL- depending on your choice of two-step conventional campaign or three-step lead campaign. This checkbox is disabled if you create a Salesforce.com campaign.

Category:When HBX records a response for a campaign, in the form of a potential customer, subscriber, reader, and so on, acquired from the general Web viewing population, that response reflects on the effectiveness of your e-marketing campaigns. Once you capture the respondent's attention on your site, the next step is to cause the respondent to commit to a purchase, sign up for a service, or otherwise create revenue/recognition for your site. For this reason, focus on how your e-marketing techniques might optimally generate an initial response, whether by email, banner ad,

keyword referral, etc. when creating a campaign and choosing a campaign category.

Page 91: Hitbox Installation Guide

|Page 79

If the respondent is already at your site, the focus then shifts to ways to maximize retention and

keep site abandonments to a minimum. The concept of campaign category is most useful when applied to an analysis of how respondents are acquired, rather than how respondents can be converted. You can gauge the relative performance of various campaign categories on your site by exploring the Category Response and Category Conversion statistics. Select a campaign category from the drop-down menu. The campaign category is abbreviated with two letters prefixed to the campaign ID. The following categories are available:

AF Affiliate

BA Banner Ad

CA Classified Ad

DM Direct Mail

EM E-mail

IL - Internal Link

KA Keyword Ad

LE Link Exchange

NL Newsletter

OT Other

PA Print Ad

RA Rich Media Ad

SP Sponsorship

SFS - Salesforce.com

Certain campaign categories apply primarily to the on-line method of acquiring visitors and triggering campaign responses: Affiliate, Banner Ad, Classified Ad, Direct Mail, E-mail, Link Exchange, Keyword Ad, Keyword Network, Newsletter, Print Ad, Rich Media Ad, Sponsorship. The remaining category (Internal Link) is more closely linked with the off-line landing page method. If your campaign does not fit one of the categories available in the menu, you should choose "Other." If you choose the Keyword network checkbox, the prefix is automatically changed to KNC- or KNL- depending on your choice of two-step conventional campaign or three-step lead campaign (above). When creating a Salesforce.com campaign, the SFS- prefix is automatically assigned by HBX. Any campaigns you launch that do not begin with any of the letter combinations in the table below, whether a HBX or third party campaign, will be automatically assigned the OTC- prefix by HBX.

Note that when you submit a third-party campaign ID (a campaign ID not created in HBX) begins with a matching prefix listed below, it will be counted as if it were a native campaign, regardless of campaign's original category or type.

AFC- DML- KNC- OTL-

Page 92: Hitbox Installation Guide

|Page 80

AFL- EMC- KNL- PAC-

BAC- EML- LEC- PAL-

BAL- ILC- LEL- RAC-

CAC- ILL- NLC- RAL-

CAL- KAC- NLL- SPC-

DMC- KAL- OTC- SPL-

SFS-

Description: Enter a short description for your campaign. This description will appear in the Current Campaigns list, in the Archived Campaigns drill-downs (if the campaign is later archived), and in the campaign-specific statistics. Campaign descriptions should be unique for each campaign. While you may create campaigns with the same description, using unique descriptions will help you distinguish between different campaigns at a glance. The campaign description must conform to character size and character types described in Illegal Characters.

Campaign ID: Enter a unique, case-sensitive campaign ID, up to 24 alphanumeric characters. The campaign description must conform to character size and character types described in Illegal Characters. The ID you enter is appended to the three-digits automatically assigned by HBX, based on campaign type. Refer to guidelines in the table in the Importing Campaigns section to create a

valid campaign ID. You can also accept an ID assigned by the HBX, by selecting the Use ID

generated by HBX checkbox . This ID is randomly-generated and 12 digits long, containing two uppercase alphabetic characters and ten numerals. When creating a Salesforce.com campaign, the campaign ID is automatically assigned by HBX.

Date Range

Start date: Use the mm/dd/yy format. You must choose a start date after the current date. For dynamic campaigns, the start date is the date that HBX first receives responses to the campaign. If you set a start date far in the future, you can later edit a static campaign to adjust it to start sooner.

End date: (optional). By default, HBX sets no end date for a static campaign. If you wish to establish a finite length for the campaign, use the mm/dd/yy format. You must choose a end date after the current date. Once the static campaign reaches its end date, HBX stops collecting data for it, but you can still view data collected in the past for the campaign. Note that you can always adjust the end date of a static campaign prior to its expiration. Modifying end dates in the Campaign Administration page only applies to static campaigns. HBX does not recognize an end date for dynamic campaigns via the campaign administration page.

Cost model: Select the cost model from the drop-down menu and enter the cost of the campaign. Use numbers and the dot decimal separator only, no currency signs (150.50 NOT $150.50). To allow overhead for calculation, HBX limits the cost you can enter for a single campaign to an amount less than $10,000,000,000.00 in the campaign administration page or when uploading campaigns. You can use decimal values (up to two digits) when defining the cost variable. Read more about cost models. Cost model options include:

total cost - the standard HBX cost model

Page 93: Hitbox Installation Guide

|Page 81

daily cost - costs calculated based on daily campaign values you have saved in a csv file.

Note To create a campaign based on daily costs, you must upload a file containing the daily costs for the campaign using the campaign upload option. To change the cost model to daily costs, or to edit the daily costs, you must also upload a file with this information.

cost per thousand - the cost per one thousand impressions (requires implementation of

audience impressions) - Note that cost per thousand is often abbreviated CPM (cost per mil or cost per mill)

cost per click- the cost per campaign responses

cost per action - the cost per campaign conversion

Audience size: This refers to the number of individuals the campaign is expected to reach. Use only positive integer values.

Override of Actual Conversion Value: What you enter for this field is based on your estimate of the business or financial value of a conversion in your campaign. This value is then used in calculating the campaign's ROI. Use numbers and the dot decimal separator only, no currency signs (150.50 NOT $150.50). To allow overhead for calculation, HBX limits the conversion value you can enter for a single campaign to an amount less than $10,000,000,000.00 in the campaign administration page or when uploading campaigns. You can use decimal values (up to two digits) when defining the conversion value variable. Note that if you enter a value in this field, and you also specify (in Step 2) that one or more conversion rules should apply to the campaign, the value entered here overrides the value defined in any of the specified conversion rules, or in any conversion value specified in the HBX page code with the hbx.hcv variable.

If you are creating a Salesforce.com campaign, no options exist for entering a

conversion value for the campaign. The conversion value is determined by

reference to the product(s) associated with an opportunity in

Salesforce.com, once the lead has been generated from the Web-to-Lead

form and the lead is associated with an opportunity.

CAMPAIGN ADMINISTRATION STEP 2

It is in Step 2 that tagged and tagless campaigns are distinguished. Until you reach this step, the creation of all campaigns follows the same basic steps. The Campaign Type selected in step 1 determines the information you must enter in Step 2.

When creating a tagless campaign in Step 2, you must enter information for either the response event, lead event, or the conversion event. If you do not define the response, lead, or conversion events, HBX creates a

tagged campaign based on the information entered in Step 1.

TAGGED AND TAGLESS CAMPAIGNS

Tagged campaigns are campaigns where you define response, lead, or conversion triggers by adding HBX page code to Web pages likely to lead to a response or conversion, or by adding specially-coded campaign IDs to URLs which point to pages you are targeting in the campaign.

Tagless campaigns are campaigns where you define response, lead, or conversion triggers based on filters of page, URL, or link ID information established when you create the campaign. Tagless campaigns do not require you to change the page code on your site.

Page 94: Hitbox Installation Guide

|Page 82

Note Only static campaigns can be tagless. HBX does not support the use of response or lead triggers or user-defined conversion triggers for dynamic campaigns. Also note that all fields in Step 2 are optional. If you do not enter a value in the Attribute Report Title text box, HBX

fills in the field with the value Attribute.

Note To count custom metrics, respond to campaigns, designate leads or convert campaigns defined in the HBX page code for events such as downloads, internal searches, link views, etc. (non page-view events), you must upgrade to the latest version of the hbx.js file.

TWO-STEP CAMPAIGN

If you selected a conventional two-step response > conversion campaign type in Step 1, and you are launching a tagged campaign, you may choose to fill out or edit the following fields:

Attribute Parameter

Attribute Report Title

Responses Valid for ___ days

Classification Parameter

and enabling the Expire responses upon conversion option

If you selected a conventional two-step response > conversion campaign type, and you are launching a tagless

campaign, you must fill out the Response Trigger field.

For a tagless campaign, you may also fill out the fields listed above, as well as select either Use Non-Specific

Campaign Conversions or Assign Specific Conversions. By default, newly created campaigns Use Non-

Specific Campaign Conversions.

Note If you have not created a global conversion, HBX indicates that no global conversions have been defined. Read more about defining the conversion event and creating conversions.

Note If you enter information for the response event, but not for the conversion event, HBX considers the campaign a mixed tagless/tagged campaign. This means that the response event is based on response criteria you

enter using the response trigger dropdown menu and in the text box. But, HBX only converts the campaign if a visitor triggers the conversion either by landing on a page where hbx.gp="<campaign-ID>"; is defined, or if the visitor clicks a URL containing &GP=<campaign-ID>.

After creation, any tagged or tagged campaign may be changed by editing the campaign to a mixed tagless/tagged campaign. To change a tagged campaign to a mixed one, specify criteria for the Response Trigger. To change a tagless campaign to a mixed one, clear the Response Trigger information, that is, change the dropdown menu to [Select]. When you change the tagged campaign to a mixed campaign in this way, you also disable the attribute parameter and classification parameters already defined for this campaign.

THREE-STEP CAMPAIGN

If you selected a three-step response > lead > conversion campaign type, and you are launching a tagged lead campaign, you may choose to fill out the following fields (like fields for the two-step campaign):

Attribute Parameter

Attribute Report Title

If you selected a three-step response > lead > conversion campaign type, and you are launching a tagless lead

campaign, you must fill out the Lead Trigger field.

Page 95: Hitbox Installation Guide

|Page 83

For a tagless campaign, you may also fill out the fields listed above, as well as select either Use Non-Specific

Campaign Conversions or Assign Specific Conversions. The default selection is to Use Non-Specific Campaign Conversions.

Note If you have not created a global conversion, HBX indicates that no global conversions have been defined. Read more about defining the conversion event and creating conversions.

Note If you enter information for the lead event, but not for the response and/or conversion event(s), HBX

considers the campaign a mixed tagless/tagged campaign. This means that the lead event is based on lead

designation criteria you enter in the text box and using the lead trigger dropdown menu. Keep in mind however that: (1) in the absence of a specified response trigger in Step 2, HBX only registers a response to the lead

campaign if a visitor triggers the response by landing on a page where hbx.cmp="<lead-campaign-ID>"; is defined, or if a visitor clicks a URL containing &CMP=<lead-campaign-ID> ; (2) in the absence of a specified conversion trigger in Step 2, HBX only converts the lead campaign if a visitor triggers the conversion

by landing on a page where hbx.gp="LAST"; is defined, or if the visitor clicks a URL containing &GP=LAST.

After creation, any tagged or tagged campaign may be changed by editing the campaign to a mixed tagless/tagged

campaign. To change a tagged campaign to a mixed one, specify criteria for the Lead Trigger. To change a tagless campaign to a mixed one, remove Lead Trigger information (change the dropdown menu to [Select] and clear the adjacent text box).

Note also that, regardless of implementation of the campaign (tagged, tagless, or mixed tagless/tagged), you must define a way for responses to feed a tagless lead campaign. This involves specifying that 1) the response is defined in the Response Trigger section (that is, a tagless response), or 2) the response is triggered when a visitor lands on a page where hbx.cmp=" <lead-campaign-ID>"; is defined, or clicks a URL containing &CMP=<lead-campaign-ID>.

COMMON FIELDS TO TAGGED AND TAGLESS CAMPAIGNS

Attribute Report Title. (Optional) Enter the label or title for the custom attribute report, up to 20 alphanumeric characters. The title you enter must conform to character size and character types

described in Illegal Characters. If you enter no title here, HBX displays the default title Attribute

on the Attribute tab in the Campaign Response drilldown. For keyword network campaigns, the

attribute label automatically defaults to Keyword.

Attribute Parameter. Enter the (optional) response attribute parameter. Read this section on attribute parameters. Like the value of the response attribute parameter (hbx.hra or hbx.hra) defined in the HBX page code, the response attribute parameter you enter here is the name in a name=value pair that is sent in the URL query string when using the on-line campaign implementation method. Thus name corresponds to the response attribute parameter, while value corresponds to the value of the response attributes (like values you currently assign to the hbx.hra variable). Any value of the parameter entered must conform to character size and character types described in Illegal Characters. Note that the value of a response attribute parameter you enter in the response event section replaces the value of any response attribute parameter defined in the HBX page code. Suppose that for page deepfreeze.htm, you define hbx.hra="_P::cold"; in the HBX page code for a regular (tagged) campaign you created some time ago. Suppose also that you create another (tagless)

campaign called Chilly that uses deepfreeze.htm as the response page. In this campaign, you

want to track the response attribute below_zero. When you create the Chilly campaign, you

enter icy in the response attribute parameter box. To track responses to the response attribute with

Page 96: Hitbox Installation Guide

|Page 84

the on-line method, use a query string containing &icy=below_zero. Because you entered a response attribute parameter when creating the Chilly campaign, HBX now looks for a response parameter with the string &icy= instead of &cold=. But note that if you do not enter a response

attribute parameter when creating the Chilly campaign where deepfreeze.htm is the response page, HBX will look for the string &cold= when tracking the response attribute.

Note You can now specify a lead attribute parameter when creating tagless lead campaigns. When you enter a

value in the attribute parameter field of the lead information section of Step 2, you are specifying the name of the name=value pair that is sent in the URL query string when using the on-line campaign implementation method. Thus name corresponds to the lead attribute parameter, while value corresponds to the value of the lead attribute (like values you currently assign to the hbx.hla variable). Any value of the parameter entered must conform to character size and character types described in Illegal Characters.

Response Expiration: Use the text box and checkbox to enable (optionally) a variable turnover campaign or a one-time campaign for a particular visitor. Note that this checkbox and textbox for modifying campaign expiration or response expiration dates in the Campaign Administration page only applies to static campaigns.

In the context of a campaign, turnover here refers to the amount of time that campaign response information is kept on a visitor's cookie. For a given time range, a high turnover campaign will indicate a greater number of repeat responses if the respondent interacts repeatedly with the campaign. By contrast, a low turnover campaign will show a greater number of new responses if the respondent interacts repeatedly with the campaign over the same time period.

If you want HBX to process campaign response data using the high turnover campaign model, enter a small number of days (one day or more) in the

Responses Valid for __ days box. HBX will then expire a visitor's response data for a particular campaign in a relatively few number of days. This allows the visitor to be registered once again as a new respondent during the next visit to the campaign. If, on the other hand you wish to minimize turnover of respondents, enter a greater number of days in the text box, or simply do not enter a number in the text box.

Another implication of a high turnover campaign is that a respondent has a limited time to convert to the campaign. If the campaign specifies high turnover, the respondent must land on the goal page or otherwise convert the campaign before the campaign response recorded on the cookie expires.

A one-time campaign indicates that HBX removes information about the campaign from the

cookie once the respondent has converted. If you check the Expire Responses upon

Conversion option, and if the visitor converts a campaign multiple times, HBX will register more New Conversions but fewer Repeat Conversions for a particular campaign.

By contrast, leaving the Expire Responses upon Conversion option in its default unchecked state means that HBX shows more Repeat Conversions and fewer New Conversions for a particular campaign for a given campaign converter.

Expiration dates for dynamic campaigns. An expiration of responses to a dynamic campaign or an expiration of the dynamic campaign can be specified by:

modifying the HBX page code (landing page method)

sending an expiration date in the URL query string (on-line method)

Page 97: Hitbox Installation Guide

|Page 85

Classification Parameters Enter a value in this field parameter to associate with the classification scheme applied to the campaign. If you entered default values for the parameter when creating the campaign classification scheme, HBX displays those defaults here. You can accept the default value for the parameter, or you can enter another parameter for any of the ten classifications. Any value of the parameter entered must conform to character size and character types described in Illegal Characters.

Tagless Campaigns

Because you do not need to modify the HBX page code, purely tagless campaigns are generally easier and quicker to implement than tagged campaigns. You do however need to define some basic criteria so that HBX can track a tagless campaign. Criteria include information on the response event, the lead event (if a tagless lead campaign), and conversion information. Refer to the examples of tagless response > conversion and tagless response > lead > conversion campaigns.

Design Considerations for a Tagless Campaign

A tagless campaign follows the same discrete logical design principles as the tagged campaign. In particular, HBX expects that for a two-step campaign, the response event (tagless) or response page (tagged) and the conversion event (tagless) or goal page (tagged) are separate events (or pages). If the response and conversion trigger for a campaign refers to the same event (the same page, the same referring URL, the same link ID, and so forth), HBX will not be able to distinguish which event trigger to process first. If you try to base response and conversion triggers on the same event, HBX will produce unexpected results. For this reason, it is important to make event triggers as distinct as possible. The same principle extends to triggering a lead and a conversion by the same event.

With the tagless campaign in mind, read more about Implementation: Designing Tagged Campaign Pages to Acquire and Convert Visitors.

If at any point in the tagless campaign creation process, you do not define one of these events, then the campaign becomes a mixed tagless/tagged campaign. You must then incorporate campaign information code either on your pages or in URL query strings for triggering responses, lead designations, or conversions in the mixed campaign.

Note Page names and URLs in tagless campaign criteria are case-sensitive.

Response Event

For HBX, the response event is triggered when a visitor satisfies criteria involving a URL, page/file name, or link ID. Criteria you specify from the dropdown menu include:

Page URL contains

Referring URL contains

Entry Page Name equals (page name is short for complete page name, that is, Content group/page Name)

Page Name equals

Link ID equals

The information you enter in the text box after the dropdown criteria menu completes the definition of the response event. In the case where the criteria specifies "equals", the entry in the text box must exactly match, while criteria specifying "contains" require only a partial match to the text box entry. When selecting content

groups or page names currently tracked by HBX, you may click the icon on the right side of the text field. When you click on the icon, a browser window pops up allowing you to enter search criteria. Read more about the HBX Search Utility.

Page 98: Hitbox Installation Guide

|Page 86

Possible values of the value entered for the text box include:

a URL (the partial value of either the URL of the page landed on, or the URL that referred the visitor, or the URL of the last page viewed by the visitor before leaving your site), such as www.yourtown.com or google or &HCR=OTC-2050)

a page name (the value assigned to the hbx.mlc and hbx.pn variables, such as

/welcome/introduction, or the complete page name itself : /welcome/introduction.htm)

a link ID (the value assigned to the lid variable when you enable link tracking on your Web pages, such as catalog_page).

To define the response event, determine how HBX recognizes when a response has occurred by selecting criteria from the dropdown menu and entering an appropriate value in the text box. The entries in the text box must conform to character size and character types described in Illegal Characters.

Lead Event

For HBX, the lead event is triggered when a lead campaign respondent satisfies criteria involving a URL, page/file name, or link ID. Criteria you specify from the dropdown menu include:

Page URL contains

Page Name equals (Page name is short for complete page name, that is, Content group/page Name)

Link ID equals

Download (file name) equals

The information you enter in the text box after the dropdown criteria menu completes the definition of the lead event. In the case where the criteria specifies "equals", the entry in the text box must exactly match, while criteria specifying "contains" require only a partial match to the text box entry. When selecting content groups or page

names currently tracked by HBX, you may click the icon on the right side of the text field. When you click on the icon, a browser window pops up allowing you to enter search criteria. Read more about the HBX Search Utility.

Possible values for the text box include:

a URL (the partial value of the URL of the last page viewed by the visitor before leaving your site, such as www.yourtown.com/offer.htm or yourtown.com/offer or google or &HCR=OTL-205025)

a page name (the value assigned to the hbx.mlc and hbx.pn variables, such as

/welcome/introduction, or the page name itself : /welcome/introduction.htm)

a link ID (the value assigned to the lid variable when you enable link tracking on your Web pages, such as catalog_page)

the name of a downloadable file (where the value corresponds to a file downloaded from your site, such as button.jpg or welcome.fla).

To define the lead event, determine how HBX recognizes when a lead designation has occurred by selecting criteria from the dropdown menu and entering an appropriate value in the text box. The entries in the text box must conform to character size and character types described in Illegal Characters.

Special restrictions when defining response or lead triggers

Normally, HBX can process any string values entered as response or lead triggers, as long as they contain no illegal characters. HBX cannot however handle certain strings such as those listed in the Gateway Variables column.

Page 99: Hitbox Installation Guide

|Page 87

Some values are case-sensitive when entered in the response or lead triggers field. Note for example that a

response or lead trigger containing cmp=OTC-3128283 is valid, while a response or lead trigger defined as

Page URL contains CMP=OTC-3128283 is invalid as a response or lead trigger.

Because CMP and DCMP are reserved identifiers used to respond to campaigns in the context of the HBX page code, they are not appropriate when defining response or lead triggers.

In addition, if you have defined hbx.dcmp="_P::<query_string_parameter>"; or hbx.cmp="_P::<query_string_parameter>"; in the HBX page code, do not use <query_string_parameter> as response or lead triggers for a campaign in Step 2 of the campaign administration page.

For example, if the HBX page code has the definition hbx.cmp="_P::FIRST"; you cannot build a response

or lead trigger such as Page URL contains FIRST. Similarly, if the HBX page code is defined so that

hbx.dcmp="_P::dyna1"; you cannot create a response or lead trigger containing the string dyna1.

In this case, HBX gives preference to the value of the portion appended to the shortcut notation _P:: and assigned to the hbx.cmp or hbx.dcmp variables. If the string value is the same as the string value you are entering for a response or lead trigger, HBX ignores the response or lead trigger.

Conversion Event

For HBX campaigns, the conversion event is triggered when a campaign respondent (or lead campaign designate) satisfies rules specified in a custom-defined conversion. Read this section about creating a custom-defined conversion. While conversion events may also be triggered by other kinds of actions tracked by HBX (such as internal searches and link tracking), the conversion event you specify here is associated uniquely with the campaign.

Note You must first create a custom-defined conversion before defining a conversion event for a campaign. click the link Manage Conversions in the Conversion Information section to open the Conversion Administration page, where you can then create custom-defined conversions. If you have already created a custom-defined conversion, you can review definitions for current conversions.

Note that you do not need to create a custom-defined conversion before finishing the campaign. If you don't create a conversion rule and associate it with the tagless campaign, HBX will convert the campaign only if the visitor lands on a page containing a goal tag or clicks on a URL query string containing goal information.

HBX displays which custom-defined conversions are available for this campaign in the box at the bottom of step 2. Any conversion created in the conversion administration page without changing any of the default selections in the Advanced Settings tab (all unchecked options) is a global conversion. To accept the global conversion, select

Use Non-Specific Campaign Conversions.

If instead you wish to associate the campaign with specific conversion rules that you have already established,

select the Assign Specific Conversions. When this option is selected, two list boxes appear at the bottom of step 2.

One list box contains Stored (or Available) Conversions

The other list box contains Conversions for this campaign.

Conversions listed in the Stored Conversions list box show all conversions created in the conversion administration page, where the checkbox Convert only specified campaigns in the Advanced Settings tab is selected. To associate a campaign with a particular conversion rule, select the conversion rule in the Stored Conversions box and either double-click it, or click the > button to move it to the Conversions for this Campaign box.

Page 100: Hitbox Installation Guide

|Page 88

Note If you select specific conversions to associate with the campaign, and then decide not to use specific conversions for the campaign, but simply a global campaign conversion, you must first dissociate the specific conversion from the campaign by moving it from the Conversions for this campaign list box to the Stored Conversions list box. Once no more conversions appear in the right list box, then you can once again select the

Use Non-Specific Campaign Conversions option.

Read about other options available in the Advanced Settings tab of the Conversion Administration page.

FINISHING THE CAMPAIGN CREATION

When you are satisfied with all the information entered for Step 1 and Step 2 for the new campaign, click the

Finish button. A prompt dialog will appear informing you that HBX will create the campaign. The page refreshes, and you now see the new campaign you created in the table listing Current Campaigns.

At any point before clicking Finish to finalize the campaign, you can edit information or redefine campaign

parameters. Use the < Back or Next > buttons to make changes in either Step 1 or Step 2. If you already created the campaign, you can edit most of the campaign information.

When you click the Finish button to finish creating a Salesforce.com campaign, a window will pop-up asking you to authenticate your Salesforce.com user name and password. Once your account has been verified, the campaign will be created.

New static campaigns that you have added to your campaigns list will not be displayed by HBX until after

midnight (your local time) of the day the campaign was created. While data for new dynamic campaigns is displayed as soon as the first response is recorded by HBX, the dynamic campaign (like the static campaign) does not appear in the campaign summary list until after midnight (your local time) of the day the campaign received its first response. If for example you create a static campaign and set it to start the next day, the soonest the HBX would display data and listing information about that campaign would be 12:01 AM the following day.

EXAMPLE OF CREATING A TAGLESS TWO-STEP CAMPAIGN

Suppose you wish to track, via a tagless campaign, visitor interaction with a perfume promotion campaign called Charley. You want to know that the visitor lands on the response page (scratchnsniff.htm). After the visitor lands on the page, you want the campaign to convert according to rules that you create.

Suppose also that you have created a special conversion rule (called FragrantLanding) that says the campaign will

convert when page name equals sweet.htm

the value of the conversion will be 30.00

a response is required to convert this campaign

To create this tagless two-step campaign:

Enter information in Step 1 about the campaign just as you would when creating a tagged campaign. Review the kinds of information you can add in this section.

In the response information section of Step 2, select Page URL contains from the dropdown menu of Response Trigger.

Enter the value scratchnsniff.htm in the text box of Response Trigger.

Enter the value Scents in the Attribute Label box. (If you don't enter a value here, HBX displays the default value Attribute in campaign reports containing response attribute information.)

In the conversion information section of Step 2, check the Assign specific conversions box.

Double-click on the conversion FragrantLanding that appears in the Stored Conversions list box. The conversion should now be listed in the Conversions for this campaign list box.

Page 101: Hitbox Installation Guide

|Page 89

Click Finish to finalize the campaign.

Review the information you entered for the campaign by selecting the campaign in the table of current campaigns and clicking Edit.

EXAMPLE OF CREATING A TAGLESS LEAD CAMPAIGN

Suppose you wish to track, via a tagless lead campaign, visitor interaction with both the response and lead designation pages of a gourmet coffee drinker prospecting campaign called Twobeans. You want to know that the visitor was referred by a sponsored link in a search engine (as evidenced by the &ssmoka=twobeans_google in the referring URL), and that the visitor submitted a form (drinksurvey) on the lead designation page. Once landed on the page, you also want the campaign to convert according to rules that you create.

Suppose also that you have created a special conversion rule (called Enrolled) that says the campaign will

convert when page name equals confirmation.htm

the value of the conversion will be 10.00

a response is required to convert this campaign

To create this tagless lead campaign:

Enter information in Step 1 about the campaign just as you would when creating a tagged campaign. Review the kinds of information you can add in this section.

In the response information section of Step 2, select Referring URL contains from the dropdown menu of Response Trigger.

Enter the value ssmoka=twobeans_google in the text box of Response Trigger.

Enter the value Mochaccino in the Attribute Label box. (If you don't enter a value here, HBX displays the default value Attribute in campaign reports containing response attribute information.)

In the lead information section of Step 2, select Form Submit equals from the dropdown menu of Lead Trigger.

Enter the value drinksurvey in the text box of Lead Trigger.

In the conversion information section of Step 2, check the Assign specific conversions box.

Double-click on the conversion Enrolled that appears in the Stored Conversions list box. The conversion should now be listed in the Conversions for this campaign list box.

Click Finish to finalize the campaign.

Review the information you entered for the campaign by selecting the campaign in the table of current campaigns and clicking Edit.

Campaign Classification and Campaign Hierarchy

Campaign classification is a method to

add specific response data to a campaign and

group multiple HBX and salesforce.com campaigns by response data

A well-designed campaign classification scheme allows you to collect campaign-specific data passed to HBX as a result of a visitor's interaction with an element of the Web page, without requiring extensive implementation. Once you design a campaign classification with data-appropriate labels, and implement the classification in your campaigns, you can group similar classification data for one or more campaigns. You then create a report in the Campaign Hierarchy (or Salesforce.com Campaign Hierarchy) report that groups campaigns according to your classification scheme. You can also save this view of the campaign hierarchy report.

Page 102: Hitbox Installation Guide

|Page 90

Note Campaign hierarchy reports display data only when:

1. A visitor lands on a campaign response page for the campaign, where the campaign event is defined in tags on the page or 2. A visitor's action meets criteria (such as a link click event, a page view, a download, and so forth) defined in the response trigger in step 2 of Create Campaign in the Campaign Administration page which causes campaign classification data to be passed to HBX . and

-- classification data is part of the campaign response For details on implementing the campaign hierarchy and classification, refer to Tracking Campaign Classification.

Default Parameter for Campaign Classifications

Enter a string in the default parameter field as a convenient method to populate the parameter associated with a classification when creating a campaign. Then you can later associate a Campaign Classification value with the parameter you wish to pass in the response page with HBX page code, or in the URL query string for a campaign response where response is triggered by a visitor's action defined in step 2 of Create Campaign in the Campaign Administration Page.

For example, if your Campaign classification label is Region, enter a string such as zone as the default parameter. If you do not enter a string here, the associated Classification Parameter field in step 2 of Create Campaign in the Campaign Administration Page is initially blank for that classification.

When you define a default parameter, that default parameter is pre-populated for the classification parameter field in step 2 of Create Campaign in the Campaign Administration page. If you do not enter a string here, the associated Classification Parameter field in the Campaign Administration Page is initially blank for that classification.

Example of Campaign Classification

Suppose you send email via a separate marketing service. Suppose also that the service creates unique IDs for each mailing, and that classification information is contained in a URL in the body of the email. If you set the

response trigger to Page URL contains and include a classification parameter-value pair you know will always be present in the URL such as the ID of the email, HBX will register a response to a visitor's click of the URL as well as pass the classification information.

In the campaign administration page, click Classifications. The Classifications screen opens. Enter the name

of the classification (such as Location) in the first field, and a parameter name (such as region) in the adjacent field. Click Save Changes.

HBX uses the classification name in the campaign hierarchy report to group campaigns by their classification data, if present. You can pass campaign classification data to HBX by associating a value with a campaign's defined classification parameter.

In your HBX email campaign, set the criteria for the response trigger to the email ID. Arrange for the third-party email service to code a URL in the email that specifies a value for the region parameter. When a visitor responds to the email by clicking on a URL such as http://www.holistiquehealth.com/contactus.jsp?cmp=Email05578&region=California, HBX does the following:

registers a response to the HBX email campaign and

increments the value California grouped under the Location classification

Page 103: Hitbox Installation Guide

|Page 91

In the campaign hierarchy report, you can examine the performance of a campaign's classifications via the Group

by dropdown menu. You can also display more detail about a campaign's classifications in this report by selecting a classification from a line item drilldown in the summary table.

Note Campaign classification applies to responses to two-step HBX campaigns (response > conversion),

salesforce.com campaigns, and three-step HBX campaigns (response > lead > conversion), regardless of implementation method: tagged or tagless. Campaign classification however does not apply to the OKC-Campaign. Because the OKC-Campaign cannot be edited, campaign classifications are not available.

Campaign classification versus campaign response attribute or lead attribute

Because you can associate specific values with HBX and salesforce.com campaigns using campaign attributes, the campaign classification is similar in function to the campaign attribute (response or lead attribute). The classification is like the attribute because for both you can pass values in either the HBX page code or via the URL query string. The classification is unlike the attribute because you can build and save a report based on one or more campaign classification labels. HBX does not allow you to structure campaign reports by campaign attribute.

Only one campaign attribute exists for response, but HBX provides ten campaign classifications for response. This allows you to group any campaign by its classification simply by associating a value in the URL query string with the parameter for the campaign response.

Finally, the campaign classification is like the response attribute because it collects data upon a campaign response. While you do not associate a campaign classification with the conversion event, you can track conversion attributes (goals) for a campaign that already has classification response data. HBX does not collect classification data from lead designation pages.

Create or edit a campaign classification and classification (default) parameter

To create a campaign classification and classification (default) parameter for new campaigns

In the campaign administration page, click Classifications.

Enter the name of a category or classification which you wish to group campaigns by in the first field.

Optionally enter a value for a default parameter in the adjacent field.

Click Save Changes.

You can create up to ten campaign classifications. It is recommended that you give unique but generic names to these categories so that you can distinguish between them later. Pick a generic name that can apply to one or more values that you wish to associate with the campaign. The classification name you enter must conform to character size and character types described in Illegal Characters.

To edit or clear a campaign classification or classification parameter

In the campaign administration page, click Classifications.

Enter your changes by overwriting (clearing) or appending to the text in the Classification Name

or Classification Parameter fields.

Click Save Changes.

If you saved a Campaign Hierarchy report containing a classification name which you edit in this page, the saved report is updated with that change.

Note about clearing a campaign classification

Page 104: Hitbox Installation Guide

|Page 92

When you clear a campaign classification name, HBX removes that classification name from any saved campaign hierarchy report. Once deleted, the name displayed in the saved report's breadcrumb description for the cleared

classification is Not Available. When you delete the name of a defined classification, that classification also

becomes unavailable as a filter in the Group By dropdown menu and as a line item drilldown for campaigns listed in the summary table for the Campaign Hierarchy report.

To edit classification parameters for a campaign

In the campaign administration page, select the campaign whose parameters you wish to modify. Then click Edit.

Click Next>>. Enter your changes by overwriting or appending to the text in the Classification

Parameter field.

Click Finish.

Note If you clear the response trigger information in step 2 of Create Campaign in the Campaign Administration Page by choosing [Select] from the dropdown menu, HBX disables the classification parameters for the campaign.

Editing Active Campaigns

You may edit any of the information for an active campaign, except for the campaign ID, type, and category, and as long as you make those changes prior to midnight your time on the final day of the campaign. To edit a campaign, select the radio button next the campaign listed in the table, and then click the Edit button. The Edit Campaign window is displayed, where you can make changes to the campaign, in Step 1 or Step 2. Any changes must conform to character size and character types described in Illegal Characters. Click the Finish button to save your changes.

For example, if you have an active campaign that is set to end on 12/25/03 and you want to extend that campaign to 01/01/04 you can change the end date from 12/25/03 to 01/01/04 as long as you make that change prior to midnight, local time, on 12/25/03.

Editing Dynamic Campaigns

After HBX receives the first response for a dynamic campaign, the campaign is registered. You may edit any of the information for a dynamic campaign, except for the campaign ID, type, and category. You should fill in information about the dynamic campaign anytime after midnight of the day it begins receiving responses, so you can adjust settings for ROI information (cost value and conversion value). Any changes must conform to character size and character types described in Illegal Characters.

Neither start nor end dates are editable for dynamic campaigns in the Campaign Administration page. Note that when uploading a dynamic campaign before HBX receives a response for it, the start date for the campaign in the administration page will be empty. You may however specify an expiration date for a dynamic campaign.

If you change a campaign description, or its cost or conversion models, those modifications cascade retroactively through all your historical data, back to the time when the campaign first became active. For example, if you create a three-month campaign called Holiday Promotion on December 1, 2003, and then change that campaign description to Winter Promotion on February 15, 2005, all data that you view about that campaign back to its creation on December 1 lists the campaign description as Winter Promotion. Likewise, ROI data for this Winter Promotion campaign will be reflected in changes you made to the cost or conversion models.

Archiving Campaigns

Tip

Page 105: Hitbox Installation Guide

|Page 93

Campaigns for which you no longer wish to see information displayed in the campaign summary page can be archived. You may archive any kind of campaign: active, dynamic, expired, tagged, or tagless. Archived campaigns are listed based on category (e-mail, banner ad, and so on) and the number of completed campaigns within each category. You must choose to archive a campaign since HBX does not automatically archive campaigns. Remember that any campaign you archive can also be unarchived.

To archive a campaign:

Select the radio button next to the campaign ID and click the Archive button. A message is displayed asking you to confirm you want to archive the campaign.

When the screen refreshes, the campaign is removed from the list of current campaigns and moved into the folder of the campaign's category in the Archived Campaigns tab in the Campaign Administration page.

Unarchiving Campaigns

Unarchiving is essentially the reverse of archiving a campaign. Unarchive a campaign you wish to make available in the list of current campaigns

To unarchive a campaign:

Click the campaign category folder in the list of Archived Campaign categories. A popup Archived Campaign window opens with a list of archived campaigns for that category.

Select the radio button next to the campaign you wish to unarchive and click the Unarchive button. A message is displayed asking you to confirm you want to unarchive the campaign.

The campaign is moved back to the Current Campaigns list.

Exporting and Importing Campaigns

The export and import campaign feature allows you to create, review, update, and manage many campaigns at one time. You can use the campaign export feature with HBX campaigns or with campaigns originally created by a third-party campaigns management tool. You may also import daily cost definition files to add or change the daily costs of a campaign. Currently the export/import feature is only available for tagged campaigns.

Export refers to downloading files from HBX to your local machine, while import is the opposite:

uploading files from your local machine to HBX.

Page 106: Hitbox Installation Guide

|Page 94

While information for HBX campaign files is structured in a simple comma-separated values format, perhaps the easiest approach to using the campaign data transfer feature begins with importing and studying data from selected campaigns. Once you compare the information presented in the file with the information presented in the HBX HTML interface, and you review the chart listing all the required and optional campaign fields used by HBX, you are then ready to export new campaign definitions, update current campaign data, or update daily cost information for established campaigns.

While you cannot export or import campaign definition files to create Salesforce.com campaigns, you can export daily cost definition files for Salesforce.com campaigns.

Exporting Campaigns

Campaign information collected by HBX is exportable (downloadable) in a comma-delimited file for any campaigns that have not been archived, including expired campaigns. The daily cost data, if available, is also exportable. Daily cost data is available only if you have defined the campaign's cost model as Daily cost.

There are two ways to export campaigns: by single campaign or for all campaigns. To export a single campaign, select the radio button next to the campaign ID listed in the campaign summary page, and click the Export Campaign button. Specify the file name and location.

To export all campaigns, click the Export All Campaigns button and then specify the file name and location. Note that archived campaigns are not included when you export all campaigns

Importing Campaigns

To import campaign or daily cost files, click the Import Campaigns button. A popup is displayed so you can specify the file to import. Enter the complete path where the campaign file is located and click the Import button. You may also click the Browse button to locate the file. A message appears after the import process has completed notifying you of the success or failure of the import.

In general, import failure messages explicitly identify the lines of the campaign or daily cost definition file causing the error. Occasionally, a more generic error message will appear, without identifying the lines causing the complaint.

If more than five errors are found during the import, the last line of the message indicates the number of additional errors. You will then need to debug the file, making sure that:

the file format correctly lists required fields in sequence

no illegal characters appear

each row of data is a unique entry

the campaign ID is valid (for already defined campaigns)

the campaign start date is valid

for new campaigns, a valid date is any date in the future.

when updating existing campaigns, a valid date can be the same as the start date currently stored in the campaign, regardless of whether the currently stored date is a date occurring in the past

Guidelines for Creating the Campaign Import file

For both the campaign and daily cost definition files, character restrictions outlined in the Illegal Characters section must be followed.

Tip

Page 107: Hitbox Installation Guide

|Page 95

Files must be in comma-delimited format (csv), where each line of the file represents a unique data entry for the campaign.

Each row of data is followed by a carriage return. For files created in Windows systems, an extra line feed character following the carriage return is ignored.

The total number of lines in the campaign and daily cost definition files cannot exceed 1000 lines.

Ensure that each line of data in these files is unique. An error message appears alerting you about redundant lines in the csv file if each data line is not unique.

You can create a campaign definition and import daily cost records for the newly created campaign, only if the lines defining the campaign appear in the same file.

By contrast, if you are only updating costs for an existing campaign via bulk importing, no campaign records need be present with the cost records.

Read below about a special field that extends the campaign import feature to enable archiving and controls display and export of campaigns.

CAMPAIGN DEFINITION FILES

Campaign definition files have 11 fields, with only one required field. Read more about details of the different fields here.

If you import two different campaign definition files for the same campaign, one after the other, make sure that the data entered in the optional fields the second time does not overwrite or reset values you entered in the initial campaign definition import. See example below.

ONE-LINE EXAMPLES OF A CAMPAIGN DEFINITION FILE:

AFL-342SDFS3242,05/20/2003,05/25/2003,,,Memory,DC,,,AV,45.65

AFL-342SDFS3242 identifies the campaign (in this case an affiliate lead campaign AFL-)

05/20/2003 is the start date for the campaign

05/25/2003 is the campaign's end date

Memory is the optional name defined for the Response Attribute Label

DC is the abbreviation for the (optional) Daily Cost cost model

AV indicates a campaign calculated with (optional) Average conversion value

45.65 is the average conversion value for the campaign, using a two-digit precision floating point decimal

Four optional values (Creation Type, Description, Cost Factor, Audience Size) are null. They have the entry ,,

ILC-111111,,,””,,,,DC,,,,

ILC-111111 is the ID for a conventional internal link campaign

All of the other fields are null, except for the Creation Type field, which is set to "". When a field is marked by a pair of double quotes with no intervening space ,"", this indicates to HBX to use the default value for the field. For the Creation Type field, the default value is S , for Static (that is, a non-dynamic campaign).

ILC-111111,,,””,,,,TC,,,,

If later you decide to update the ILC-111111 campaign (defined in the preceding example) by modifying the cost model to Total Cost, you can no longer view daily cost information for the campaign. This information is available only for Daily Cost model campaigns via the 'View Daily Cost Values' button when editing a specific campaign or in the campaign drilldown view

Because HBX sets defaults values for optional fields marked with "", the data row

Page 108: Hitbox Installation Guide

|Page 96

ILC-111111,””,””,””,””,””,””,DC,””,””,”” is equivalent to ILC-111111,<current_date>,<no_end_date>,S,””,”Attribute”,TC,DC,0,AC,0

where <current_date> and <no_end_date> refer to today's date and a null end date, respectively

In the case of a keyword advertising network campaign, the data row (in a daily cost definition file)

KNC-101010,””,””,””,””,””,””,DC,””,””,”” is equivalent to KNC-101010,<current_date>,<no_end_date>,S,””,”Keyword”,TC,DC,0,AC,0

where <current_date> and <no_end_date> refer to today's date and a null end date, respectively, and "Keyword" is the default name for the campaign's response attribute.

Because dynamic campaigns have no end date, the Start and End Date fields are ignored. If you create a dynamic campaign by bulk importing, and specify a start or end date, an error appears.

Note that you cannot specify the expiration of campaign responses or expire campaigns upon conversion via bulk importing.

SPECIAL ARCHIVE BIT FOR CAMPAIGNS

In case you generate a large number of campaigns and wish to control the display and export of these campaigns, you can set an optional parameter in the campaign definition file. The parameter has two possible values: A and U

If you import a campaign definition file containing a campaign that is currently available in the campaign administration page (also listed when exporting the campaign definition file) and you specify the A value for the archive bit field, the campaign is considered archived. Archiving a campaign in this manner means that its data is no longer available for export, and the campaign is displayed only in the archive folders on the administration page. Note that a campaign that has not reached its end date (if applicable) may still collect data while archived.

If you import a campaign definition file containing a campaign that was previously archived and specify the U value for the archive bit field, the campaign will once again be made available for export, and will be displayed in the campaign administration page instead of in the archived campaign folders.

If you decide to archive one or more campaigns through importing an updated campaign definition file, you must make a backup copy of the file in case you later want to unarchive a campaign.

Suppose you have a campaign definition file containing the following campaigns

EMC-6060842,10/17/2003,05/02/2003,D,E-mail campaign,HTML,CPA,20.12,,AV,15.65

EMC-8765409,10/17/2003,11/03/2003,D,E-mail campaign,HTML,CPA,20.12,,AV,55.15

If you wish to archive both campaigns, import the file with the following changes:

EMC-6060842,10/17/2003,05/02/2003,D,E-mail campaign,HTML,CPA,20.12,,AV,15.65,A

EMC-8765409,10/17/2003,11/03/2003,D,E-mail campaign,HTML,CPA,20.12,,AV,55.15,A

Now, the next time you export the file, neither of these campaigns will appear in the campaign definitions file. Keeping a backup of the original campaign definition file is essential to restoring these archived campaigns.

The following definitions will cause these campaigns to be restored (unarchived):

EMC-6060842,10/17/2003,05/02/2003,D,E-mail campaign,HTML,CPA,20.12,,AV,15.65,U

EMC-8765409,10/17/2003,11/03/2003,D,E-mail campaign,HTML,CPA,20.12,,AV,55.15,U

UPDATING A CAMPAIGN DEFINITION FILE

On 5/21/2003, you create an email campaign with the following (partial) campaign definition file:

EMC-6060842,05/17/2003,05/21/2003,D,E-mail campaign,HTML,CPA,20.12,,AV,15.65

On 5/22/2003, you import the following (partial) campaign definition file, modifying some values:

EMC-6060842,05/17/2003,05/21/2003,D,E-mail campaign,HTML,"",20.12,,AV,18.00

Notice that the cost model has been reset to the default value by "" (The default is the total cost model.)

Page 109: Hitbox Installation Guide

|Page 97

On 5/23/2003, you update the campaign definition with the following:

EMC-6060842,05/17/2003,05/21/2003,D,Inhouse e-mail,HTML,"",20.12,,AV,18.00

You only changed the description used for the campaign to "Inhouse e-mail".

DAILY COST DEFINITION FILES

Campaign definition files have three fields, all required. Read more about details of the different fields here.

If any campaign ID contains a comma, then the value must be escaped by quotation marks. For example, if the campaign ID you use for your affiliate lead campaign is AFL-342,MSNBC324, you must enter it as ,"AFL-342,MSNBC324",

ONE-LINE EXAMPLE OF A DAILY COST DEFINITION FILE:

AFL-342SDFS3242,05/20/2003,40.12

AFL-342SDFS3242 identifies the campaign (in this case an affiliate lead campaign beginning with prefix AFL-)

05/20/2003 is the date associated with the campaign cost

45.65 is the day's cost for the campaign, using a two-digit precision floating decimal

Do not leave any fields blank in a daily cost definition file

CAMPAIGN DEFINITION FILE FIELD SUMMARY

FIELD NAME VALUES EXAMPLE OPT/REQ'D

CAMPAIGN ID

UP TO 28 ALPHANUMERIC CASE-SENSITIVE CHARACTERS FORMAT: <2 LETTER PREFIX><TYPE: C OR L>-<ALPHANUM ID>

AFL-20381 (LEAD AFFLILIATE CAMPAIGN)

EMC-3025 (CONVENTIONAL EMAIL CAMPAIGN)

REQUIRED

CAMPAIGN TYPES: C - CONVENTIONAL L - LEAD

CAMPAIGN CATEGORIES: AF – AFFILIATE BA – BANNER AD CA – CLASSIFIED AD DM – DIRECT MAIL EM – E-MAIL IL – INTERNAL LINK KA – KEYWORD AD

KN – KEYWORD NETWORK LE – LINK EXCHANGE NL – NEWSLETTER OT – OTHER PA – PRINT AD RA – RICH MEDIA AD

SP - SPONSORSHIP

START DATE NOT VALID FOR DYNAMIC CAMPAIGNS FORMAT: MM/DD/YYYY DEFAULT: CURRENT DATE

12/31/2003 REQUIRED FOR STATIC CAMPAIGNS

END DATE NOT VALID FOR DYNAMIC CAMPAIGNS FORMAT: MM/DD/YYYY DEFAULT: NO END DATE

11/10/2005 OPTIONAL FOR STATIC CAMPAIGNS

CREATION TYPE (DEFINES HOW THE CAMPAIGN IS CREATED)

D – DYNAMIC S – STATIC DEFAULT: S

D OPTIONAL

DESCRIPTION UP TO 30 CHARACTERS DEFAULT: ""

INHOUSE E-MAIL OPTIONAL

RESPONSE ATTRIBUTE LABEL

UP TO 20 ALPHANUMERIC CHARACTERS DEFAULT: "ATTRIBUTE" (FOR ALL NON-KEYWORD NETWORK CAMPAIGNS) DEFAULT: "KEYWORD" (FOR KEYWORD NETWORK CAMPAIGNS)

ZOOM-LEVEL OPTIONAL

COST MODEL TC – TOTAL COST DC – DAILY COST

CPC – COST PER CLICK CPM – COST PER

CPC OPTIONAL

Page 110: Hitbox Installation Guide

|Page 98

CPA – COST PER ACQUISITION

THOUSAND DEFAULT: TC

ALGORITHMS FOR CALCULATING COST MODEL, WHERE CF = COST FACTOR OF CAMPAIGN DEFINED IN COST FACTOR FIELD TOTAL COST = CF (NO OTHER CALCULATION APPLIED) DAILY COST (COST VALUES EXPORTED VIA CSV FILE) (FOR CPA) COST = CONVERSION/DAY*CF (FOR CPC) COST = RESPONSES/DAY*CF (FOR CPM) COST = IMPRESSIONS/1000*CF (CPM REQUIRES IMPLEMENTATION OF AUDIENCE IMPRESSIONS)

COST FACTOR

DEFAULT: 0

SUBMIT AMOUNTS UNDER 10,000,000,000.00 15.00 OPTIONAL

AUDIENCE SIZE DEFAULT: 0 4000 OPTIONAL

CONVERSION VALUE TYPE

AV – AVERAGE AC – ACTUAL DEFAULT: AC

AV OPTIONAL

AVERAGE CONVERSION VALUE

APPLIES ONLY IF AV = CONVERSION VALUE TYPE DEFAULT: 0

SUBMIT AMOUNTS UNDER 10,000,000,000.00 250.25 OPTIONAL

ARCHIVE BIT DEFAULT: U A - ARCHIVE U - UNARCHIVE

A OPTIONAL

CAMPAIGN DAILY COST DEFINITION FIELD SUMMARY

FIELD NAME

VALUES

EXAMPLE OPTIONAL/ REQUIRED

CAMPAIGN ID

UP TO 28 ALPHANUMERIC CHARACTERS FORMAT: <2 LETTER PREFIX><TYPE: C OR L> -<ALPHANUM ID>

AFL-20381 (LEAD AFFLILIATE CAMPAIGN)

EMC-3025 (CONVENTIONAL EMAIL CAMPAIGN)

REQUIRED

CAMPAIGN TYPES: C - CONVENTIONAL L - LEAD

CAMPAIGN CATEGORIES: AF – AFFILIATE BA – BANNER AD CA – CLASSIFIED AD DM – DIRECT MAIL EM – E-MAIL IL – INTERNAL LINK KA – KEYWORD AD KN – KEYWORD NETWORK LE – LINK EXCHANGE NL – NEWSLETTER OT – OTHER PA – PRINT AD

RA – RICH MEDIA AD SP - SPONSORSHIP

SFS - SALESFORCE.COM

DAY DAY ASSOCIATED WITH COST FORMAT: MM/DD/YYYY

12/31/2003 REQUIRED

COST

COST ASSOCIATED WITH DAY

SUBMIT AMOUNTS UNDER

10,000,000,000.00 55.23 REQUIRED

Page 111: Hitbox Installation Guide

|Page 99

Coding Campaigns

To track campaigns with HBX, you need to

determine which pages to track through campaigns. Typically you want to identify at least two or three pages, depending on the class of campaign you launch

a landing page

a lead page (for lead campaigns) and

one or more goal pages (HBX allows up to 20 goal pages per campaign)

for Salesforce.com campaigns, a form submission page that enters the lead's information into the Salesforce.com database

decide whether to create the campaign via the Campaign Administration page, or launch the campaign dynamically.

decide whether to track attributes of the campaign, at either the response or the conversion level

choose whether to register conversion value on goal pages.

For HBX to track campaign behavior, it is assumed that visitors to your Web site have set their browsers to enable the acceptance of cookies. If cookies are not enabled, or if the user blocks cookies for your Web site, it is not possible for HBX to track campaigns. HBX relies on visitors accepting cookies and enabling JavaScript to track nearly all statistical reports.

Campaign Examples

Examples of on-line and landing page methods

Suppose that your business wishes to increase its Web sales in the auto parts industry through various campaigns targeting potential customers with different offers when a product is purchased.

These examples assume that the visitor has not previously responded to a campaign on your site, whether by accessing a landing page coded with this campaign ID or responded to an on-line campaign URL coded with a campaign ID.

To implement the on-line method for campaigns, launch an email campaign by creating a URL such as http://www.autopartheaven.com/gasketoffer.htm?CMP=EMC-24670, and placing the URL in the email. When the email reaches targeted buyers, and the link in the email is clicked, HBX registers the email recipient as a respondent to campaign EMC-24670, and adds data to the respondent's cookie about the campaign. Because this is an email campaign (as indicated by the first two letters in the campaign code, EM), the respondent is also counted as a category respondent in the email campaigns category.

Page 112: Hitbox Installation Guide

|Page 100

Once the respondent arrives at the gasketoffer.htm page targeted by the URL, pricing and service options on the page should be designed to lead to the purchase of your gaskets. The respondent then navigates through the ordering process and lands on a summary page prior to the thank you page or order confirmation page. Create a URL on the summary page that leads to the thank you page. Such a URL might be http://www.autopartheaven.com/thankyou.htm?GP=EMC-24670 When the respondent clicks this link on the summary page, the thank you page opens in the browser. At the same time, information is sent to HBX about the campaign ID in the URL. HBX then compares the ID EMC-24670 on the respondent's cookie to the ID in the URL. When the IDs match, this triggers a conversion for campaign EMC-24670, and the respondent is then counted as a converter for the campaign. Also, because this is an email campaign, the respondent is counted as a category converter in the email campaign category.

To implement the landing page method for campaigns, make changes in the HBX page code on both your gasketoffer.htm page, and on your order confirmation page. By default, the variable indicates hbx.cmp=""; Change this to hbx.cmp="EMC-24670"; to match the ID of the email campaign you created. Likewise, change the default definition of the variable hbx.gp="" on your order confirmation page to hbx.gp="EMC-24670";. The visitor to your home page sees the special offer advertised, and follows the link to the gasketoffer.htm page. When landing on this page, HBX records a response to campaign ID EMC-24670 defined in the hbx.cmp variable.

As the respondent decides to accept the special bargain price offered for 15 dozen gaskets, the campaign continues on another page by presenting shipment choices. Once the respondent selects a shipping method and clicks submit, the order confirmation page opens. Because the respondent's cookie already has the HBX campaign ID EMC-24670, HBX counts this visit to the confirmation page as a conversion.

Example of a Lead Campaign

Suppose you need to track your Web site's ability to retain a visitor responding to an email. This multi-step lead campaign begins by sending an email offering "free" how-to instructions for making papier maîché figurines, as seen on TV. The email has a link with the following URL:

http://www.wsmart.com/page.jhtml;?type=content&id=channel17&page=1&CMP=EML-90982

This generic page (page.jhtml), featuring a description of the papier maîché figurines, is the response page to the email campaign. You define this page as a response page for a lead campaign either by passing the URL as in the above example, or by coding hbx.cmp="EML-90982"; To obtain the full how-to instructions, it urges the respondent to creates a login / password to register with the site, by submitting email address and password. This information is sent to wsmart.com, and the respondent is then added to the wsmart.com database. The login creation confirmation page appears and provides a link to the full text for the papier maîché instructions. When coding the lead campaign, you change the default value hbx.hlt=""; to hbx.hlt="EML-90982"; and place this on the login creation confirmation page. No values should be defined for the hbx.cmp variable on this lead designation page.

The respondent to the email campaign is now considered a registered wsmart.com member (or in more generic terms, a lead designate). The confirmation page provides a link for the newly registered member to access the full version of the home crafts instructions on wsmart.com/papier_offer.htm. You code the page papier_offer.htm with the goal page variable hbx.gp="EML-90982"; or provide a URL-encoded link to the page such as

Page 113: Hitbox Installation Guide

|Page 101

http://www.wsmart.com/papier_offer.htm/?GP=EML-90982 When the member/lead designate lands on the page with the featured text, a conversion of the lead campaign occurs.

Note that while you can track responses and conversions to a lead campaign via the on-line method (URL query strings), you cannot track lead designations in the same way. Only by defining the page code variable hbx.hlt can you create a lead designation page.

In addition, no lead designations can occur unless there is first a visit counted as a response to the lead campaign on the response page. If the visitor goes directly to the lead designation page (the page where hbx.hlt is defined), without first responding to the lead campaign, the visitor cannot become a lead designate, nor (eventually) a conversion to the campaign.

Example of a Dynamic Campaign

To launch a dynamic campaign, first create a unique case-sensitive ID for the campaign. Refer to the chart of campaign ID prefixes when creating an ID. If this is a response > conversion campaign involving a banner ad campaign for Web site hosting, define the campaign ID with the prefix BAC- Then add up to 24 alphanumeric characters, such as RealMedia0427. Make sure the ID has no restricted characters, and is unique for your account. The completed campaign ID is BAC-RealMedia0427.

If netad.com manages your banner ads, it might use a URL like

http://clic.netad.com/aclic?cid=582&site=hwh;http://www.hostwebhost.com/B4/FRB/FRB_Subscriptions.jsp?

Have netad.com add the string &DCMP=RealMedia0427 to the above URL thus:

http://clic.netad.com/aclic?cid=582&site=hwh;http://www.hostwebhost.com/B4/FRB/FRB_Subscriptions.jsp?DCMP=BAC-RealMedia0427

Now, when the visitor clicks on the banner, it opens your site at page http://www.hostwebhost.com/B4/FRB/FRB_Subscriptions.jsp

and HBX registers a response to the campaign. After investigating the Web hosting offer, the respondent asks for more information by clicking on the contact us page, where an information form appears. Once the respondent enters information, the form is submitted, and the respondent lands on a thank you page. The submit click can have the following href

http://www.hostwebhost.com/thank_you.jsp?GP=BAC-RealMedia0427

or the goal page code can be defined as hbx.gp="BAC-RealMedia0427"; When the respondent lands on the thank you page, a conversion is registered for the campaign BAC-RealMedia0427.

Example of a Salesforce.com® Campaign

Suppose you want to launch an e-card (electronic greeting card) service that delivers a selection of specialized e-cards for segments of a community of users of on-line insurance products. Your company has purchased a list of targeted email addresses and birth dates, but lacks any other information on the intended e-card recipient. Such an e-card might be sent by the insurance agent to wish the policy owner "Happy Birthday" and collect a free gift, while pitching a new term life insurance package. It is a assumed that your company has already built a database of contacts using Salesforce.com.

After going through preliminary steps to enable campaign creation and Web-to-Lead tracking in Salesforce.com and creating a Salesforce.com campaign in HBX, you create a link on the index or home page of your site to a signup page so that insurance customers can register to access the e-card service.

The link has the following URL:

http://www.nshureu.com/community/ecard/sign_in.htm?type=login&cmp=SFS-20741932

Page 114: Hitbox Installation Guide

|Page 102

This URL directs visitors to the page sign_in.htm and registers a response to the Salesforce.com campaign SFS-20741932 The sign-in page contains a form with several fields that the prospective insurance customer fills out and submits.

On this form submission page you place the Salesforce.com Web-to-Lead html code containing all the fields you require to build this contact. One required field on this form is the URL to the "Thank You" or Confirmation page. To synchronize campaign ID between Salesforce.com and HBX, you add HBX Web-to-Lead custom code just before the ending </FORM> tag. If you want HBX to track visitor behavior on this page, you may also add the HBX page code between the Web-to-Lead custom HBX code and the ending </FORM> tag.

Examine an abbreviated example of the code modifications for the Web-to-Lead page.

After the submitted information reaches Salesforce.com, you evaluate the quality of data submitted. With this lead information, you have several options in Salesforce.com:

assign a lead to a new account (for businesses)

attach a lead to an existing account (for businesses)

assign a lead to a new contact (for individuals)

assign a lead to an existing contact (for individuals)

create an opportunity

You may also decide to reject dubious or spurious lead information, or to postpone taking action on the lead information.

Meanwhile, the Web-to-Lead form has automatically sent the prospect to a "Thank You" page. On this page, you define the HBX variable hbx.hlt="LAST"; (and optionally the hbx.hla lead attribute variable). This page and associated code is essential to the campaign tracking process in HBX.

Note that you need not change the code on this conversion page if you launch other Salesforce.com campaigns. Because the value of the hbx.hlt variable is LAST on the conversion page, HBX always tracks the Salesforce.com campaign most recently responded to. Thus any Salesforce.com campaign can be converted via this page.

Note: If hbx.hlt is defined with a value other than "LAST", the campaign will not be tracked properly.

Whether the campaign shows conversion information in HBX depends on how you follow-up on the lead information submitted.

If the lead information helps close an on-going business deal, you can update the opportunity in Salesforce.com to show a closing date on the deal and change the status of the opportunity to "Closed Won". When the campaign that produced the lead information results in a "Closed Won", HBX reports a conversion for the Salesforce.com campaign.

HBX only reports conversions if an opportunity switches status to "Closed Won" as a result of lead information gathered from the campaign.

HBX does not show any conversion for the campaign if the opportunity is changed to a status (Closed Lost, Proposal/Price Quote, and so on) other than "Closed Won".

Page 115: Hitbox Installation Guide

|Page 103

If you prematurely change the status to "Closed Won" and then later reverse your decision, conversion information for the campaign does not appear in HBX.

Preparing to Code Account IDs to Campaigns on Pages

Before you begin to place campaign code on pages, organize the information you need:

names of accounts

the static campaign IDs created with the campaign administration tool, or

campaign names you wish to use for the dynamic campaigns and

access to landing pages/goal pages to code.

If you are creating a tagless campaign, you need to make the same kinds of decisions and assemble the same kinds of information. There is one important difference: you don't need to place campaign code on pages.

For a tagless campaign, you should consider how HBX should process conditions that trigger response, lead, and conversion events. This involves determining, among other things, the importance of the following in triggering events:

a URL (the full or partial value of either the URL of the page landed on, or the URL that referred the visitor, or the URL of the last page viewed by the visitor before leaving your site)

a page name (the value assigned to the hbx.pn variable, or the page name itself)

a link ID (the value assigned to the lid variable when you enable link tracking on your Web pages)

the name of a downloadable file (where the value corresponds to a file downloaded from your site)

the ID of a form on your site (where ID corresponds to the value assigned to the name or the form)

You may also wish to incorporate some information from existing tagged campaigns into the tagless campaign you are creating.

If you have only one account, your coding task is simple: match campaign ID with the pages you want to be tracked by HBX campaign analysis. If you have only one account ID, you can track only one static (lead) campaign or one dynamic (lead) campaign on the same page. You can however designate a single page as the goal page for more than one static and dynamic campaign.

Tracking responses to campaigns by both the landing page method and the on-line method with multiple accounts is discussed in the Advanced Coding section.

In the URL examples presented, the ellipsis ... indicates that parts of the URL are omitted as irrelevant to the example. For example, the URL

http://www.website.com/?...&CMP=EMC-1245

means that following the ? query string marker in the URL, you may have other (optional) &name=value elements. This example is shorthand for writing

http://www.website.com/?CMP=EMC-1245

and

http://www.website.com/?CMP=EMC-1245

as well as

http://www.website.com/?myname=myvalue&CMP=EMC-1245

Page 116: Hitbox Installation Guide

|Page 104

In the examples below, the dynamic campaign IDs shown conform to the naming conventions for campaigns. When launching dynamic campaigns, you can however enter any case-sensitive text up to 24 characters, and containing no illegal characters. For purposes of illustration only, the dynamic campaign IDs

presented in examples below use DY to distinguish them from static campaigns. Also, note that you cannot define a dynamic campaign and a static campaign on the same response landing page.

Likewise, you cannot pass dynamic campaign and static campaign IDs in the URL query string at the same time.

Tracking Response

You may track response to conventional static (and conventional dynamic campaigns) and static (and dynamic) lead campaigns by adding campaign IDs to specific Web pages or by adding the campaign ID to URL query strings. While both methods use nearly identical syntax for identifying campaigns for tracking respondents, changes must be made to the page code for the first method. With the second method, you may place the URL query string in an e-mail (for example) or on a clickable advertising banner, without changing code on pages.

For tagless campaigns, response is tracked by defining the trigger for the response event in Step 2 of the campaign creation process.

Tracking Respondents via Web Site Pages

To track a respondent based on specific site pages visited, add the campaign ID to the variable hbx.cmp (or hbx.dcmp for dynamic campaigns) in the HBX code for the entry page(s) identified as acknowledging a response to a campaign. For example, if you create a special splash page for e-mail campaign respondents with the campaign ID EMC-1245, you then change the default assignment hbx.cmp=""; in the HBX code on that page to hbx.cmp="EMC-1245" . For a lead campaign, use hbx.cmp="EML-1245". For a dynamic campaign, you change the default assignment hbx.dcmp="" to hbx.dcmp="EMC-1245DY". For a dynamic lead campaign, use hbx.dcmp="EML-1245". Consequences of visitor response include:

A visitor accessing that page will be counted as a respondent to the specific campaign.

A static campaign ID, created in the Campaign Administration page, is added to a persistent cookie in the visitor's browser to allow measurement campaign statistics across one or multiple browsing sessions.

Since the campaign ID is not recognized initially for dynamic campaigns that haven't been registered by HBX, HBX creates a new campaign entry for the dynamic campaign. HBX adds this campaign entry to the visitor's cookie. You can later go back to the Campaign Administration page to add details about the campaign.

If it is the first time for the visitor to access the campaign, HBX considers the visit as a global response, and adds the visit to the campaign and category respondents. If the visitor had previously responded to campaign EMC-24670 on your site, the visitor is considered a respondent already. If this respondent then responds to EMC-24670 again, that visit is then considered as a repeat response. Any further responses to the same campaign are also considered repeat responses.

One way to use the repeat response figure is to measure the throughput and retentiveness of your campaigns. Your campaign should be designed to foster the initial respondent's goal-oriented action. The respondent should move quickly between response and conversion, without wandering off the site or losing focus. For this reason, attempt to model your campaign's emarketing content so that the number of repeat responses is minimized.

Summary of Tracking Respondents via Landing Pages

Tip

Page 117: Hitbox Installation Guide

|Page 105

ACTION DESIRED CAMPAIGN ID

CODE: hbx.cmp=

OR

hbx.dcmp=

EXPLANATION

MAP ACCOUNT TO

CAMPAIGN

EMC-1245

EMC-1245DY

EML-1245

EML-1245DY

"EMC-1245";

"EMC-1245DY";

"EML-1245";

"EML-1245DY";

CAMPAIGN EMC-1245

(OR EMC-1245DY)

(OR EML-1245 OR EML-1245DY)

MAPPED TO ACCOUNT ID

Campaign Tracking - Respondents via Landing Pages

Tracking Respondents via URL Query Strings

You may also track respondents to conventional static and dynamic campaigns by sending a query string with the campaign ID in a URL. The URL contains a name-value pair: the value of the name-value pair is the campaign ID, while the name is CMP (or DCMP for a dynamic campaign). The query string you use is the same as the value you use for the hbx.cmp variable (or hbx.dcmp for dynamic campaigns), minus the double quotes.

For example, you launch an e-mail campaign containing a link to your Web site, such as http://www.website.com/?...&CMP=EMC-1245. When a user receives the email and follows this link:

HBX recognizes the conventional campaign code (EMC-1245) in the link

A static campaign ID, created in the Campaign Administration page, is added to a persistent cookie in the visitor's browser to allow measurement campaign statistics across one or multiple browsing sessions.

Since the campaign ID is not recognized initially for dynamic campaigns that haven't been registered by HBX, HBX creates a new campaign entry for the dynamic campaign. You can later go back to the Campaign Administration page to add details about the campaign.

The visitor is counted as a respondent to that campaign.

The campaign ID is added to the visitor’s cookie. From the perspective of the data stored by HBX on the persistent cookie, information sent by means of URL query string takes precedence over campaign code placed on pages

To track respondents using this method, use a URL containing a name-value pair with a case-sensitive campaign ID. The name in the name-value pair is normally the string CMP.

For static campaigns, the value is the campaign ID taken from the campaign analysis tool.

For dynamic campaigns, the campaign ID can be any value you choose, as long as it follows campaign naming conventions. Dynamic campaign IDs are marked in the URL with DCMP, rather than CMP.

Choose the campaign ID for the campaign responses you wish to track in the URL. This campaign ID will serve as the value portion of the name-value pair. Add the name-value pair to the URL query string. For example,

http://www.website.com/?...&CMP=EMC-1245

or, for a dynamic campaign

http://www.website.com/?...&DCMP=EMC-1245DY

(maintaining the same case for the campaign ID). HBX will then measure a response to email campaign 1245 (or for the dynamic campaign EMC-1245DY) when the visitor follows this URL query string.

Page 118: Hitbox Installation Guide

|Page 106

If you add campaign IDs to your Web site pages to track respondents and you also add campaign IDs to URL query strings, the campaign IDs in the query strings will override campaign IDs coded on Web site pages, providing that the campaign ID in the query string is a valid or recognized HBX campaign ID. Examples: If static campaign ID BAC-4459 is coded on a response page, and a link you send to the same response page is has the string CMP=EMC-1245 in the URL, then a response is counted for EMC-1245 but not for BAC-4459. But, if EMC-1245 is not a valid static campaign ID, then no response will be measured.

If dynamic campaign ID BAC-4512DY is coded on a response page, and a link you send to the same response page has the string DCMP=EMC-1245DY, then a response is counted for EMC-1245DY, but not for BAC-4512DY

An Alternative for the Name portion of a name-value pair in the URL

There are two cases where you might want to avoid using queries containing the name-value pair CMP=campaignID or DCMP=campaignID

if sending a query with CMP=campaignID or DCMP=campaignID conflicts with a CMP (or DCMP) variable in your scripts implemented prior to installing HBX that are also used in the query string

if you use the HBX commerce module along with HBX and pass query strings using CP=campaign_ID for tracking hbx.cp campaigns and the hbx.cp variable is assigned in the page coding.

To do this, define the hbx.cmp (or hbx.dcmp for dynamic campaigns) variable with the _P:: shortcut notation followed by a short, case-sensitive unique alphanumeric value in the page code. This name should be a short text string for recognizing that the query string is passing a campaign ID. This is the alternate (dynamic) campaign query parameter method.

For example, to use to use Static01 or Dynam02 as the replacement name for the response query parameter, define the hbx.cmp variable (or hbx.dcmp for dynamic campaigns) thus:

hbx.cmp="_P::Static01"; for static campaigns and

hbx.dcmp="_P::Dynam02";

for dynamic campaigns.

When HBX parses the URL http://www.website.com/?...Static01=EMC-1245 or http://www.website.com/?...Dynam02=EMC-1244DY a visitor landing on the page triggers a response for campaign id EMC-1245 or EMC-1244DY.

When defining hbx.cmp or hbx.dcmp using the shortcut notation, use a unique, case-sensitive alphanumeric value conforming to the rules listed in the Illegal Characters section. The name for the portion of the query parameter following the shortcut notation must not interfere with existing definitions of other query parameters, such as the ones listed in the Gateway Variables column.

NOTE: HBX page code implemented to prior to V3.5 used the hbx.cmpn (and hbx.dcmpn ) variables to replace the query parameter for the goal page as parsed from the current page URL. The function of these variables is still supported by the HBX V3.5 hbx.js file.

Just as you cannot assign valid campaign IDs to both hbx.cmp and hbx.dcmp on the same page simultaneously, you likewise cannot implement the alternate (dynamic) campaign query parameter method for hbx.cmp and hbx.dcmp on the same page at the same time.

Page 119: Hitbox Installation Guide

|Page 107

SUMMARY OF TRACKING RESPONDENTS VIA URL QUERY STRINGS

ACTION DESIRED

CAMPAIGN ID

URL QUERY STRING EXPLANATION

MAP ACCOUNT

TO CAMPAIGN

EMC-1245

EMC-1245DY

BAL-2384

http://www.website.com/?

...&CMP=EMC-1245

http://www.website.com/?

...&CMP=BAL-2384

-- OR --

page code

hbx.cmp="_P::Static01";

AND http://www.website.com/?

...&Static01=EMC-1245

http://www.website.com/?

...&Static01=BAL-2384

http://www.website.com/?

...&DCMP=EMC-1245DY

-- OR --

page code

hbx.dcmp="_P::Dynam02";

AND http://www.website.com/?

...&Dynam02=EMC-1245DY

CAMPAIGN EMC-1245 IS MAPPED TO

STANDARD QUERY NAME CMP FOR THE

ACCOUNT

-- OR -- CAMPAIGN EMC-1245 IS MAPPED TO

QUERY PARAMETER STATIC01 FOR THE

ACCOUNT

CAMPAIGN EMC-1245DY IS MAPPED

TO STANDARD QUERY NAME DCMP FOR

THE ACCOUNT

-- OR --

CAMPAIGN EMC-1245DY IS MAPPED

TO QUERY PARAMETER DYNAM02 FOR

THE ACCOUNT

Campaign Tracking - Respondents via URL Query Strings

Expiring Responses for Campaigns - Expiring Dynamic Campaigns

You can limit the amount of time that responses to campaigns are collected by HBX services. You can also signal that responses to a campaign should stop being collected by HBX when a conversion occurs for the campaign.

For static and tagless campaigns, response time parameters can only be modified in Step 2 of the Campaign Administration page. Note that you cannot change response time parameters for Salesforce.com campaigns.

For dynamic campaigns, you can

modify the HBX page code (landing page method) by specifying a number of days until responses expire or the campaign expires or

send via the URL query string (on-line method) a number of days until responses expire or the campaign expires

The value of the response expiration date is specified as the number of days after the dynamic campaign is first registered. This represents the number of days after HBX receives an initial response to the dynamic campaign (using xd format, where x is an integer and the character d is the code for days). .

To implement the expiration of responses to a dynamic campaign 10 days after it is registered by HBX using the landing page method, modify the default value of the hbx.dcmpre variable in the page code.

hbx.dcmpre="10d";

Similarly, to stop counting a dynamic campaign ten days after it is registered by HBX using the landing page method, modify the default value of the hbx.dcmpe variable in the page code. This applies to all visitors who have information on the dynamic campaign stored on their cookie.

hbx.dcmpe="10d";

Page 120: Hitbox Installation Guide

|Page 108

You can also specify the number of days a visitors' responses to a campaign are still valid as well as the number of days to run the dynamic campaign (a relative end day for the campaign) by adding the information to the query string. Following the abbreviations for number of days and the d abbreviation explained above, you send

DCMPRE=xd

in the URL query string to expire the responses for a particular visitor after x days. Similarly, to mark the end of the dynamic campaign, you send

DCMPE=xd

in the URL query string to expire the campaign after x days.

For example, you launch a dynamic campaign based on an advertising banner on a content site. The query string linked to the advertising banner for the dynamic campaign is

http://s1b.raresteak.com/ix.e?hy&s=16248&a=1178&DCMP=aupoivre&DCMPRE=3d

Once a visitor clicks on the banner, a dynamic campaign with the name OTC-aupoivre is created by HBX (assuming that the campaign was not previously registered by HBX by another respondent). The visitor can continue to respond to the campaign, that is, click on the banner for the next three days. If the visitor doesn't click on another link that converts the campaign or doesn't land on a goal page for the campaign in the span of three days, responses to the campaign are removed from the visitor's campaign cookie. If the visitor then clicks again on the banner, the entire process starts over again.

Any value for number of days until expiration that you assign to hbx.dcmpre ( or DCMPRE in the query string) must be equal to or less than the value assigned to hbx.dcmpe (or DCMPE in the query string).

Tracking Lead Designations

You may track lead designation to static (and dynamic) lead campaigns by adding campaign IDs to specific Web pages. In contrast with the ways for tracking response or conversion to lead campaigns, you can only track lead designation by the landing page method, that is, by defining hbx.hlt on the lead designation page. The on-line method is not available for following lead designations.

The visitor must first visit and respond to a lead campaign before the respondent can be

considered a lead designation on the page where the hbx.hlt variable is defined.

Tracking Lead Designations in Single Lead Campaigns

To track lead designations, you specify pages on your Web site that will serve as "lead designation" pages for campaigns. For example, a lead designation may be the confirmation page after the visitor submits a survey or the map after the visitor requests store location information.

To track lead designation:

Identify pages on your Web site as lead designation pages. Read more about lead designation pages.

Define the lead variable in the HBX code on each page to a static or dynamic lead campaign ID relevant to that page. The lead designation variable for either static or dynamic campaign is hbx.hlt.

Suppose you are coding a lead designation page with a lead campaign. Assume the visitor has already visited a response page for the lead campaign (defined as hbx.cmp="EML-1258";). The visitor is counted as a respondent to the campaign EML-1258, and the campaign ID is added to the cookie.

If you use this page code

hbx.hlt="EML-1258";

Page 121: Hitbox Installation Guide

|Page 109

HBX records a lead designation for lead campaign EML-1258. Now you must direct the lead designate to complete the lead campaign by converting on a goal page for the campaign (defined as hbx.gp="EML-1258";).

If you use a non-prefixed dynamic lead campaign ID on the response page for a lead campaign, you must use the OTC- prefix when defining it for the hbx.hlt variable. For example, if the response page for your dynamic lead campaign defines the lead campaign as Cornwall (hbx.dcmp="Cornwall";), you must use the following definition on the lead designation page:

hbx.hlt="OTC-Cornwall";

Tracking Lead Designations in Multiple Lead Campaigns

You can also list multiple lead campaign IDs when defining hbx.hlt. HBX will check the respondent's cookie for matching lead campaign ID(s). If any matches are found in the list of lead campaign IDs, HBX will register a lead designation for all campaign IDs matched. If you wish to track just the last lead designation of a campaign on a specific lead designation page, use the word LAST instead of a list of campaign IDs.

Suppose you are coding a lead designation page with two lead campaigns. Assume the visitor has already visited response pages for both lead campaigns (defined as hbx.cmp="EML-1258"; and hbx.cmp="BAL-1245";). The visitor is counted as a respondent to both campaigns and both campaign IDs are added to the cookie.

If you use this page code

hbx.hlt="EML-1258,BAL-1245";

HBX records a lead designation for lead campaign EML-1258 and BAL-1245. Now you must direct the lead designate to complete the lead campaign by converting on one (or several) goal page(s) for the campaign (defined variously as hbx.gp="EML-1258"; or hbx.gp="EML-1258,BAL-1245"; or hbx.gp="LAST";).

If you wish to track lead designations only for the last lead campaign responded to, use this definition of hbx.hlt instead:

hbx.hlt="LAST";

Notice that the syntax used for tracking lead campaign IDs is exactly like the syntax used for conventional campaign conversions.

SUMMARY OF TRACKING LEAD DESIGNATIONS VIA LANDING PAGES

ACTION DESIRED

# OF CAMPAIGNS

CAMPAIGN IDS

CODE: hbx.hlt= EXPLANATION

MAP ACCOUNT TO

LEAD CAMPAIGN 1 EML-1245

"EML-1245";

LEAD CAMPAIGN EML-1245 IS

MAPPED TO ACCOUNT ID AS THE

LEAD DESIGNATION

MAP ACCOUNT TO

LEAD

CAMPAIGN(S)

2 EML-1245 BAL-1245DY

"EML-1245,BAL-1245DY";

CAMPAIGNS EML-1245 AND BAL-1245DY ARE MAPPED TO ACCOUNT

ID AS THE LEAD DESIGNATION IF

BOTH ARE ON THE COOKIE

MAP ACCOUNT TO

LEAD CAMPAIGNS 2

EML-1245 BAL-1245DY "LAST";

LAST LEAD CAMPAIGN RESPONDED

TO ON COOKIE IS MAPPED TO

ACCOUNT ID AS THE LEAD

DESIGNATION

Tracking Conversions

Page 122: Hitbox Installation Guide

|Page 110

You may track conversions of conventional static (or conventional dynamic) campaigns or static (or dynamic) lead campaigns by adding IDs to specific Web pages or by adding the campaign ID to URL query strings. While both methods use nearly identical syntax for identifying campaigns for tracking conversions, changes must be made to the page code for the first method. With the second method, you may place the URL query string in an e-mail (for example) or on a clickable advertising banner, without changing code on pages.

Tracking Conversions in Single Campaigns

To track conversions, you specify pages on your Web site that will serve as "goal" pages for campaigns. For example, a purchase confirmation page may be a goal page, if the intended goal of a marketing campaign is for respondents to "convert" by making a purchase.

Identify selected pages on your Web site as goal pages.

Set the goal page variable in the HBX code on each page to a conventional or lead campaign relevant to that goal page. The goal page variable for any kind of campaign is hbx.gp.

Tracking Conversions in Multiple Campaigns

Identify selected pages on your Web site as goal pages.

Set the goal page variable in the HBX code on each page to the conventional or lead campaigns relevant to that goal page. The goal page variable for any kind of campaign is hbx.gp.

Separate campaign IDs with commas. Alternatively, assign the hbx.gp variable to the string LAST, indicating that HBX will track conversions only for the last campaign responded to by the respondent.

Once a goal page is accessed, a conversion is counted for all campaigns stored on the cookie that is all campaigns responded to. If you define the variable hbx.gp as hbx.gp="LAST"; HBX will "convert" the respondent for whichever campaign was responded to last. To record goal page conversions for specific campaigns rather than the last campaign responded to, use a comma-separated list of relevant campaign IDs.

For example, while running a dynamic e-mail campaign, a conventional banner ad campaign, and an lead internal link campaign, you choose to set the goal page the same for the e-mail and the internal link campaigns, but not for the banner ad campaign. To exclude measurement of goal page conversions for the banner ad campaign from these goal pages, list only the campaign IDs for the e-mail and internal link campaigns. The variable hbx.gp is coded thus:

hbx.gp="EMC-1245DY,ILL-3214";

Conversions are counted only for the campaigns defined in the hbx.gp variable.

If you use a non-prefixed dynamic lead or conventional campaign ID on the response page for a lead or conventional campaign, you must use the OTC- prefix when defining it for the hbx.gp variable. For example, if the response page for your dynamic lead or conventional campaign defines the campaign as Cornwall (hbx.dcmp="Cornwall";), you must use the following definition on the goal page:

hbx.gp="OTC-Cornwall";

Page 123: Hitbox Installation Guide

|Page 111

SUMMARY OF TRACKING CONVERSIONS VIA GOAL PAGES

ACTION DESIRED # OF CAMPAIGNS

CAMPAIGN IDS

CODE: hbx.gp= EXPLANATION

MAP ACCOUNT TO

CONVENTIONAL

CAMPAIGN(S)

2 EMC-1245 EMC-1245DY

"EMC-1245"; "EMC-1245,EMC-1245DY"; "LAST";

CAMPAIGN EMC-1245 ON COOKIE

IS MAPPED

CAMPAIGN EMC-1245 AND EMC-1245DY ARE MAPPED TO

ACCOUNT ID FOR THE GOAL PAGE

IF BOTH ARE ON THE COOKIE

LAST CAMPAIGN ON COOKIE IS

MAPPED TO ACCOUNT ID FOR THE

GOAL PAGE

MAP ACCOUNT TO

LEAD CAMPAIGN 2

EML-1245 EML-1245DY

"EML-1245"; "EML-1245,EML-1245DY"; "LAST";

CAMPAIGN EML-1245 ON COOKIE

IS MAPPED

CAMPAIGN EML-1245 AND EML-1245DY ARE MAPPED TO ACCOUNT

ID FOR THE GOAL PAGE IF BOTH

ARE ON THE COOKIE

LAST CAMPAIGN ON COOKIE IS

MAPPED TO ACCOUNT ID FOR THE

GOAL PAGE

MAP ACCOUNT TO

CONVENTIONAL AND

LEAD COMPAIGNS

2 EMC-1245 EML-1245DY

"EMC-1245,EML-1245DY"; "LAST;

CAMPAIGN EMC-1245 AND EML-1245DY ARE MAPPED TO

ACCOUNT ID FOR THE GOAL PAGE

IF BOTH ARE ON THE COOKIE

LAST CAMPAIGN ON COOKIE IS

MAPPED TO ACCOUNT ID FOR THE

GOAL PAGE

Campaign Tracking - Conversions via Goal Pages

Tracking Conversions via URL Query Strings

To track converters to dynamic (or static) campaign conversions using this method, add a name-value pair to the URL. The query string you use is a copy of the value(s) you use for the hbx.gp variable, without using the double quotes. The name is normally the string GP. The value is the campaign ID.

Choose the campaign ID(s) for the campaign conversions you wish to track in the URL. This campaign ID will serve as the value portion of the name-value pair. Add the name-value pair to the URL query string. For example,

http://www.website.com/?...&GP=EMC-1245

or for dynamic campaigns

http://www.website.com/?...&GP=EMC-1245DY

(maintaining the same case for the campaign ID). HBX will then measure a conversion when coded URLs are followed.

Page 124: Hitbox Installation Guide

|Page 112

If you associate a non-prefixed dynamic lead or conventional campaign ID with the response page for a campaign, you must modify the query by adding the OTC- prefix in order to track a conversion for the campaign. For example, if the response page for your dynamic campaign defines the campaign as Cornwall

http://www.website.com/?...&DCMP=Cornwall

HBX will only count the conversion if you change the URL query string to the following:

http://www.website.com/?...&GP=OTC-Cornwall

If you add campaign IDs to your Web site pages to track conversions and you also add campaign IDs to URL query strings, the campaign IDs in the query strings will override campaign IDs coded on Web site pages, providing that the campaign ID in the query string is a valid or recognized HBX campaign ID. Example: If static campaign ID BAC-4459 is coded on a goal page, and a link you send to the same goal page is has the string ?GP=EMC-1245 in the URL, then a conversion is counted for EMC-1245 but not for BAC-4459. But, if EMC-1245 is not a valid static campaign ID, then no conversion will be measured.

An Alternative for the Name portion of a name-value pair in the URL

There is a case where you might want to avoid using queries containing GP=campaign_ID

if sending a query with GP=campaign_ID conflicts with a GP variable in your scripts implemented prior to installing HBX that are also used in the query string

If this is an issue, you have the option of using another name besides GP in the name-value pair. This alternative requires you to change the code on your Web pages. To do this, define the hbx.gp variable with the _P:: shortcut notation followed by a short, case-sensitive unique alphanumeric value in the page code. This name should be a short text string for recognizing that the query string is passing a campaign ID. This is the alternate goal page query parameter method.

For example, to use OfferTarget01 as the replacement name for the goal page parameter, define the hbx.gp variable thus:

hbx.gp="_P::OfferTarget01";

for static (or dynamic) campaigns.

When HBX parses the URL http://www.website.com/?...OfferTarget01=EMC-1245 the goal page is associated with the campaign id EMC-1245 and will track conversions for that page.

When defining hbx.gp using the shortcut notation, use a unique, case-sensitive alphanumeric value conforming to the rules listed in the Illegal Characters section. The name for the portion of the query parameter following the shortcut notation must not interfere with existing definitions of other query parameters, such as the ones listed in the Gateway Variables column.

HBX page code implemented to prior to V3.5 used the hbx.gpn variable to replace the query parameter for the goal page as parsed from the current page URL. The function of this variable is still supported by the HBX V3.5 hbx.js file.

Page 125: Hitbox Installation Guide

|Page 113

SUMMARY OF TRACKING CONVERSIONS VIA URL QUERY STRINGS

ACTION DESIRED

# OF CAMPAIGNS

CAMPAIGN IDS URL QUERY STRING EXPLANATION

MAP

ACCOUNT TO

CAMPAIGN

1+ EMC-1245 EMC-1245DY BAL-2384

http://www.website.com/?...&GP=EMC-

1245

http://www.website.com/?...&GP=EMC-

1245DY

http://www.website.com/?...&GP=BAL-

2384

-- OR --

page code

hbx.gp="_P::OfferTarget01";

-- AND -- http://www.website.com/?...

&OfferTarget01=EM123,EMC-

1245DY,BAL-2384

-- OR -- http://www.website.com/?...

&OfferTarget01=LAST

CONVERSIONS TO

CONVENTIONAL

CAMPAIGN EMC-1245 OR DYNAMIC

CAMPAIGN EMC-1245DY TRACKED

VIA DEFAULT QUERY

NAME GP

OR

CONVERSIONS TO

CAMPAIGNS EMC-1245, EMC-1245DY, AND BAL-2384 TRACKED VIA

QUERY NAME

OFFERTARGET01 FOR

THE ACCOUNT OR

CAMPAIGN

CONVERSIONS

TRACKED BASED ON

THE LAST CAMPAIGN

VISITED

Campaign Tracking - Conversions via URL Query Strings

Tracking Salesforce.com® Campaigns

The following steps are required to launch a Salesforce.com campaign:

1. In Salesforce.com, enable Marketing User.

2. In Salesforce.com, enable Web-to-Lead.

3. In Salesforce.com, customize the fields for the Web-to-Lead form, making sure you uncheck the campaign checkbox. Also, enter the (required) value for the URL for the "Thank You" page in the Web-to-Lead form.

4. In Salesforce.com, generate the html code for the Web-to-Lead form and edit the generated code in a text editor.

5. Insert HBX custom Web-to-Lead code just before the closing </FORM> tag.

6. Optional Step: Add HBX page code between the end of the code modified in the previous step, but before the closing </FORM> tag of the Web-to-Lead form if you want to track traffic to this page.

7. Create the Salesforce.com campaign in the HBX campaign administration page.

Page 126: Hitbox Installation Guide

|Page 114

8. Define hbx.cmp on the response page for the campaign (for the landing page method), or use a URL query string that registers campaign (for the on-line method).

9. Define hbx.hlt (and optionally hbx.hla) on the confirmation or "Thank You" page.

Page 127: Hitbox Installation Guide

|Page 115

Many of these steps relate to the creation of the Web-to-Lead form, and need only be performed one time. Once you create the Web-to-Lead form, you need not modify it again. If you launch new Salesforce.com campaigns, the only page you typically modify is the response page, or the URL query string sent to HBX to register a campaign response.

In order to create Salesforce.com campaigns, the marketing user functionality must be enabled in Salesforce.com for a specific user. By default, marketing user functionality is disabled.

Enabling Marketing User (Salesforce.com)

To enable this, login to Salesforce.com using your user name and password.

Click on the "Setup" link. The "Personal Setup" page appears.

Click on "Administration Setup". The "Administration Setup" page appears.

Click on "Manage Users > Users". The "All Users" page appears.

Click on "New User" to create a new user, or modify an existing user by selecting the user and clicking "Edit".

If you are creating a new user, enter information in the form. Be sure you enable the Marketing User checkbox. If you are modifying an existing user, simply enable the Marketing User checkbox.

Save the User information.

Enabling Web-to-Lead (Salesforce.com)

To allow Salesforce.com campaigns to incorporate information entered by prospects in the Web-to-Lead page (form submission page), the Web-to-Lead functionality must be enabled in Salesforce.com for an account. By default, the Web-to-Lead functionality is disabled.

To enable this:

Login to Salesforce.com using your user name and password.

Click on the "Setup" link. The "Personal Setup" page appears.

Click on "Administration Setup". The "Administration Setup" page appears.

Click on "Customize salesforce.com > Leads > Web-to-Lead" or "Customize salesforce.com > Capture leads from your Web site". The "Capturing Leads from Your Web Site" page appears.

Click on "Enable Web-to-Lead". The "Web-to-Lead Settings" page appears.

Enable the Web-to-Lead Enabled checkbox.

Select the Default Lead Owner.

Save the Leads setup information.

In the "Capturing Leads from Your Web Site", click on "Generate the HTML". The "Capturing Leads from Your Web Site > Capture Leads" appears.

Customize the Fields of the Web-to-Lead Page (Salesforce.com)

In the Capturing Leads from Your Web Site > Capture Leads page, uncheck the campaign checkbox. While you can select any number of fields to include in the Web-to-Lead page, it is essential that you leave the Campaign box checkbox unchecked.

In this page, you must enter a URL that the user will be returned to. Typically, this page is the confirmation or "Thank You" page.

When you design your form submission page (Web-to-Lead), you may create a customized Web page containing many fields for the prospect to fill out, or you may use just a minimum of fields. How many fields you place in

Page 128: Hitbox Installation Guide

|Page 116

the form depends on whether information is required by the Salesforce.com database, or whether it is optional information. You may wish to limit the amount of fields that a prospect must fill out to minimize form abandonment.

Generating and Editing the html for the Web-To-Lead Page (Salesforce.com and HBX)

Click on the Generate button. The html appears in a text box. Copy and paste this text to a text editor.

Insert HBX custom Web-to-Lead code just before the closing </FORM> tag. Download this code here.

Optional Step: If you want to track traffic to this page, download the HBX code. Copy all the code, and make sure you enter the correct .js file location.

Place the HBX code between the end of the code modified in the previous step, but before the closing </FORM> tag of the Web-to-Lead form.

Refer to the schematic of the Web-to-Lead form submission page below.

Creating the Salesforce.com Campaign (HBX)

In the HBX campaign administration page, enter information about your Salesforce.com campaign in the appropriate fields. Once you create a Salesforce.com campaign in HBX, a Salesforce.com campaign will also be created. Refer to restrictions on the creation of these campaigns.

Tracking Response to Salesforce.com Campaigns

You track responses to Salesforce.com campaigns exactly like you track responses to other HBX campaigns:

by landing page method or

by the on-line method (URL query string)

Using the campaign ID generated on the campaign administration page, define the hbx.cmp variable (such as hbx.cmp="SFS-20741932";) on the response landing page for the campaign. Or, or use a URL query string that registers campaign (such as http://www.nshureu.com/community/ecard/sign_in.htm?type=login&cmp=SFS-20741932).

Unlike other HBX campaigns, you cannot track more than one Salesforce.com campaign per page, regardless of the number of accounts for the page.

Tracking Conversion to Salesforce.com Campaigns

Once the visitor is registered as a respondent to the campaign, and has submitted lead information on the Web-to-Lead page, the respondent then lands on the "Thank You" or conversion page. This page is defined with the hbx.hlt variable. The value for the hbx.hlt variable for the conversion page is always LAST, thus:

hbx.hlt="LAST";

In contrast with the ways for tracking response or conversion to lead campaigns, you can only track conversion to Salesforce.com campaigns by the landing page method, that is, by defining hbx.hlt on the conversion page. The on-line method is not available for following conversions to these campaigns.

(Optional) Tracking Conversion Attributes for Salesforce.com Campaigns

If you wish to track attributes related to the leads of a Salesforce.com campaign, you can define the hbx.hla variable. For more information, review the instructions for tracking campaign attributes.

Example Code for the Web-To-Lead Form Submission Page

Page 129: Hitbox Installation Guide

|Page 117

In the abbreviated example below:

Salesforce.com and HBX sections of the page code are identified by [ bracketed sections ]

key html tags for the page are highlighted

the entire custom HBX Web-to-Lead code is available by clicking on the link

the HBX page code is available on the Edit Account page

portions of the code not relevant to this illustration are snipped

<HTML>

[ Salesforce.com section ]

<!------------------ Sample HTML -----------------

Notes to webmaster:

Please add the following line to the <HEAD> element of your Online Lead Capture page. If necessary, modify the "charset=UTF-8" parameter to specify the character set of your HTML page. If you are not sure which character set to use, do not modify the line before adding it to your page.

<META HTTP-EQUIV="Content-type" CONTENT="text/html; charset=UTF-8">

------------------->

<FORM action="http://www.salesforce.com/servlet/servlet.WebToLead?encoding=UTF-8" method="POST">

<!-- portion of the Web-to-Lead form snipped -->

<input type=hidden name="retURL" value="http://target-thank-you-with-_hlt(_hla)-variables">

<!-- portion of the Web-to-Lead form snipped -->

<input type="submit" name="submit">

[ HBX custom Web-to-Lead code section ]

<!-- PLACE THIS CODE ON THE SALESFORCE.COM(R) LEAD FORM PAGE BEFORE THE </FORM> TAG OF THE WEB-TO-LEAD FORM -->

<!-- BEFORE GENERATING THE WEB-TO-LEAD FORM IN SALESFORCE.COM, MAKE SURE THAT THE CAMPAIGN CHECKBOX IS *UNCHECKED* -->

<!-- BEGIN OMNITURE CODE HBX2.0 (SALESFORCE.COM LEAD FORM)-->

<!-- portion of the Web-to-Lead form snipped -->

[ Download the complete custom HBX Web-to-Lead code ]

<!-- portion of the Web-to-Lead form snipped -->

[ Optional HBX page code section ]

<!-- OMNITURE CODE HBX2.0-->

<!--COPYRIGHT 1996 - 2008. OMNITURE, INC. ALL RIGHTS RESERVED. U.S.PATENT No. 6,393,479B1 and 6,766,370. MORE INFO: http://www.omniture.com/privacy/ -->

<script language="javascript">

//REQUIRED, NON-EDITABLE SECTION

var _hbEC=0,_hbE=new Array;function _hbEvent(a,b){b=_hbE[_hbEC++]=new Object();b._N=a;b._C=0;return b;}var hbx=_hbEvent("pv");hbx.vpc="HBX0200u";hbx.gn="hg123";

Page 130: Hitbox Installation Guide

|Page 118

//BEGIN EDITABLE SECTION

//CONFIGURATION VARIABLES

hbx.acct=" DM00000ABCDEF003";//ACCOUNT NUMBER(S)

hbx.pn="PUT+PAGE+NAME+HERE";//PAGE NAME(S)

hbx.mlc="CONTENT+CATEGORY";//MULTI-LEVEL CONTENT CATEGORY

hbx.pndef="title";

hbx.ctdef="full";

<!-- portion of the HBX page code snipped -->

</FORM>

</HTML>

Page 131: Hitbox Installation Guide

|Page 119

Salesforce.com® Campaign Dataflow

While the coding of pages -- with the exception of the Web-to-Lead form -- for tracking a Salesforce.com campaign is similar to coding other campaign pages, the flow of data between HBX and Salesforce.com is rather complex.

In the diagram below, both actions and pages are displayed. The green broken dotted line arbitrarily separates the two environments of the campaign.

Note that after the respondent arrives at the thank you page, several steps must occur before the campaign conversion figures are counted in HBX.

Page 132: Hitbox Installation Guide

|Page 120

Figure 1.Dataflow between HBX and Salesforce.com

Tracking Audience Impressions

One method used by HBX to analyze visitor behavior is the use of a Web beacon, a virtually invisible one-pixel square image (a beacon) sent to the visitor accessing certain content by HBX. This allows you to measure the

Page 133: Hitbox Installation Guide

|Page 121

number of impressions your campaigns have received. An impression is defined as the number of times an ad, e-mail, or other content was viewed in the context of your campaign.

It is recommended that you place the audience impression code alongside your marketing material. The Web beacon can be inserted as a snippet of HTML code into various e-marketing collateral (banner ads, email, sponsored links) when conducting campaigns. In the case of a banner campaign, an impression is measured when your banner is downloaded into a browser. In the case of an e-mail campaign, an impression is measured when the recipient opens the HTML e-mail. Note that the email client must be set to be able to accept HTML-encoded mail.

Currently, you can only track one static or dynamic campaign ID per account per audience impressions code.

The general format of the code to be inserted in marketing content for static campaigns is

<img src="http://ai.hitbox.com/ai?hb=acct_id&ai=static_campaign_id" width=1 height=1 border=0>

where acct_id is your HBX account ID and static_campaign_id a particular static campaign ID. For tracking static campaigns, use the prefixed campaign ID created in the campaign administration page.

The audience impressions code for dynamic campaigns is identical, with one importance difference highlighted below in gray

<img src="http://ai.hitbox.com/ai?hb=acct_id&dai=dynamic_campaign_id" width=1 height=1 border=0>

where acct_id is your HBX account ID and dynamic_campaign_id a particular dynamic campaign ID. For tracking dynamic campaigns, define any valid, unique campaign ID in the audience impressions code. If the ID does not have a recognized prefix, HBX will create a campaign using the default OTC- prefix.

For example, you are conducting a lead HTML-format email static campaign, and want to track how many times the email is opened by recipients, and whether or not the email actually leads to conversion. If the lead email campaign is EML-1245 and account ID is DM0022446600, use the following code in the body of the html format email you send:

<img src="http://ai.hitbox.com/ai?hb=DM0022446600&ai=EML-1245" width=1 height=1 border=0>

You can also use the audience impressions code in Web objects (banner, page, and so on) in order to track the number of times the object is viewed (or clicked on for banner ads). Note that the audience impression code by itself records the number of times the Web object is viewed/clicked on, even for sites that do not have HBX page code. In the context of an HBX campaign, the audience impressions code allows you to gauge the number of hits (impressions) on campaign material. You can calculate a response ratio for the campaign with the formula responses/impressions.

For example, insert the code <img src="http://ai.hitbox.com/ai?hb=acct_id&ai=campaign_id" width=1 height=1 border=0> in the href tag of a banner ad to track the number of times the banner is clicked on. Make sure to replace acct_id with your HBX account ID and campaign_id with the ID of the campaign to associate with audience impressions. This banner ad can be hosted on your site or externally as part of your acquisition marketing efforts.

Because of concerns about e-mail spamming, certain e-mail clients (notably Microsoft® Outlook version 11) no longer support the use of Web beacons in html-encoded e-mail messages.

Tracking Campaign Attributes

Each class of campaign, both conventional static (or conventional dynamic) and lead (or lead dynamic) campaign, can be custom tagged on the campaign response, lead designation, and goal pages to allow user definition of

Page 134: Hitbox Installation Guide

|Page 122

essential elements linked to a campaign. These essential elements include keywords, search terms, banner names, banner location, and email names, to name a few. For example, if one of your on-line e-mail campaigns targets just individuals on your in-house mailing list, you can assign the value "inhouse+mailing+list" to the hbx.hra variable in the response landing page hbx.hra="inhouse+mailing+list"; to gain insight into the behavior of this subset of email recipients. When responses to this campaign appear in HBX, you see increases associated with the "inhouse mailing list" attribute. In this way, you can define essential attributes about the campaign on a per-campaign basis.

Besides incrementing the response attribute "inhouse mailing list" during responses to the campaign, HBX also will increment the "inhouse mailing list" response attribute associated with the campaign in the conversions column, if the respondent triggers a conversion.

This assumes that the customer doesn't respond to the same campaign with a different response attribute defined on your site before converting. Because the value of the response attribute is associated with the campaign ID on the respondent's cookie, a response to another landing page for the same campaign, but with a different hbx.hra definition, will replace the response attribute already stored on the cookie. For this reason, it is important to design your response pages to minimize repeat responses. You should not define the hbx.hra variable for a page unless either the hbx.cmp or hbx.dcmp variable is also defined for the page.

Lead Attributes

Essential attributes defined with the hbx.hla variable are associated with lead designation pages only.

If you are tracking lead attributes of a Salesforce.com campaign, define the attribute using the hbx.hla variable on the "Thank You" page.

For example, if the registration confirmation page for a lead banner campaign is defined as a lead designation page (hbx.hlt="BAL-2830";), you can define hbx.hla="StoreLocator"; to indicate that this lead designation page contains Store locator code. Note that you must have hbx.hlt defined for the page before HBX records the lead attribute variable defined with hbx.hla.

Do not define hbx.hla on the same page you define hbx.hra.

Suppose more than one lead campaign is defined on the lead designation page, and a lead designation is counted for the campaigns. When the lead designation occurs, the same value defined for hbx.hla is applied to all lead campaigns.

Conversion Attributes

Essential attributes defined with the hbx.hcn variable are associated with conversion pages for conventional static (and dynamic) campaigns and static (and dynamic) lead campaigns. For example, if the order confirmation page for your cross-channel radio and print ad campaign is defined as the goal page for the campaign (hbx.gp="PAC-RadioZ90";) you can define hbx.hcn="MorningShow"; to indicate that the radio spots urging listeners to logon to the Web site occurred in connection with the AM show. The number of conversions linked to the "MorningShow" attribute is incremented for this campaign.

Do not define hbx.hcn on the same page you define hbx.hra.

Suppose more than one conventional or lead campaign is defined on the goal page, and a conversion is counted for all the campaigns. When the conversion occurs, the same value defined for hbx.hcn is applied to all campaigns converted.

Response Attribute From Current Page URL

Another use for the custom campaign attribute feature is to track query parameter values from the current page URL. An attribute may identify which affiliate sends traffic to your site. Suppose your partner or affiliate (www.securitate.net) is hosting a link for your site (investigate.com). The link has the following href :

Page 135: Hitbox Installation Guide

|Page 123

http://www.securitate.net/investigate/offer/0,911,11026-4520,00.html?securitate=yesoffer

This link opens the following page on your site:

http://www.investigate.com/investigate/offer/0,911,11026-4520,00.html?securitate=yesoffer

You can track campaign responses triggered by the link on the securitate.net site by defining the hbx.hra variable on your campaign response landing page thus: hbx.hra="_P::securitate"; The query parameter securitate is parsed by HBX, and the query parameter value yesoffer is counted as a response attribute for the campaign. The query parameter value yesoffer is then considered the response attribute for the campaign. The HBX detail view of your campaign shows an increase in the count of response attribute "yesoffer" associated with the campaign.

To use the hbx.hra variable in this way, define hbx.cmp (or hbx.dcmp) for the page, and set hbx.hra to a value you believe will be passed in the current page URL. Make sure to prepend the shortcut notation _P:: to the value. For example, create a response page hbx.cmp="BAC-2830"; and define hbx.hra="_P::KW"; Suppose the current page has a URL query containing &KW=Tea+oil. KW is the query parameter and Tea+Oil is the query parameter value. The query parameter value is then counted as response attribute "Tea Oil" for campaign BAC-2830.

HBX page code implemented to prior to V3.5 used the hbx.hqsp variable to capture the response

attribute from the current page URL. The function of this variable is still supported by the HBX V3.5 hbx.js file.

Response Attribute From Referring URL

The same approach can be used to identify keywords as response attributes for a campaign by tracking query parameter values for referring URLs. For example, a book publishing Web site (bibliotekos.com) has a search form. Entering keyword "mother+in+law+tongue" into the search form opens a search results page with the following href

http://search.bibliotekos.com/useng/query.html?la=en&qt=mother+in+law+tongue

A banner ad on the results page links to your Sanseveria and Succulents specialty greenhouse (www.sukkulenta.com) with the following href

http://search.bibliotekos.com/useng/redirect.html?url=http%3A//www.sukkulenta.com/&qt=mother+in+law+tongue&pos=Middle3

You can track campaign responses triggered by the banner ad on the bibliotekos.com site by defining the hbx.hra variable on your campaign response landing page thus: hbx.hra="_R::qt"; The query parameter qt is parsed by HBX, and the query parameter value mother+in+law+tongue is counted as a response attribute for the campaign from the referring URL. The query parameter value mother+in+law+tongue is then considered the response attribute for the campaign. The HBX detail view of your campaign shows an increase in the count of response attribute "mother in law tongue" associated with the campaign.

If instead you want to know if the position of the banner ad influences click-through, change the query parameter thus: hbx.hra="_R::pos"; For the above URL, the query parameter value is Middle3. The query parameter value is then considered the response attribute for the campaign. Campaign responses now are listed under the response attribute "Middle3", incremented each time a visitor clicks on the banner ad.

To use the hbx.hra variable in this way, define hbx.cmp (or hbx.dcmp) for the page, and set hbx.hra to a value you believe will be passed in the referring page's URL. For example, create a response page hbx.cmp="BAC-2830"; and define hbx.hra="_R::qry"; Make sure to prepend the shortcut notation _R:: to the value. Suppose the referring page has a URL query containing &qry=Tea+oil. qry is the query parameter and Tea+Oil is the query parameter value. The query parameter value is then counted as response attribute "Tea Oil" for campaign BAC-2830.

Page 136: Hitbox Installation Guide

|Page 124

HBX page code implemented to prior to V3.5 used the hbx.hqsr variable to capture the response

attribute from the current page URL. The function of this variable is still supported by the HBX V3.5 hbx.js file.

General remarks about response attribute tracking from the current page URL or the referring page URL with the shortcut notations

When implementing response attribute tracking with the hbx.hra variable and the shortcut notation, you can only capture information from the current page URL or the referring page URL, but not both.

When defining hbx.hra using the shortcut notation, use a unique, case-sensitive alphanumeric value conforming to the rules listed in the Illegal Characters section. The name for the portion of the query parameter following the shortcut notation must not interfere with existing definitions of other query parameters, such as the ones listed in the Gateway Variables column.

If the query parameter searched for in the URL query string (either from referring URL or current page) is not matched, then the value for hbx.hra (if defined) is used as the response attribute for the campaign. For hbx.hra to work properly, the page must also be associated with a valid campaign ID capable of triggering a campaign response, that is, by having hbx.cmp or hbx.dcmp defined.

Tracking Keyword Advertising Networks

For tagged campaign implementations, you can create a special kind of conventional static (or conventional dynamic) or lead static (or lead dynamic) campaign using either the on-line or landing page methods for tracking paid keywords. This kind of campaign, called a keyword network campaign, is intended for extracting information about the paid keywords in keyword listings that visitors click on in an search engine or PPC engine or keyword advertising network. Keyword advertising networks tracked by HBX are listed along with the search engines tracked by HBX in Appendix C of the HBX User Manual. The campaign ID is distinguished by the prefix KNC- (for keyword network campaigns) or KNL- (for lead keyword network campaigns). You can also implement a tagless keyword advertising network campaign.

By contrast, the OKC-OrganicKeywords campaign allows you to track typed keywords, that is, the keywords that the visitor enters and searches for in the search engine and for which you have not purchased listings. Read more about the OKC-OrganicKeywords campaign.

In conjunction with HBX, Bid simplifies the tracking and management and analysis of paid keywords that you use in keyword advertising network campaigns.

Implementations of the Keyword Advertising Network campaign

To implement a keyword advertising network campaign, review the list of search engines tracked by HBX in Appendix C of the HBX User Manual. Create a keyword network campaign dynamically, statically in the campaign administration page, or by uploading.

There are three methods for tracking KNC/KNL campaigns. The first involves the on-line method. The second involves changing the page code on the landing and goal pages for the campaign. The final method is the tagless method.

For the on-line method, you simply append &CMP=KNC-<campaign_id> or &CMP=KNL-<campaign_id> to the URL sent by the search engine when directing searcher-visitors to your Web site. When HBX detects the KNC (or KNL) campaign ID in the URL query string from the search engine, two actions occur:

it recognizes a response to a keyword advertising network campaign

it parses the query string for paid keywords and associates the paid keyword with the response to the campaign. HBX identifies the search engine from the referrer information. (But see note below). The search

Page 137: Hitbox Installation Guide

|Page 125

engine flags the paid keyword with a specific query parameter. HBX looks up the query parameter for the search engine and extracts the keyword from the URL query string.

For the landing page method, you designate one of your Web pages as the landing page for the keyword advertising network campaign. This is the page that visitor-searchers will arrive at first after clicking on the paid keyword link (or sponsored link) in the search engine results page. You assign the KNC (or KNL) campaign ID to the hbx.cmp variable (or hbx.dcmp for dynamic campaigns). HBX then identifies the visit to the landing page as a response to the KNC (or KNL) campaign, and parses the URL query string for the keyword. Finally, the paid keyword is associated with the campaign response.

For the tagless KNC (or KNL) campaign, you create a keyword advertising campaign in Step 1 of the Campaign Administration page. Make sure to check the This is a keyword network campaign option. In the response trigger section in Step 2, enter a value in the text box which instructs HBX how to register responses for the campaign. Then assign a specific conversion rule to the campaign, or use a non-specific (global) campaign conversion rule.

Example of registering responses via the online method

The KNC (or KNL) campaign begins with premium space purchased for a keyword via a keyword advertising network such as Yahoo! The keyword appears on the search engine's results page. Suppose that a search via search engine www.metadoginfovista.com for turbodiesel SUV produces a list of search results with a set of highlighted top results. The search engine allows the purchase of keywords, and in return, highlights results containing keywords you paid for. These Sponsored Links can be customized by the keyword buyer to include an HBX keyword network campaign ID. The link on the search engine page http://partner.metadoginfovista.com/74445.aspx?qw=turbodiesel+SUV&CMP=KNC-81023

sends the visitor-searcher to the landing page for your campaign.

HBX then can usually determine which keyword network and query parameter is associated with the referring URL. (See this note.) In this case, they come from the metadoginfovista.com domain, HBX automatically searches for the query parameter qw, that is, the name portion of a name=value pair, and the query parameter value—in this case, turbodiesel SUV. The query parameter value is then considered to be the paid keyword for the campaign. The query parameter CMP flags the campaign ID as KNC-81023. The campaign ID KNC-81023 and keyword "turbodiesel SUV" are stored in the visitor’s cookie.

Note that you can also use an alternative query parameter to flag the KNC (or KNL) campaign ID. Refer to the section on shortcut notations for using another query parameter than CMP.

This example applies equally to lead keyword network campaigns with an ID such as KNL-81024. In the case of the lead keyword network campaign, you simply append the KNL campaign ID to the search engine's query string. The link on the search engine page becomes http://partner.metadoginfovista.com/74445.aspx?qw=turbodiesel+SUV&CMP=KNL-81024

Example of registering responses via the landing page method

The landing page method is identical to the online method described above, except that you define the KNC (or KNL) campaign ID in the page code for the landing page. In this case, the landing page is targeted by the URL http://partner.metadoginfovista.com/74445.aspx?qw=turbodiesel+SUV When the visitor lands on 74445.aspx, HBX gets the campaign ID from the page code, and looks up the search engine as well as the query parameter linked to the search engine. The campaign ID KNC-81023 and keyword "turbodiesel SUV" are stored in the visitor’s cookie. As with the online method, the landing page method also applies to KNL campaigns.

Example of registering responses and conversions via the tagless campaign

In the tagless campaign, simply create a campaign in the campaign administration page and check the This is a keyword network campaign option. In Step 2 of the campaign creation process, select Page name equals and enter a name for the response page for the campaign. Then assign a specific conversion rule to the campaign.

Page 138: Hitbox Installation Guide

|Page 126

Suppose your keyword advertising campaign in Step 1 is KNC-MyKeywrdCamp. You wish to trigger a response to this campaign when the searcher-visitor for big beans lands on page item-Details.asp Enter item-Details.asp in the response trigger field. Create a specific conversion rule for the campaign. For example, define the conversion trigger such that Page URL contains thank_you.asp

Now when the visitor responds to a keyword in a search engine and lands on your item-Details.asp page, a response is incremented for the keyword network campaign KNC-MyKeywrdCamp The big beans keyword in the URL sent from the search engine is associated with the campaign. When the respondent to the KNC-MyKeywrdCamp campaign lands on the order confirmation page thank_you.asp, a paid conversion is counted for the keyword big beans.

Recording conversions for the KNC or KNL campaign (online or goal page methods)

For the goal page method for the KNC or KNL campaign, you can define hbx.gp="LAST"; or hbx.gp="ALL"; or hbx.gp="KNC-<campaign_ID>"; or hbx.gp="KNL-<campaign_ID>"; in the HBX page code. For the online method, you can register a conversion in HBX for a KNC or KNL campaign by specifying in the URL one of the following: &GP=LAST or &GP=ALL or gp=KNC-<campaign_ID> or &GP=KNL-<campaign_ID> in the URL. Refer to the Tracking Conversions section for more information on the differences between defining GP as LAST, ALL, or a specific campaign ID.

A conversion is counted for this campaign when the respondent (the searcher-visitor) who arrived at your site via a typed keyword search completes a purchase or other value-added transaction. This is typically a page event (such as landing on a goal page for the campaign), but the conversion event may also be triggered by a download or a link click, or by landing on a page with custom event code.

This section assumes you use the value LAST for the GP variable. If the keyword clicked on from the search results page is in a sponsored link (such as Google), and the visitor-searcher then lands on the goal page for the campaign where hbx.gp="LAST"; or clicks on a link with &GP=LAST in the URL, HBX credits a paid conversion to the KNC or KNL campaign. If the keyword clicked on from the search results page is part of the non-paid listings, and the visitor-searcher then lands on the goal page for the campaign where hbx.gp="LAST"; or clicks on a link with &GP=LAST in the URL, HBX credits an organic conversion to the OKC-Campaign. If you define hbx.gp="LAST" on the goal page, and the last campaign responded to converts when landing on the goal page, whether it is an OKC or KNC or other campaign.

LAST is the only value allowed for hbx.gp on the order confirmation page for the HBX commerce

module (or &GP=LAST in the URL targeting the order confirmation page). To convert additional campaigns at the same time, create a tagless conversion rule, and apply it to the campaign. For example, you can specify a rule that triggers on the order confirmation page name or goal page.

Because HBX only tracks the keywords associated with query parameters sent by the keyword network, any value coded on the campaign response landing page assigned to the campaign response attribute variable hbx.hra is ignored. This is because the keyword replaces the response attribute on the cookie. Also ignored for keyword network campaigns are any values assigned to alternate query names variables for campaign response attributes (hbx.hra="_P::<query_string_parameter>"; or hbx.hra="_R::<query_string_parameter>";), normally parsed in the URL query string.

If the respondent to a keyword network campaign later responds to the same keyword network campaign with a different keyword before a conversion occurs for the original keyword network campaign, the information about the original paid keyword is lost. HBX keeps only the most recent information for the paid keyword and search engine URL when analyzing URLs that send keyword network respondents to the same campaign to your site.

The paid keyword corresponds to the attributes of the KNC campaign.

Page 139: Hitbox Installation Guide

|Page 127

In the past HBX extracted the paid keyword for KNC or KNL campaigns simply by parsing relevant information from the referring URL. Depending on the outlet and the keyword query parameter found in the URL, HBX then identified the keyword automatically. Now, HBX will look first for a value associated with the HBX_TK or HBX_PK query parameters you have attached to the page URL for the typed or purchased keyword. If a value is found for HBX_TK query parameter, that keyword it is considered a typed keyword. If a value is found for the HBX_PK query parameter, that keyword is considered a purchased keyword. the If no value is found, then HBX

attempts to extract the keyword from the page URL. HBX cannot however always track keywords from a referring URL. In particular, new search engines or outlets may not yet be recognized by HBX. Another case is if the outlet does not use a conventional search query parameter. Thus in these cases where the keyword is not extracted automatically, the most reliable tracking approach is to attach the HBX_PK query parameter to the page URL for the purchased or typed keyword.

Uploading Keyword Costs

If you track keyword campaigns (KNC or KNL campaigns), you can send a file to HBX that contains keywords and associated daily cost information. Data in this file must be formatted as outlined below. Once the keyword cost information is updated, you will notice a change in metrics in the Acquisition Sources reports related to keywords, including Purchased Keywords and Outlets.

Before you upload keyword costs, contact your Accounts Manager. If you have both an HBX account and

a Bid account, this feature is not available. Because certain outlets (such as Miva) do not support cost data associated with the local time zone, the cost data uploaded here may not match local HBX cost data such as revenue and conversions.

To upload a keyword costs file, click on the button at the top of the Purchased Keywords or Outlets reports. An upload file dialog box appears. In the text box for the dialog, enter the full path to a properly formatted keyword costs file, or click on Browse to locate the file.

Format

By convention, the name of the keyword costs file is CUSTOMER.csv. The file name cannot contain embedded or trailing spaces.

The file must be an ASCII text file. HBX does not accept this file in UTF-8 encoding. Each line of the file contains a record. Each record consists of the following fields of information:

date purchased keyword (optional) typed keyword (optional) outlet ID HBX account ID (optional) HBX keyword campaign ID cost

Tip

Tip

Page 140: Hitbox Installation Guide

|Page 128

Create a file containing data for each of these fields, and separate fields by a comma. Data must be provided for all fields in the file.

Sample File

For example, you wish to upload these keywords and daily costs: lasso (cost $15.50) and saddle (cost $25.00). In addition to the keywords and daily costs, the following information is also required:

date is the current date in the format MM/DD/YYYY where MM and DD represent zero-padded numerical month and day, and YYYY represents the four-digit year. Example: 11/01/2005

purchased keyword. Enter a keyword you purchased from a pay-per-click engine. Only one keyword per line is allowed. Example: lasso saddle crupper

(optional) typed keyword. Enter a related keyword that might be typed when a person launches a query in a search engine or pay-per-click engine. Only one keyword per line is allowed. Example: cowboy cow boy black leather horse

(optional) outlet ID is an integer value. Refer to the chart of outlet IDs. Example: 55 [55 is the ID for outlet Kanoodle]

HBX account ID is the ID of your HBX account used to track these keywords. Example: DM3000000EFGH

(optional) HBX keyword campaign ID is the ID of the KNC (or KNL) campaign associated with the keyword Example: KNC-100200300

cost is the daily monetary amount associated with the keyword. The amount may be expressed in decimal format precise to two digits in the mantissa, or you may enter an integer number. Do not use a currency marker such as $ or € Examples: 15.50 25

A sample file for these keywords may look like this:

10/14/2007,lasso,,,DM3000000EFGH,,15.50

10/14/2007,crupper,,,DM3000000EFGH,,25

Make sure data entries in the CUSTOMER.csv file follow the guidelines for illegal characters.

Page 141: Hitbox Installation Guide

|Page 129

Outlets differ in the number of characters allowed for keywords. Keyword limits for outlets supported by Bid:

Google up to 10 words for a total of 80 characters (such as nine 7-character words plus one 8-character word)

Yahoo! a total of 100 characters

Miva a total of 50 characters

Tracking the Organic Keyword Campaign

You can use a special non-modifiable campaign to track automatically any unpaid keywords associated with listings in a search engine. These are keywords (called typed keywords) entered by the visitor in the search engine. Refer to the list of outlets and search engines recognized by HBX in the User Manual appendix.

By contrast, the Keyword Network Campaign (KNC or KNL campaign) allows you to track paid keywords, that is, the keywords you purchased listings for. Read more about tracking paid keywords with the Keyword Network Campaign.

This campaign has most of features found with any other other conventional or dynamic two-step HBX campaign. Note however the following distinctions of this campaign:

The ID for this campaign is always OKC-OrganicKeywords (short for Organic Keywords Campaign).

The OKC-OrganicKeywords campaign cannot be a lead (three-step) campaign.

Only one OKC-OrganicKeywords campaign exists per account.

The OKC-OrganicKeywords campaign is tracked for each account listed on the landing page.

It appears first in the list of campaigns in the campaign administration page.

You can enable or disable this campaign via the adjacent checkbox in the list of campaigns. Read the NOTE below before disabling the campaign.

You cannot define tagless triggers for this campaign.

You cannot import or export information about the OKC-OrganicKeywords campaign via a daily cost definition file or campaign definition file.

A response to the OKC-OrganicKeywords campaign is generated automatically when the visitor types in a keyword in the search engine, and then clicks on a link in the search results page

FIELD NUMBER

FIELD DATA TYPE LENGTH/SIZE LIMIT (IN

CHARACTERS)

EXAMPLE FORMAT REQUIRED

1 DATE DATE N/A 10/14/2007 MM/DD/YYYY YES

2 PURCHASED KEYWORD

ALPHANUMERIC SEE NOTE BELOW LASSO N/A YES

3 TYPED KEYWORD

ALPHANUMERIC SEE NOTE BELOW COWBOY N/A NO

4 OUTLET ID NUMERIC N/A 55 TWO OR THREE-DIGIT

INTEGER

NO

5 HBX ACCOUNT ID

ALPHANUMERIC 12 DM3000000EFG N/A YES

6 HBX CAMPAIGN ID

ALPHANUMERIC 24 KNC-100200300 N/A NO

7 COST FLOAT N/A 15.50 0.00 YES

Page 142: Hitbox Installation Guide

|Page 130

that sends the visitor to a page on your Web site. Changing the code on the landing page is not required for this campaign.

A conversion is counted for this campaign when the respondent (the searcher-visitor) who arrived at your site via a typed keyword search completes a purchase or other value-added transaction. This is typically a page event (such as landing on the goal page), but the conversion event may also be triggered by a download or a link click, or by landing on a page with custom event code.

If the respondent has also visited another campaign response page, then HBX counts a conversion for the last campaign responded to (if hbx.gp="LAST"; or &GP=LAST or a custom conversion rule specifies the landing page) as well as a conversion for the OKC-OrganicKeywords campaign.

LAST is the only value allowed for hbx.gp on the order confirmation page for the HBX commerce

module (or &GP=LAST in the URL targeting the order confirmation page). To convert additional campaigns at the same time, create a tagless conversion rule, and apply it to the campaign. For example, you can specify a rule that triggers on the order confirmation page name or goal page.

The value associated with a conversion for the OKC-OrganicKeywords campaign is the value associated with the goal page. This value is derived from one of the following:

the value assigned to the variable hbx.cnv or

the value of the purchase if the landing page is an order confirmation page

the value assigned via a custom conversion rule.

The only attribute of the OKC-OrganicKeywords campaign is the keyword typed by the visitor in the search engine. This keyword is considered to be an organic keyword because a listing for the keyword was not paid.

The OKC-OrganicKeywords campaign is an automatic campaign that exists to provide conversion metrics to organic search terms. Disabling the OKC-OrganicKeywords will prevent any conversions from being associated with organic keywords, but HBX continues to collect data about clicks, referring clicks, visits, organic visits, and the historic conversion data remains. While enabled, this campaign may have an unexpected effect on other campaigns since now organic searches will receive conversion credit and may take precedence over other campaigns for conversion credit. Note that these effects appear in campaigns within twenty-four hours if you enable or disable this campaign.

The campaign might begin with a keyword typed in by a visitor to an outlet. The keyword listing appears on the outlet's results page connected with a particular keyword. Visitors clicking on the unpaid listings in the outlet are redirected to a page on your Web site.

To illustrate the organic keyword campaign, imagine that a search in outlet www.metadoginfovista.com for turbodiesel SUV produces a list of search results displayed as non-paid listings. Non-paid listings can be customized by the Web site when it sends keywords to the outlet to be included in the keyword database.

On the goal page for the OKC-OrganicKeywords campaign, use the definition hbx.gp="LAST"; Or, with the on-line method for tracking conversions, use &GP=LAST in the URL for the campaign. When the visitor with the OKC-OrganicKeywords campaign information on the cookie lands on the goal page, a conversion occurs for the campaign and is associated with the typed keyword.

Tip

Page 143: Hitbox Installation Guide

|Page 131

If the respondent to the OKC-OrganicKeywords campaign later responds with a different keyword before a conversion occurs for the keyword tracked originally by the OKC-OrganicKeywords campaign, the information about the original keyword attribute and the referring domain is lost. HBX keeps only the most recent information for the keyword attribute and referring domain URL when analyzing URLs that send the OKC-OrganicKeywords campaign respondents to your site.

Tracking Conversion Value

A respondent who converts the campaign by arriving at the goal page can trigger the addition of a (monetary) value associated with the conversion. You set this value on the campaign's goal page by defining the hbx.hcv variable and by selecting actual value (value per-conversion) in the campaign administration page. Because you can have up to 20 different goals per campaign, you can have up to 20 different conversion values, with a different value for each goal page. But you can have only one conversion value defined per goal page.

For Salesforce.com campaigns, the goal value (conversion value) corresponds to an amount based on value of a product(s) associated with a won opportunity.

For tagless campaigns, the conversion value corresponds to one of two values: either (1) the value assigned to the specific conversion that forms the conversion trigger for the campaign

or (2) the conversion value assigned in Step 1 when creating the campaign

If the conversion value comes from (2) above, it replaces any conversion value assigned to the conversion in (1).

Suppose your previously owned car parts auction site launches a banner ad campaign in affiliation with a search engine site. You code the hbx.hcv variable on the goal page. You want to show that visitors respond by clicking the search engine banner ad, leading to purchases (and therefore conversions to the campaign). The value of this conversion then becomes part of the calculation for return on investment and click-through ratios. You also code the hbx.hcn variable to track an attribute for the conversion page. Each conversion of the campaign shows this page-specific value instead of an average conversion value.

To track conversion values, define the hbx.hcv variable on the goal page only. The page must be associated with a valid campaign ID capable of triggering a campaign conversion (either by having hbx.gp or defined in the goal page or via on-line method) in order for HBX to track conversion value for the page. In addition, you must specify that the campaign use actual value during conversion. You set this in the campaign administration page, or when uploading campaigns.

If you want to analyze the contributions of landing pages, lead designation pages, or campaign conversion pages to the overall conversion value, you can track conversion value associated with each via attributes or keywords. You can also track which of your referring domains led to the greatest conversion value. To do this for a particular campaign, define hbx.hra on the response page and the variables hbx.hcn and hbx.hcv on the goal page. Each time the static (or lead) campaign converts, a conversion value is incremented for the response attribute, the response/goal attribute, the conversion attribute, and the referring domain (if applicable).

Suppose more than campaign is defined on the goal page, and a conversion is counted for all the campaigns. When the conversion occurs, the same value defined for hbx.hcv is applied to all campaigns.

To allow overhead for calculation, HBX limits the conversion value you can enter for a single campaign to an amount less than $10,000,000,000.00 in the campaign administration page or when uploading campaigns. You can use decimal values (up to two digits) when defining the conversion value variable.

Tip

Tip

Page 144: Hitbox Installation Guide

|Page 132

Tracking Campaign Classification

HBX allows you to track specific response data associated with classifications created for an HBX or salesforce.com campaign. You can track response classification data for campaigns with the on-line tagless method or the landing page method.

Before you start to write code for campaign classifications, consider how you wish to design the campaign classification scheme. Then, depending on the implementation method, create URLs that send classification data to HBX (for the on-line tagless method) or place code on campaign response landing pages (the landing page method).

Note Tracking campaign classification is available for any HBX or salesforce.com campaign, but does not apply

to the OKC-Campaign. Campaign classification is tracked only when a visitor responds to a campaign, not

when the respondent's action converts a campaign.

You should trigger the campaign with a unique value using something other than the classification parameters. Because the goal of tracking campaign classification is to trigger campaign responses from multiple values, you want to ensure multiple values are passed for the parameter.

Assumptions

For these examples, assume that you have already created the campaign classification scheme, and assigned default parameters.

Assumptions common to campaign classification response and conversion goal examples

the HBX campaign ID is EMC-EmailExternal

Classification 1 is Location

values for the Location classification include California and Utah

the default parameter for the Location classification is region

you track email generated by an external marketing service. The external service provides a unique ID for emails.

one of these IDs is Email05578

the site name is http://www.holistiquehealth.com

Response assumptions

the response landing page for the campaign is contactus.jsp

the campaign.c1 variable holds the value of Classification 1

Conversion assumptions

the visitor has already responded to the EMC-EmailExternal campaign

the Location value Utah is included in that response.

the goal page is bookings.jsp

the campaign goal attribute variable is hbx.hcn

the value of the campaign goal attribute is phase1

On-line tagless

1. For the campaign EMC-EmailExternal, define a response trigger in step 2 of the Campaign Administration Page

Page 145: Hitbox Installation Guide

|Page 133

2. Enter criteria for the response trigger corresponding to something in the URL unique for

this campaign.

3. For this example, enter this criteria in the response trigger field: Page URL contains &cmp=Email05578

4. The external service adds a link to the email http://www.holistiquehealth.com/contactus.jsp?cmp=Email05578&region=California

5. When a recipient clicks the URL in the email, HBX registers a response to the EMC-

EmailExternal campaign.

6. HBX also adds the value California under the Location classification associated with the campaign.

7. Make sure that the external service includes properly coded clickable links in the email.

8. Note that the response trigger is case-sensitive for certain values of the criteria. Read more about values allowed in campaign triggers.

Tagged

1. On the response landing page contactus.jsp for the campaign EMC-

EmailExternal, add this code: hbx.cmp="EMC-EmailExternal"; ... var campaign = _hbEvent("cmp"); campaign.c1="Utah";

2. When the visitor lands on contactus.jsp containing these lines of code, HBX registers a response to the campaign.

3. HBX also adds the value Utah under the Location classification (Classification 1) associated with the campaign.

Campaign Hierarchy Goal

The campaign hierarchy goal is an attribute that you associate with a classification upon conversion of the campaign. The goal attribute allows you to refine results of the conversion information collected for campaigns. This example demonstrates the landing page method.

Tagged

1. On the goal page bookings.jsp of the EMC-EmailExternal campaign, add this code: hbx.gp="EMC-EmailExternal"; hbx.hcn="phase1";

2. When the visitor lands on the goal page containing these lines of code, HBX registers a conversion for the campaign.

3. HBX also includes the goal attribute phase1 with the conversions registered for the

campaign where California is part of the Location classification (Classification 1)

Page 146: Hitbox Installation Guide

|Page 134

Salesforce.com® Background

Salesforce.com is an on-line tool for managing customer relationships, enabling you to track leads, follow deals through pipelines, integrate client information from customer calls. You can perform sophisticated real-time queries of customer information stored in the on-line database.

When you login to your account on Salesforce.com, you are presented by default with tabbed views for:

Campaigns

Leads

Accounts

Contacts

Opportunities

Forecasts

Cases

Documents

Reports

Campaigns

In the Campaigns tab, you can review the Salesforce.com campaigns you have created in HBX. To create either Salesforce.com campaigns or Salesforce.com campaigns, the administrator must enable the user as a "Marketing User".

Note that while in Salesforce.com Campaign tab, you cannot directly modify information that you entered in HBX about the Salesforce.com campaign, such as the attribute label, the campaign description, the ending date, the cost model or cost, or the audience size. These parameters are available for editing in the Campaign Administration screen.

Note also that the name of the Salesforce.com campaign in Salesforce.com corresponds to the description of the campaign in HBX. If you change the description of the Salesforce.com campaign in Salesforce.com, the name of the campaign does not change in HBX.

Leads

In the Leads tab of Salesforce.com, a campaign is "a marketing initiative conducted to build brand awareness or generate new leads". You use a campaign to store data essential to the campaign and to trigger sales opportunities and revenue.

Acting on the Lead

Once the campaign has been launched, and a visitor has arrived at the "Thank You" page, the Salesforce.com user must take certain actions with the lead generated by the Web-to-Lead form to ensure that the campaign shows conversions in HBX.

These actions may include, in this order:

assign a lead to a new account

attach a lead to an existing account

assign a lead to a new contact

assign a lead to an existing contact

Page 147: Hitbox Installation Guide

|Page 135

create an opportunity

HBX counts conversions for newly assigned leads only if the newly assigned leads are classified as "Won Opportunity".

One-to-Many / Many-to-one Relationships in Salesforce.com

In Salesforce.com, many options exist for associating leads with account, contacts, and opportunities. These combinations can affect the conversion data presented by HBX.

For example:

one lead can be associated with one contact

several leads can be associated with one contact

one lead can be associated with one account

several leads can be associated with one account

one contact can be associated with one opportunity

one contact can be associated with several opportunities

several contacts can be associated with one account

one contact can be associated with one account

While it is possible to associate several contacts with one opportunity, Salesforce.com does not recommend this.

For more information

For more information about Salesforce.com, visit their Website, or read their frequently asked questions page.

Definitions and Comparison of HBX and Salesforce.com Terminology

In the Salesforce.com column, n/a indicates that:

the HBX term has no meaning in Salesforce.com or

the HBX term has no relationship to the definition of the term in Salesforce.com

TERM

HBX SALESFORCE.COM

CAMPAIGN RESPONDER N/A

CAMPAIGN RESPONDER WHO HAS

LANDED ON THE "THANK YOU" PAGE

LEAD

NEW LEAD LEAD WHO HAS LANDED ON THE "THANK YOU" PAGE FOR THE

FIRST TIME EVER

CONVERTER LEAD ASSOCIATED WITH WON OPPORTUNITY

CONVERSION ADMINISTRATIVE TASK OF SALESFORCE.COM USER INVOLVING

ASSOCIATION OF A LEAD WITH A WON OPPORTUNITY

NEW CONVERTER LEAD ASSOCIATED WITH WON OPPORTUNITY FOR THE FIRST TIME

Page 148: Hitbox Installation Guide

|Page 136

EVER

REPEAT CONVERTER LEAD ASSOCIATED WITH WON OPPORTUNITY WHO RESPONDS

ONE OR MORE TIMES TO SAME CAMPAIGN

LOYAL CONVERTER

(A LOYAL CONVERTER IS A SUBSET

OF REPEAT CONVERTERS)

LEAD ASSOCIATED WITH WON OPPORTUNITY AND WHO AGAIN

RESPONDED ONE TIME TO THE SAME CAMPAIGN

LEAD ATTRIBUTE N/A

CONVERSION RATE (RESPONSES /

LEADS)

N/A

CAMPAIGN COST

(VALUE ASSIGNED IN CAMPAIGN

ADMINISTRATION PAGE)

N/A

CAMPAIGN VALUE (CONVERSIONS X

CONVERSION VALUE)

TOTAL AMOUNT ASSOCIATED WITH ALL WON OPPORTUNITIES FOR

A CAMPAIGN FOR A GIVEN DATE RANGE

GOAL VALUE REVENUE PER PRODUCT (AN AMOUNT BASED ON VALUE OF A

PRODUCT ASSOCIATED WITH A WON OPPORTUNITY FOR A

CAMPAIGN)

ROI (CAMPAIGN VALUE / CAMPAIGN

COST)

N/A

GOAL (CAMPAIGN GOAL OR GOAL

ATTRIBUTE)

A PRODUCT ASSOCIATED WITH AN OPPORTUNITY

Defining/Comparing HBX and Salesforce.com Terminology

Tracking Custom Events

In HBX, custom (or user-defined) events are a generalized version of custom-defined conversions. Unlike custom conversions, custom events are defined in the HBX page code. (Note that while a custom conversion may be defined in the HBX page code, the preferred method is to define it in the HBX interface.) Like events, you can use custom events for greater flexibility in tracking important visitor activity on your Web site not typically tracked via standard HBX reporting. HBX provides reports on two types of custom events that you can add to your Web pages:

internal and external search events and

link tracking events.

The following sections detail

how to track external and internal searches

a script for populating HBX page code with data on keywords submitted in a search

how to implement link tracking with custom events

and how to track number and value of conversions for custom events.

Page 149: Hitbox Installation Guide

|Page 137

For information on reading the Internal Search and Link Analysis reports based on data generated by custom events, refer to the HBX user manual.

External Search Tracking

Just like tracking internal searches in HBX, you can place custom event code on the response page for a keyword network campaign (KNC or KNL campaign). This response page should contain keywords you wish to track when the visitor visits the page (that is, responds to the campaign).

An easier alternative way for tracking and managing keywords in conjunction with keyword campaigns on your Web pages is to use Bid.

If for example you have a KNC or KNL campaign centered on Bluetooth headsets, you track the purchased (or paid) keyword Bluetooth by placing the following at the appropriate place in the HBX page code for the response page for that campaign.

var esev1 = _hbEvent("es");

esev1.pk = "Bluetooth";

Note that you can only place one custom event relating to external or internal searches per campaign response page. In addition, you can only send one keyword in the custom event code.

External search variables are inserted into the HBX page code after the comment

//INSERT CUSTOM EVENTS

but before the comment:

//END EDITABLE SECTION

You may give the custom event variable (esev1 in the preceding example) any name valid for a JavaScript identifier. Any data submitted as values for the keywords must meet restrictions listed in the Illegal characters section. You must however precede the custom event name with the JavaScript identifier var. In addition, the right-hand side of the definition must contain

_hbEvent("es");

For HBX to track external search custom events sent by visitor-triggered searches, you must also provide a valid string value assigned to the esev1.pk variable.

Internal Search Tracking

You can track various search parameters by adding custom HBX event code on pages containing search terms. A server-side script (such as a perl/.cgi or .asp script) should be used to populate the custom event code on these pages. Refer to Appendix J for a sample perl script.

Suppose you have search functionality built into the home page on your Web site. The form for submitting information has several options, including search by keywords, search by category of product, search by brand name, advanced search, search in this site or on the Web (for a content-based site), search for map, search for images. When a visitor enters information in the form, a script is launched that assigns the value of keywords and options submitted by the visitor to variables in the custom events section of the HBX page code.

Internal search variables are inserted into the HBX page code after the comment

//INSERT CUSTOM EVENTS

but before the comment:

//END EDITABLE SECTION

After values for variables are assigned and before the information is sent to the HBX data center, a typical custom event section may have the following form, once values entered by visitor are assigned to the custom event section of the HBX page code:

var ev1 = _hbEvent("search"); // required definition to create custom event ev1.keywords = "parka"; // required value

Page 150: Hitbox Installation Guide

|Page 138

ev1.results = "0"; // integer value required. Any number of results, or 0 to have the keyword displayed in the Failed Keywords report ev1.attr1 = ""; // optional, can be any string search attribute ev1.attr2 = "category"; // optional, can be any string search attribute ev1.attr3 = ""; // optional, can be any string search attribute ev1.attr4 = ""; // optional, can be any string search attribute

The first two lines of this code (marked required in the comments) must appear in the custom event section if you plan to implement this custom code. You may give the custom event variable (ev1 in the example) any name valid for a JavaScript identifier. Any data submitted as values for the search variables must meet restrictions listed for page code variables in the Illegal characters section. You must however precede the custom event name with the JavaScript identifier var. In addition, the right-hand side of the definition must contain

_hbEvent("search");

For HBX to track internal search custom events sent by visitor-triggered searches, you must also provide a valid string value assigned to the ev1.keywords variable. In addition, you must assign a valid integer value to the ev1.results variable. Note that if ev1.results = "0"; HBX will display the keyword submitted by the visitor in the Failed Keywords report.

The following table lists variables related to internal search that are used in the custom events section of the HBX page code. Note that when defining the custom event, you substitute the <sname> listed in the table below with the name assigned to the _hbEvent("search") In the example above, ev1 is the name assigned to this internal search custom event.

VARIABLE ITEM TO TRACK TYPE REQUIRED?

<sname>.keywords SEARCH KEYWORDS STRING YES

<sname>.results NUMBER OF RESULTS INTEGER YES

<sname>.attr1 ASPECT OF KEYWORD OR

SEARCH

STRING NO

<sname>.attr2 ASPECT OF KEYWORD OR

SEARCH

STRING NO

<sname>.attr3 ASPECT OF KEYWORD OR

SEARCH

STRING NO

<sname>.attr4 ASPECT OF KEYWORD OR

SEARCH

STRING NO

HBX Internal Search Variables

When you implement just the <sname>.keywords variable in the custom event section of the HBX page code, the Top Keywords report of the HBX internal search reports will display a list of keywords. The keywords displayed in this report correspond to all the keywords captured by your search form submission script and matched by a results page.

If you implement the <sname>.attr1 through <sname>.attr4 variables in the custom event section of the HBX page code, HBX internal search reports, nominally called Attribute 1 through Attribute 4, become available. The information made available by HBX in these reports corresponds to the items collected by these four variables. For example, the attr2 variable may be used for categories if values (such as winter wear, sports attire, lingerie) describe a category of search available on your site.

In order to view the information from these reports, you must enter a name for Attribute 1 through Attribute 4 in the HBX Downloads and Administration area > Edit Account page. Even if you change the name in the HBX Downloads and Administration area > Edit Account page, you can always tell which tab corresponds to which

Page 151: Hitbox Installation Guide

|Page 139

attribute number by examining the HBX HTML interface title bar. You will see a label such as HBX (Search Attribute 1). You should assign a different name to the tab in the internal search reports that suits the kinds of information displayed by the attributes.

If a visitor submits more than one keyword during a session, you can view these next keywords submitted in the searches. These related keywords are listed in the Internal Search > Related Searches report. If a search for certain keywords are not matched by results, you can identify these keywords in the Internal Search > Failed Keywords report.

Conversion Tracking

A conversion can be understood loosely as a change in the cookie information associated with a visitor once certain conditions are met (such as performing certain on-line actions and/or landing on a Web page, known as an event). A conversion can also be associated with a value.

For a simple example, if a visitor responds to an HBX campaign by visiting a response page where the campaign is coded, the cookie stores information about that campaign. This first visitor action is the response event. Once the same visitor lands on a goal page for the campaign, HBX modifies the information on the cookie about that response. In order to land on the goal page, the visitor often must satisfy an e-business goal, such as submit a form to sign up for a service, make a purchase, click on a banner ad, and so forth. This second visitor action is called the conversion event. After landing on the goal page, the cookie indicates that the campaign has converted for that visitor. If the goal page has an associated value, it is also included in the change in cookie information.

Conversions are not confined solely to landing on goal pages, but to a number of situations which are either pre-defined by HBX or which you can custom define, based on page name, content group, link ID, URL, or form submit name. In this way, HBX generalizes this process of changing cookie state information.

HBX recognizes three built-in (pre-defined) conversions and associated conversion values:

For an HBX campaign, the conversion page is defined by assigning a campaign ID to the hbx.gp variable, while its conversion value corresponds to the value assigned to the hbx.hcv variable.

For an HBX funnel, the conversion page is indicated by a c in the level definition of the hbx.fnl variable.

For the HBX commerce module, the conversion page contains the order confirmation page code, and the corresponding value of the conversion is the sum of the comma-delimited values assigned to order variable _pc.

Conversion events and associated values for these three built-in conversions are tracked in campaign and funnel reports for HBX and in the majority of reports for the HBX commerce module.

If you wish to custom define conversion events to access greater detail about visitor behavior on your Web pages, you may trigger a conversion event using page name, content group, link ID, URL, or form submit name. Read more about creating custom definitions for a conversion and conversion groups in the conversion administration section.

Conversion Administration

The conversion administration page allows you to create, edit, and delete custom definitions for a conversion and to create conversion groups. Custom-defined conversions (also known as conversion rules) are specific to an HBX event, while conversion groups may include one or more custom-defined conversions. You can click on a small help icon for a brief explanation of technical concepts introduced in this page.

A custom conversion (or conversion rule) consists of the following elements:

the name of a conversion rule

Page 152: Hitbox Installation Guide

|Page 140

a conversion trigger (the event which triggers the conversion. These events include landing on a page with a specific page name or URL, clicking on a specific exit link or a link tagged with an ID, or downloading a specific file).

an optional conversion value (a numerical value)

an optional conversion goal (identifies an attribute associated with the conversion)

optional advanced conversion settings specifically for campaign conversions

Page names and URLs in conversion rules are case-sensitive.

Once you have created a custom-defined conversion, HBX displays in the conversion administration page a table listing:

the name of the conversion rule

and columns of checkmarks indicating:

whether a response to a campaign is needed before the conversion can occur

whether the conversion rule is associated with one or more specific campaigns

whether the conversion rule should apply to all eligible campaigns, or simply to the last eligible campaign responded to

The set of campaigns eligible for conversion are those satisfying the conditions specified in the conversion rule. Read more about these conversion parameters in the Advanced Settings section. There is no limit on the amount of conversion rules you can create.

To count custom metrics, respond to campaigns, designate leads or convert campaigns defined in the HBX page code for events such as downloads, internal searches, link views, etc. (non page-view events), you must upgrade to the latest version of the hbx.js file.

Creating a custom-defined conversion

To start creating a custom-defined conversion, select Site Tools and Reporting > Administration > Conversion Rules. The conversion administration rules page opens. When you first open the conversion administration page, you will not see any conversion rules listed. (But, read this Note for users of the conversion administration feature in the initial release of HBX.)

The Create Conversion Rule page is divided into two tabs. The first tab displays Rule Settings, and the second lists Advanced Settings.

To create the conversion rule, click New. The Create Conversion Rule screen opens.

Rule Settings tab

Enter a conversion rule name. It is suggested that you enter a unique, easily recognizable name to identify the conversion.

Build an event filter in the conversion trigger section, using a selection from the dropdown menu. Enter a value in the text box to complete the expression

The dropdown menu provides these choices: - Page URL contains

Page 153: Hitbox Installation Guide

|Page 141

- Page Name equals (page name is short for complete page name, that is, Content group/page Name) equals - Link ID equals - Exit Link equals - Download equals

The type of data and value entered in the text box should be appropriate to the complete expression. Data types include text (page name, URL, string fragment) and number (integer, floating point number). Because HBX allows you to build event filters using partial information, you can enter just a fragment of the URL. When selecting content groups or page names currently tracked by HBX, you may

click on the icon on the right side of the text field. When you click on the icon, a browser window pops up allowing you to enter search criteria. Read more about the HBX Search Utility. Here are possible values you can enter in the text box. - Exit Link, enter a fully qualified URL (http://www.mixitup.com/cancel.jsp) - for Page URL, enter any portion of a fully qualified URL (mixitup.com) - for Page Name, enter an entire page name preceded by the content group name (/cashier/paypal.htm) - for Link ID, enter a link ID corresponding to the value of the lid variable assigned to a page on your site - for Download, enter the name of a file likely to be downloaded by a visitor (grater.fla)

The field conversion value is optional. If you wish to assign a value to the conversion, enter an amount in the text box. You may enter a whole number or a fractional value, up to two decimal places (such as 10 or 159.99). A value you assign to the conversion can be overridden by any value you enter in the optional Conversion Value textbox in Step 1.

The conversion goal field is optional. The goal is an attribute associated with the conversion. This goal appears in the Goal Report Detail View when conversions are registered. If you do not enter a value here, HBX will use the name of the conversion rule you create here as the conversion goal. The conversion goal you assign here is overridden by any conversion goal assigned to the hbx.hcn variable, if that variable is defined on the same page as the one associated with the conversion trigger.

Advanced Settings tab

The Advanced Settings tab of the Create Conversion Rule page presents three options that apply to the conversion rule specified in the Rule Settings tab. The first option is more general and provides an additional constraint on the conversion rule. The other two options are specific to conversion rules applied to a campaign. In these options, eligible campaign refers to any campaign meeting criteria specified in the conversion rule.

If you wish to tie the conversion rule to a prior response, enable the Require response to convert checkbox. If selected, in order for an event to satisfy this conversion rule, a prior response to an eligible campaign is required. If not selected, a prior campaign response is not required.

If you want HBX to convert only certain campaigns when specified criteria in the conversion rule are met, enable the Convert only specified campaigns checkbox. If selected, this conversion rule will only apply to campaigns specifically associated with the rule during Step 2 of the campaign creation process in the Conversion Information section. If not selected, this conversion

Page 154: Hitbox Installation Guide

|Page 142

will only convert campaigns which have no specific campaign conversions defined during the campaign creation process in Step 2.

If you want the conversion rule to apply to all visitor responded-to campaigns which are both eligible for the conversion rule and which satisfy conversion conditions, enable the Convert all campaigns checkbox. If selected, this conversion filter will convert all eligible campaigns to which a visitor has responded. If not selected this conversion filter will only convert the last eligible campaign responded to by the visitor.

EXAMPLE OF CREATING A CUSTOM-DEFINED CONVERSION

Suppose you wish to convert a newsletter signup campaign based on whether the content/page name equals CONFIRMATION.HTM. In addition, you wish to display the revenue generated whenever a visitor converts the campaign. First create the conversion rule, and then create the newsletter signup campaign in the campaign administration page.

In the conversion administration rules screen, click New.

Enter a name, such as NL-confirmation.

From the dropdown menu, select Page Name equals.

In the text box adjacent to the dropdown menu, enter /signup/confirmation.htm

In the Conversion Value box, enter an amount, such as 100.00.

Since this newsletter campaign is a standard response > conversion campaign, and you wish to make the conversion contingent on a response, enable the Require response to convert box.

Since you want this conversion to apply only to the newsletter campaign, enable the Convert only specified campaigns box.

Leave the Convert all campaigns box unchecked.

Click Finish. When the page refreshes, you see NL-confirmation conversion listed in the table, with checkmarks in the Response required and Specified only columns.

Editing a custom-defined conversion

To edit a custom-defined conversion, select the radio button next to a conversion rule in the list, and then click the Edit button. The Edit Conversion Rule window is displayed, where you can make changes to the rule. Any changes must conform to character size and character types described in Illegal Characters. Click the Finish button to save your changes.

Deleting a custom-defined conversion

To delete a custom-defined conversion, select the radio button next to a conversion rule in the list, and then click the Delete button. HBX prompts you to confirm the deletion of the rule. Click OK to delete the conversion. When the page refreshes, the conversion rule no longer appears in the list. In addition, the rule no longer appears in the list of stored conversion rules in the Edit Conversion Rules page.

Conversion Groups

On the conversion administration page under the Conversion Groups tab, you edit conversion groups. The conversion group is a combination of one or more user-defined conversions. After defining a conversion rule and placing it in a conversion group, HBX tracks conversion groups based on the sum of rules established for all the conversions in the group.

For HBX, the number of conversion groups is fixed. There are three built-in (pre-defined) conversion groups, and ten customizable conversion groups. Unlike conversions, you cannot delete a conversion group, but you can edit a conversion group.

Page 155: Hitbox Installation Guide

|Page 143

In HBX reports where conversion information is featured, only the name and data (number of conversions, conversion value) of the conversion group is displayed. Data from custom-defined conversions is not shown in reports unless the conversion is associated with a conversion group. Thus to show conversion information in any HBX reports, you must first create a user-defined conversion, and then place the conversion in a conversion group.

Editing a conversion group

To edit a conversion group, you must first create one or more conversion rules. Once you have created a conversion rule, select the radio button next to one of the conversion groups listed under this tab, and then click on the Edit button. Prior to editing the conversion group, each conversion group has the default label Conversion Group n, where n is a number between 1 and 10.

When the Edit Conversion Group page appears, three boxes are displayed.

Conversion Group Name

Stored Conversions

Conversions in this Group

In the Conversion Group Name textbox, enter a unique name for the conversion group. Considering that the group combines all conversions, it is suggested to give the conversion group a generic name that captures the meaning of its constituent conversions. For example, if you edit a conversion group containing conversions Email-ad and Banner-ad, you might name the conversion group On-Line. Also remember that HBX displays this conversion name in reports containing conversion information.

In the Stored Conversions list box, HBX displays a list of all conversions you have created previously.

In the Conversions in this Group list box, HBX displays one or more conversions added to this conversion group. To move a conversion between these two list boxes, highlight the conversion in one list box and click on the < or > buttons to move it to the other side. To save the conversion group membership information, click the Finish button.

Specifying custom-defined conversions as a custom event in HBX page code

While it is more common and simpler to build a custom-defined conversion using the conversion administration page, HBX also allows you to insert special code (a custom event) in the page code. This code specifies that the page should trigger the counting of a custom event by HBX.

To implement this code, you must first create a custom-conversion as outlined in the section on creating a custom-defined conversion.

To assign a value to a custom event, you must first:

define a custom conversion in the conversion administration page. Specify a conversion trigger so that landing on the goal page causes a conversion. Assign an optional value to the conversion. Leave the Require response to convert checkbox in the Advanced Settings tab unchecked.

In addition

you must create a conversion group to contain the conversion rule for display in HBX reports. After you create the conversion in the administration page, and place the conversion in a conversion group, HBX displays the conversion rule in the table in the conversion administration page. The table shows the conversion's name as well as an ID generated by HBX for the conversion rule.

While definition of the custom conversion is sufficient for tracking custom events related to link tracking and internal search, you may also wish to add custom event information to the HBX page code for other pages where search results are presented without defining each conversion in the HBX HTML interface.

Page 156: Hitbox Installation Guide

|Page 144

Note that you cannot change the conversion ID for a custom-defined conversion. This ID is used as the value of the cnv.id variable when you add custom events to the HBX page code for the custom conversion.

Suppose you wish to define a custom conversion BootConversion that assigns a dollar value whenever a visitor successfully traverses a boot offer funnel and reaches the conversion page (/boots/success.htm) and that the funnel has produced a value upon conversion of 10.00 Create this conversion in the administration page, specifying:

Conversion Name BootConversion

Conversion Trigger Page name equals /boots/success.htm

Conversion Value 10.00

Assign conversion BootConversion to a conversion group Footwear. Use the values of the ID and conversion value when coding a custom event in the HBX page code. In the section of the page code starting with the comment

//INSERT CUSTOM EVENTS

but before the comment

//END EDITABLE SECTION

you add code such as the following:

var cnv = _hbEvent("cnv");

cnv.id = "cnv-110";

cnv.value = "10.00";

Page 157: Hitbox Installation Guide

|Page 145

In this case, HBX recognizes that visits to the page /boots/success.htm trigger a custom conversion named BootConversion (associated with the ID generated by HBX cnv-110). A look at the conversion reporting section of a funnel report reveals conversions and increases in conversion values associated with the Footwear conversion group.

Note that if you assigned an optional conversion value when creating the conversion rule, HBX uses that value and not the value assigned to the cnv.value variable.

Custom Events and Link Tracking

If you implement link tracking on your Web pages as a way of analyzing which links on a page are most often clicked on by visitors, you may also wish to:

track which links are associated with visitor-launched internal searches or

quantify the value of clicking on a link while the visitor is at your site

HBX tracks links and associates them with custom events in internal search pages only

if the value assigned to the lid variable in the href anchor tag is prepended with is_ and

if hbx.lt="auto"; on the page containing the link

Prepending is_ for the href tag is only necessary for associating link views with internal search. Normal link tracking, unassociated with internal searches, does not require is_ to track link view and link

click data. Unless links you wish to track always appear on search result pages as a result of internal searches

performed by visitors to your site, do not add is_ to the value of the lid variable.

Suppose the HTML code for your Web page contains the definition hbx.lt="auto"; in the HBX page code as well as the following link in the body of the page: <a href="catalog_page.html" name="&lid=is_Catalog_Page&lpos=bottom_page" >Buy me</a>

If visitors click on the text Buy me, HBX will display the link -- identified as is_Catalog_Page -- in the Top Keywords > Search Results detail view. Note that this special is_ identifier is case-sensitive. If you prepend values assigned to the lid variable with IS_ or Is_ or iS_ HBX will not track links in the internal search reports.

It is suggested that you create a server-side script for inserting a custom event on the link-enabled page as well as for naming the value assigned to the lid variable used for the link. The script used for tracking internal searches may be modified so that when the search results page is generated, links in the Sponsored Links section of the search results page will be automatically tagged with proper values (including the is_ identifier) in the lid variable.

Tracking Number and Value of Conversions of Custom Events (for Link Tracking and Internal Search)

You implemented link tracking or internal search tracking on your Web pages, and now you wish to attach a monetary value to any search-related links or internal searches performed by visitors. Whenever a visitor clicks on a link related to an internal search (implementation described in previous section) or performs an internal search, HBX will either:

check the user-defined conversion for the conversion trigger specifying a page, URL, or link ID or

look for special code in the custom events section of the conversion page.

Page 158: Hitbox Installation Guide

|Page 146

Here, the conversion page refers to the page the visitor lands on after clicking on a tracked link or a search result. Read more about conversion pages.

If the value of the conversion is 10.00, HBX will compute the total value of the conversion based on number of conversions multiplied by conversion value. If nine people convert a custom event (that is, click on a valuable link or perform a valuable search), conversions for the link or search will show $90.00 in the Top Keywords > Search Results detail view or the Link Analysis > Top Links Per Page Detail View. If no results are returned by keyword searches or if none of the links are clicked, no conversions will be reported by HBX.

HBX provides two ways to assign a value to a custom conversion:

by defining a conversion value in the conversion administration page

by defining a conversion value in the custom events section of the HBX page code

The value you enter for the cnv.id variable corresponds to the ID generated by HBX when you create a conversion in the conversion administration page. The value assigned to the cnv.value variable must fall within the range detailed in the Illegal Characters section. If no value is assigned to the cnv.value variable, HBX will continue to count conversions, but the conversion value column for Internal Search and Link Analysis reports will show $0.00. Note that if you assigned an optional conversion value when creating the conversion rule, HBX uses that value and not the value assigned to the cnv.value variable.

Note that if several accounts are defined for the target page, and a successful search or search-related link click occurred for each account, the conversion applies across all accounts defined on the conversion page.

Precedence of Custom Conversion

Suppose a visitor lands on an HBX commerce module conversion page (the order confirmation page) and that this page is also associated with a value for a custom conversion, either by a definition in the custom event section of the HBX page code, or via the conversion administration. In this case, the conversion value displayed by HBX corresponds to the sum of all the comma-separated value assigned to the _pc variable of the HBX commerce order, and not to the value of the conversion you defined. Thus, it is important not to specify a custom conversion value for an order confirmation page since the custom conversion value will not be reported by HBX.

Visitor Segmentation

Visitor Segmentation makes it possible for you to define, or segment, specific groups of visitors that come to your Web site, based on a wide range of information gathered about visitor interaction with the site. Visitor interaction includes:

visiting a page

visiting a content group

making a purchase

clicking on a link

referral from a URL

requesting a download

triggering a response

triggering a conversion

HBX offers two methods for defining visitor segments: tagged and tagless

Tagged segments, known as Population Groups, are created in the Population Groups Administration page. Once population group IDs are created, the IDs are added to the hbx.seg

Page 159: Hitbox Installation Guide

|Page 147

variable for pages on your site where you are likely to find certain patterns of visitor activity. You then track the activity of visitors who are either associated with a population group when they land on a page, or removed from a population group and associated with another population group under certain circumstances.

Tagless segments, known as Active segments (or simply segments), are created in the Segment Administration page. Unlike population groups, there is no need to modify HBX variables in existing page code to use segments. You build a complex query for the HBX database by defining criteria for one or more HBX metrics. Once these criteria are applied to pages, URLs, or link IDs, the queries are processed and incorporated in reports you select from a list of HBX reports. You then view the results of the queries by selecting Segments: > Active Segmentation > <any specific segment> from the dropdown menu at the top of the HBX interface. The reports associated with this active segment display information on the segment.

Before you can use either population groups or active segments, you must first create them using the Population Groups Administration page or the Segment Administration page. Access these pages by clicking on the Site Tools and Reporting > Administration menu. The Population Groups Administration or Segment Administration page will open.

You must be logged in to HBX with an administrator-level password in order to be able to access either of these Administrative functions.

Creating Population Groups

Using the Population Groups administration tool you can create population groups, rename existing population groups, and deactivate or delete population groups. You may have up to 20 population groups defined for one HBX account. You can click on a small help icon for a brief explanation of technical concepts introduced in this page.

Type in a unique name in the New Population Group text box at the top of the administration tool. This name will be displayed in the population group drop-down menu and in the visitor segmentation reports, so you should make sure that the name is easily recognizable. The population group name must conform to character size and character types described in Illegal Characters.

Once you've typed in the name, click on Create New Population Group. A message will appear asking you to confirm that you want to create this population group. Click OK to create the group, or Cancel if you decide you do not want to create the group.

Once you've clicked OK, the population group name will be associated with a numeric ID and the new population group will appear on the list. You will use this numeric ID to identify the population group when you code your site pages with HBX code.

New population groups that you have added to your population groups list are not available in the HBX interface right away. Each night at 11PM local time, new population groups that you have added will be processed and made available in the visitor segmentation drop-down menu by midnight. Note that because changes and additions to your population groups are processed at 11 PM, local time, you will not be able to make any changes to your population groups using the administration tool from 11 PM to midnight.

Once you have created a population group, you may code your pages with it right away.

Tip

Tip

Page 160: Hitbox Installation Guide

|Page 148

If you already have 20 population groups defined and you try to create additional groups, you will receive an error message. Once you've reached the limit of 20 population groups you will have to delete one or more existing population groups to add new ones.

Renaming Population Groups

Once a population group has been created, you may rename it any time you wish using the administration tool.

Edit the selected population group name in the text box. The name must conform to character size and character types described in Illegal Characters.

Click Change Name. You will see a confirmation message. Click OK to rename your population group or Cancel if you decide not to rename it.

If you've clicked OK, the screen will refresh and the new population group name will display. The ID associated with the population group name will not change. Name changes to population groups will be reflected in the visitor segmentation drop-down menu by midnight, local time.

If you change a population group name, that name change is propagated through all your historical data, back to the time when the population group was first created. For example, if you create a population group called Sign Ups on December 1, 2001, and then change that group name to Members on February 15, 2002, all data that you view using that population group, back to its creation on December 1, lists its name as Members.

Deactivating and Deleting Population Groups

You may deactivate or completely delete population groups, if you choose.

Deactivating population groups

Click Deactivate by the selected population group in the administration tool. You will see a message that asks you to confirm that you want to archive that population group.

Click OK to deactivate the population group or click Cancel if you decide not to deactivate the population group.

Once a population group has been deactivated it will be moved to the deactivated population groups list, and will no longer be considered active. As long as you are viewing reports using dates during which the population group was active, you will still be able to view data for deactivated population groups. For example, if you create a population group called Holiday Promotion on December 1, 2001, use the population group on your site, and then deactivate that group on January 1, 2002, you will still be able to view report data using the Holiday Promotion population group when viewing historic data for the month of December.

Deactivated population groups will appear in the visitor segmentation drop-down menu under Deactivated population groups, along with their creation and deactivation dates, so that you will know what the valid date ranges are for viewing reports with those population groups.

Tip

Tip

Page 161: Hitbox Installation Guide

|Page 149

The Activate button does not automatically reactivate a deactivated population group without an additional change to the HBX code on your Web pages. If you select a deactivated population group in the list of deactivated groups and click the Activate button, HBX assigns the next available group ID to the population group and maintains the same name for the group. Thus you can essentially resurrect the deactivated population group, but you must also change the ID used by HBX to track the population group. If the definition of the deactivated population group on your pages was hbx.seg="1"; and after clicking the Activate button, the new population group has the ID of 2, you must change your page code to hbx.seg="2"; before you can resume tracking data on the resurrected population group.

Deleting population groups

If you delete a population group, all data associated with that group will be deleted and the group will no longer be available. Deleted population groups cannot be restored. To delete a population group:

Click Delete by the selected population groups in the deactivated population groups list. You will see a message that asks you to confirm that you want to delete that group.

Click OK to delete the population group. Or, click Cancel if you decide not to delete the population group.

Coding Population Groups

Once you have created your population groups using the population groups administration tool, you may code population groups into your pages using the HBX code.

The population groups variable appears in the HBX code as hbx.seg This variable has no initial value assignment. To set up population groups, populate this variable with a comma-separated list of group IDs that map to the population groups you created in the administration tool. This list will define when a visitor is added to or removed from a population group.

For example, the string 1,2,3,5 coded on a page would mean that each visitor to the page is added to population groups 1,2,3, and 5. The string 1,2,3,-4, 5 indicates that a visitor accessing that page is added to population groups 1, 2, 3, and 5 but removed from population group 4.

How Population Groups Work

A visitor entering a pre-defined location or arriving from a particular campaign, referrer, or domain may be tagged as a member of a particular population group. Population groups are added to the cookie served to visitors accessing HBX-enabled pages on your site.

Population groups IDs can be either additive, allowing a visitor to be linked to a particular population group, or subtractive, in which case the visitor is removed from a population group. Population group IDs can also be coded to exclude a visitor from any future association with specific population groups, as well as to re-initialize or restart the population group ID list for a visitor.

A visitor remains associated with a particular population group for the life of the cookie, or until a page removing the visitor from the population group is accessed. When the population group ID is sent to HBX via the page code, it is compared to the population group ID list stored on the cookie. A conversion is registered when the comparison shows the following change in the population group ID stored on the cookie: one or more population group IDs is removed and one or more different population group IDs are added. Depending on which pages are accessed on your site, a visitor associated with one (or more) population group "converts" to another population group.

Tip

Page 162: Hitbox Installation Guide

|Page 150

As an example, a visitor initially classified as a reader (associated with the reader population group ID) converts to a subscriber (changes to the subscriber population group ID) after registering on your site for specific content. Any future conversions depend how you wish to classify visitors, that is, on which population group you wish to associate with visitors. A visitor's purchase could trigger a conversion from reader to buyer, if you wish.

Population groups on pages vs population groups on cookies and conversion

POPULATION GROUP

STORED ON COOKIE

POPULATION GROUPS ON ACCESSED

PAGE

RESULT OF POPULATION

GROUP MERGE

EFFECT ON VISITOR'S POPULATION GROUP

HISTORY

CONVERSION?

2,5 1,2,5 1,2,5

ADDED TO POPULATION GROUP

1

NO CHANGE IN POPULATION

GROUP 2 AND POPULATION

GROUP 5

NO

4,5 1,-4,-5 1

ADDED TO POPULATION GROUP

1

REMOVED FROM POPULATION

GROUP 4 AND POPULATION

GROUP 5

YES

4 1,2,-4 1,2

ADDED TO POPULATION GROUP

1 AND POPULATION GROUP 2

REMOVED FROM POPULATION

GROUP 4

YES

3 -1,-2,-3 REMOVED FROM POPULATION

GROUP 3 NO

Population groups on pages vs population groups on cookies and conversion

Population Group Lockout

Suppose a visitor to your Web site accesses several unrelated pages coded with population groups for reader, subscriber, and buyer. The visitor's movement into each new population group triggers a conversion, only if the visitor is not previously associated with the new population group. Now, suppose further browsing leads the visitor to a page that removes a particular population group from the list stored on the cookie. If the visitor then returns to one of the former pages in the path taken, that population group will be re-added to the list of population groups on the cookie and another population group entry is counted. To prevent the visitor from being re-added to the population group list for any particular population group, you can use two minus signs -- in front of the population group ID when coding the page.

For example, you have population group IDs 1,2,3 each associated with a particular population group. If one of your pages uses the code

hbx.seg="--1,2,3";

any subsequent pages accessed by that visitor will exclude association with population group ID 1. If your page is coded

hbx.seg="--1,--2,--3";

Page 163: Hitbox Installation Guide

|Page 151

the visitor will be excluded from all currently valid population group IDs numbered 1,2, and 3. If you create other population groups in the future, the cookie will accept the new population group IDs, but population groups 1, 2, and 3 will never again cause conversions.

Refer to this section if you are creating active segments where conditions include a population group and a page coded with population group lockout.

Population Group Restart and Add

You can also re-initialize or restart the population group list on the visitor's cookie by placing two plus signs ++ in front of the population group ID when coding the page.

For example, you have population group IDs 1,2,and 3, each associated with a particular population group. If one of your pages uses the code

hbx.seg="++1";

any population groups associated with the visitor prior to accessing the page will be removed, and replaced by population group ID 1. Note that the addition of the visitor to population group ID 1 is irrelevant if:

visitor is already currently associated with population group ID 1. In this case the population group list starts over with population group ID 1 as the first and only population group in the list. or

visitor is previously locked out from population group ID 1. In this case, nothing happens to the population group list on the cookie.

The ++ notation may be used for multiple population groups. You use the population group restart symbol with multiple population group only when the ++ notation is the first in the list. The following population group code

hbx.seg="++1,3";

indicates that all population groups are cleared in the visitor's population group history, and that the visitor is added to population groups 1 and 3. The result of this addition is contingent on whether population groups 1 and 3 are available to the visitor--that is, if the visitor is not permanently excluded from the population group by encountering the -- notation on a previous page.

Refer to this section if you are creating active segments where conditions include a population group and a page coded with population group restart and add.

Page 164: Hitbox Installation Guide

|Page 152

SCENARIO (SEQUENCES

A, B, C)

POPULATION GROUP

STORED ON COOKIE

POPULATION GROUP ON ACCESSED

PAGE

RESULT OF POPULATION

GROUP MERGE

EFFECT ON VISITOR'S POPULATION GROUP

HISTORY

CONVERSION?

A1st 3 1,--3 1

REMOVED PERMANENTLY

FROM POPULATION GROUP

3; ADDED TO POPULATION

GROUP 1

YES

A2nd 1 3 1 NONE; VISITOR HAS BEEN

EXCLUDED FROM

POPULATION GROUP 3

NO

A3rd 1 --1,3 VISITOR REMOVED

PERMANENTLY FROM

POPULATION GROUP 1

NO

B1st 3,2 ++1 1

POPULATION GROUP 1 IS

FIRST AND ONLY

POPULATION GROUP IN THE

LIST; POPULATION GROUPS

2 & 3 DELETED

YES

B2nd 1 1,2 1,2 POPULATION GROUP 2 IS

ADDED TO LIST NO

B3rd 1,2 ++2 2 ALL POPULATION GROUPS

BUT 2 ARE REMOVED FROM

POPULATION GROUP LIST

NO

C1st 3,2 ++1 1

POPULATION GROUP 1 IS

FIRST AND ONLY

POPULATION GROUP IN THE

LIST; POPULATION GROUPS

2 & 3 DELETED

YES

C2nd 1 --1,2,3 2,3

POPULATION GROUPS 2 & 3

ARE ADDED TO LIST;

POPULATION GROUP 1

REMOVED PERMANENTLY

YES

C3rd 2,3 ++2 2

ONLY POPULATION GROUP 2

REMAINS ON LIST;

POPULATION GROUP 3

REMOVED

NO

C4th 2 ++1

NO CHANGE; POPULATION

GROUP 1 CAN NO LONGER

EXIST IN POPULATION

GROUP LIST

NO

Page 165: Hitbox Installation Guide

|Page 153

D1st 3 3,2 2,3 POPULATION GROUP 2 IS

ADDED TO COOKIE NO

D2nd 2,3 ++1,2 1,2

ALL POPULATION GROUPS (2

AND 3) ARE REMOVED FROM

COOKIE; POPULATION

GROUPS 1 AND 2 ARE

ADDED

YES

Combining Population Group Lockout and Population Group Restart on Pages with Population Group on Cookies and Conversion Value

Population groups are intended to track specific visitor behaviors, such as purchases, membership sign-ups, responses to promotions. As such, you should only add population groups to the few pages on your site that indicate such behaviors—membership thank you pages, order thank you pages, entry pages for specific promotions, and so on. The more pages you code with population groups (and the more population groups you have), the more difficult it will be for you to get useful information from the metrics on visitor segmentation.

Preparing to Code Account IDs to Population groups on Pages

Before you begin to place population group code on pages, organize the information you need: names of accounts, the population group IDs created with the population group administration tool, and pages to code. If you have only one account, your coding task is simple: match population group ID(s) with the pages you want associated with population groups. If you have more than one account, you must be careful to match population group IDs in the appropriate account and in the correct order with the pages to be associated with population groups. Population group IDs you create for one account are not valid for another account. In general, the order of account IDs in your page code (separated by the semicolon ; ) corresponds to the order that population groups are counted when population groups (separated by the semicolon ; ) are coded for multiple accounts.

Population Groups with Single Accounts

To associate a single population group string to an account ID, enter the population group string in the hbx.seg variable of your page code. For example, to associate a page with population groups 1 and 2, define hbx.seg thus:

hbx.seg="1,2";

The page will collect visitor segmentation data based on that population group string.

For coding population groups for multiple accounts, refer to the Advanced Population Groups Coding section.

Summary of Coding Population Groups with a Single Account

ACTION DESIRED

# OF ACCOUNT

IDS

# OF POPULATION

GROUPS

POPULATION GROUP IDS

CODE: hbx.seg=

EXPLANATION

MAP

ACCOUNT

TO

POPULATION

GROUP (S)

1 2 1, 2 "1,2" POPULATION GROUPS 1

AND 2 MAPPED TO

ACCOUNT ID

Population Groups Coding: Single Account

Page 166: Hitbox Installation Guide

|Page 154

Active Segmentation Administration

Active Segmentation is one form of visitor segmentation supported by HBX. Visitor segmentation also includes Population Groups.

Before using the Active Segmentation feature, please contact your Omniture Accounts Manager.

On the segmentation administration page, you work with active segments (hereafter, simply segments). You can:

view a listing of active and archived segments, and examine detailed information about an active or archived segment

create segments

archive segments, unarchive segments, deactivate segments, delete segments, and

export a list of customer IDs for snapshot segments

You can click on a small help icon for a brief explanation of technical concepts introduced in this page.

Segment List

The segment administration page presents tabbed views listing both active and archived segments. Prior to creating your first segment, no segments appear in the segment list. The total number of segments is displayed at the top of the table. The list of active segments is arranged in columns with the following information:

Segment Name

Description

Date Created

Start Date

End Date

Status

All columns in the list are sortable. You can click on the column headers to reorder the items listed in either ascending or descending order. A small triangle next to the column header indicates the sort order. By default, the list of segments is sorted by the Segment Name column.

The segment name is the short name you assign when creating the segment, while the description is a longer explanation of the segment name. You can click on the name of the segment in the list to display a popup window with detailed information about the segment. The date created shows when the segment was created, while the start date indicates the day you instructed HBX to begin collecting information for the segment

You can specify whether to create just a snapshot (or historical) segment by specifying begin and end dates in the past, or a live segment by specifying only a start date (either today or a day in the past).

Status indicates the processing status of the segment. HBX distinguishes three processing statuses:

Live (indicates that all processing of the segment is complete. Hourly processing continues until the end of the specified date range. Note that processing of the current segment may be delayed by up to two hours. A visitor-based segment cannot be live.)

Pending (segment is waiting to be processed by HBX)

Processing (HBX is currently processing the segment information)

Page 167: Hitbox Installation Guide

|Page 155

Complete (HBX has finished processing the segment for the specified date range. No further processing will occur for the segment.)

Segment Detail view

When you click on a segment in the list of either active or archived segments, a popup window displays non-editable information about the segment including:

Segment Name

Description

Date Created

Segment Type (visitor-based or visit-based)

Start Date

End Date

Status

Conditions (or filters) defined for the segment

Report group selections associated with the segment.

Archiving a segment

If you wish to retire a segment temporarily or permanently, you can archive it. When a segment is archived (or made inactive), it no longer appears in the list of segments available in the Segment: > Active Segmentation dropdown menu. The segment is also removed from the segments listed in Segment reports. If you are archiving a live segment, you first must deactivate it.

To archive a segment:

Select the radio button next to a segment from a list of currently available segments.

Click on the Archive button. A popup box will ask you to confirm your intention to archive the segment.

When the screen refreshes, the segment no longer appears in the list of segments in the administration page. In addition, the segment name no longer appears in the dropdown Segment: list, or in any reports showing segment information.

Unarchiving a segment

If you wish to restore an archived segment so that it appears in the list of segments on the segment administration page as well as in the dropdown Segmentation list and in reports with segment information, click on the Archived Segments tab of the administration page. Unarchiving is essentially the reverse of archiving a segment.

Select the radio button next to the segment you wish to restore in the list of archived segments.

Click on the Unarchive button. A popup box will ask to ask you to confirm your intention to restore the segment.

When the screen refreshes, the segment reappears in the list of segments in the administration page. In addition, the segment name once again appears in the dropdown Segment: list, and in reports showing segment information.

Deleting a segment

Page 168: Hitbox Installation Guide

|Page 156

Unlike archiving, deleting a segment is a irreversible process that completely eliminates the information you entered about a segment. Because you cannot undelete a segment, carefully consider whether to delete or simply archive a segment. You can only delete an archived segment.

To delete a segment:

Click on the Archived Segments tab.

Select the radio button next to a snapshot segment from the list of currently archived segments.

Click the Delete button. A popup box will ask to ask you to confirm your intention to delete the segment.

When the screen refreshes, the segment no longer appears in the list of segments in the administration page. In addition, the segment name no longer appears in the dropdown Segmentation list, or in any reports showing segment information.

Exporting Customer IDs

If your Web page collects customer IDs (such as in an HBX commerce module implementation) and you pass the customer IDs by coding the hbx.ci (or _ci) variable, to you can export customer IDs for snapshot (one-time) segments. You cannot export customer IDs for continuous segments.

To use this feature:

Select the radio button next to a snapshot segment from the list of currently available segments. Note that a snapshot segment always displays start and end dates in the past. If you attempt to export a continuous segment, HBX prompts you to select a snapshot segment.

Click on the Export Customer IDs button.

A Save As dialog box opens where you can enter the name of the customer ID file and its path on your local computer. The file is plain text, listing customer IDs, with one ID per line.

Creating Active segments

To create an active segment in HBX, you must provide a definition for the following:

Indicate basic parameters for the segment (name, description, the date range -- start and end dates or live segment).

Specify whether to constrain the segment by visit data or by visitor data

Specify the filters or conditions that together describe a specific segment.

Specify which HBX reports should display the active segment, where the report represents an aggregated set of site activity data

Review the summary of the segment and associated reports the segment will appear in. Accept or edit the segment.

Just as with implementing population groups on your Web pages, the definition of active segments (here, simply segments) requires some preliminary analysis of your site design. Carefully consider how best to identify segments based on the information contained in page name, URLs, or links before creating a segment. This is especially important when defining segments.

Once a segment has been defined in HBX for your account, it cannot be edited. (However, you can add commerce reports to already defined segments.)

Page 169: Hitbox Installation Guide

|Page 157

You may delete a segment and start over again. You may also archive or deactivate a segment. To start creating a segment, go to the Active Segmentation Administration area under Site Tools and Reporting -> Administration and click the Create Segment button.

Segment Information

The basic parameters to include for a segment include:

segment name

short description

segment type (a segment based on visit constraints or visitor constraints)

date type (either live for visit-based segments, or historic using a date range in the past for visit- or visitor-based segments)

The segment name is a descriptive and unique name for the segment. It is suggested that you you name a segment descriptively so that you will remember some of its parameters when viewing segment data in reports. The short description helps you distinguish among segments you create.

The date type refers to the way the segment is monitored by HBX.

The default is for HBX to collect data continuously for the segment (a live segment), without specifying an end date.

Enter today's date as the start date if you wish to start monitoring segment data from the moment you create the segment and continue to monitor data in the future. Do not enter an end date. Note that a live segment is not available for a visitor-based segment (see below). A visitor-based segment can only use dates in the past.

If you need to establish a baseline for segment data based on recent activity in the segment, enter a date in the past as the start date. HBX then gathers information about the segment from the start date you specify and continues to monitor the segment in the future. Do not enter an end date. Note that a live segment is not available for a visitor-based segment (see below). A visitor-based segment can only use dates in the past.

Deactivating a segment. If you create a live segment, but later no longer wish to monitor the segment, select the radio button next to the segment listed in the segment administration page and click the Deactivate button. After accepting the confirmation message, the segment administration page refreshes showing that the segment has an end date of today. Note that a deactivated segment cannot be reactivated.

If instead you wish to take a static snapshot of data for either a visit-based or visitor-based segment over a specified range of historic dates, enter start and end dates in the past. The total period allowed for a snapshot segment can be up to 92 days. HBX gathers information about the segment between the start and end dates you specify. Note that for visitor-based segments (see below), you can only specify start and end dates in the past.

Enable the checkbox for exporting customer IDs if you wish to use this function after the segment is created. This function applies to snapshot segments only. Because you cannot edit active segments once created, make sure to check the box if you intend to use it.

Visitor-based vs Visit-based segments

To understand how to build segments that use visitor-based and visit-based constraints, it is first necessary to understand the fundamentals of HBX data collection.

Page 170: Hitbox Installation Guide

|Page 158

While HBX obtains information on site activity in several ways, the most important method involves setting a browser-specific cookie on the user's computer, and the execution of a JavaScript script when the user accesses a page on the site. The cookie allows the accumulation of persistent data about the way the user navigates a site. The user's browser accepts the cookie containing a unique ID assigned to that computer, and the time that the user accessed the Web site, among other data.

Drawing on this data, HBX analyzes site activity in terms of one or more of the following basic entities. Here, it is assumed that the site has HBX code on its pages, and that the visitor's browser is configured to accept cookies and to enable JavaScript.

visit (also called a session) The visit covers all site activity (or all events) in which the user interacts with the site. HBX considers the visit to be completed after thirty minutes of inactivity, that is, a period of thirty minutes during which the user doesn't interact with the site. This period is calculated from the time registered on the cookie. A visit must have one visitor.

visitor The visitor refers to an individual user who enters the site and interacts with it. This individual user is determined by the unique ID on the cookie. A visitor is associated with one or more visits.

event An event is any data collection request sent to the HBX data center triggered by a visitor's interaction with a page on your Web site. HBX recognizes a variety of events: page view, internal search, conversion, link click, download, and custom-defined. Different kinds of events may occur simultaneously, such as conversion and link click events.

Thus, the visit is related to time on the site, while the visitor is a unique site user. An event is the visitor's action on the site.

Consider the following data table of site activity for a Web site over the period of one day. Suppose that several users (Sam, Patti, Ray, Alice) access the site during various visits (S1, S2, S3, S4, S5, S6), spend a certain amount of time (in minutes), and view the search results page (sresults) a certain amount of times.

1 2 3 4

Visit (Session)

Visitor (Unique user)

Amt time spent per visit

# Times sresults viewed

S1 Sam 4 2

S2 Patti 5 3

S3 Sam 3 1

S4 Ray 1 1

S5 Alice 2 1

S6 Patti 4 2

If no segmentation is defined for a report, HBX organizes information in the following way:

In the standard report Pages > Page Analysis > Visits per Page, all the data in column 1 is summed and presented as the number of visits in the summary table for the page sresults. Six visits (visits S1 through S6) are associated with sresults for the period.

Page 171: Hitbox Installation Guide

|Page 159

In the standard report Navigation > Time Spent on Site, all the data in column is sorted according to the amounts shown in column 3. For the category "Time Spent in Minutes", you see that HBX shows two visits for the four-minute mark during the period.

When you create active segments, you target a subset of the information presented in the standard reports. Note that the subset may be identical to the set.

Suppose that you define the following visit segment type for the set of reports that includes Pages > Page Analysis > Visits per Page:

Filter 1

Pages > Page Names > equals > sresults

For the above data table on site activity, note that all visits S1 through S6 meet these conditions. However, once you specify the additional information required for the visit segment Occurrences per Visit is greater than 2 only S1, S2 and S6 meet these conditions.

HBX thus shows three visits for the day for this visit segment type.

Suppose now that you define the following visitor segment type for the set of reports that includes Navigation > Time Spent on Site:

Filter 1

Navigation > Time Spent on Site > is greater than > 120 seconds

For the above data table on site activity, note that Sam and Patti both meet these conditions. However, once you specify the additional information required for the visitor segment Occurrences per Visitor is greater than 3, none of the visitors match, because Sam and Patti have not visited more than three times each in this set of visitors.

But, if you change the filter to:

Navigation > Time Spent per Visit > is greater than > 120 seconds

Occurrences per Visitor is greater than 1

HBX shows two visitors for this segment.

Suppose again that you define the following visit segment:

Filter 1

Navigation > Time Spent per Visit > is greater than > 120 seconds

Again, Sam and Patti both satisfy this first part of the filter condition

This time you specify that Occurrences per Visit is true

Occurrences per visit is true is equivalent to saying "Return all the visits for the day where the statement ' Time spent per visit is greater than two minutes.' is TRUE."

If you change the second part of the filter condition to Occurrence per Visit is false, you ask for the inverse of the data set for the day. The only visits where the visitor came to the page for 120 seconds or less belong to Ray and Alice. This filter is equivalent to saying "Return all the visits for the day where the statement ' Time spent per visit is greater than two minutes.' is FALSE." In this case, HBX shows two visitors for the day for this visitor segment type.

Note that the segment type must be either Visitor or Visit according to the setting of the Segment by option. This is a global setting that applies to all the filters defined for the segment. You cannot create a segment where some filters are visit-based and others are visitor-based.

Page 172: Hitbox Installation Guide

|Page 160

Visit-based (or session-based) segments gather all data that emerges during a visit or session. If other conditions are met during the session, HBX may display apparently unrelated matches for the original segment. If the visitor meets the criteria for joining an active segment and then browses other pages in the same visit, the segment shows all activity in a visit that satisfies the active segment criteria.

For example, suppose you define a segment to filter for the word women's in the product description and you associate the segment with commerce reports. Suppose further that the customer buys items with the words women's and men's in the description of items in the same order. The segment will display matches for items purchased containing both women's and men's in the description, even though the filter specifies only women's.

Examples of visit-based and visitor-based segments

The following table presents possible visit-based and visitor-based segments you can define. The description column shows the metric (report group) operator and operand, as well as the occurrences of the condition. The explanation column indicates what particular group the visit-based or visitor-based segment is targeting.

SEGMENT TYPE

DESCRIPTION EXPLANATION

VISITOR ACQUISITION SOURCES >

TOP REFERRING DOMAINS >

DOMAINS EQUALS

"GOLDENAGECARTOONS.COM"

AND OCCURRENCES PER

VISITOR IS GREATER THAN 0.

ALL VISITS FOR VISITORS WHO CAME TO THE SITE FROM DOMAIN

GOLDENAGECARTOONS.COM ONE OR MORE TIMES.

VISITOR ACQUISITION SOURCES >

TOP REFERRING DOMAINS >

DOMAINS EQUALS

"GOLDENAGECARTOONS.COM"

AND OCCURRENCES PER

VISIT IS TRUE.

ALL VISITS THAT CAME TO THE SITE FROM DOMAIN

GOLDENAGECARTOONS.COM.

VISITOR ACQUISITION SOURCES >

TOP REFERRING DOMAINS >

DOMAINS EQUALS

"GOLDENAGECARTOONS.COM"

AND OCCURRENCES PER

VISIT IS FALSE.

ALL VISITS THAT CAME TO THE SITE FROM ANY DOMAIN EXCEPT

GOLDENAGECARTOONS.COM.

VISIT SYSTEM > BROWSER

VERSIONS IS MSIE 6.0 AND

OCCURRENCES PER VISIT IS

TRUE.

ALL VISITS WHERE THE BROWSER IS MSIE 6.0.

VISIT SYSTEM > BROWSER

VERSIONS IS MSIE 6.0 AND

OCCURRENCES PER VISIT IS

FALSE.

ALL VISITS WHERE ANY BROWSER IS USED EXCEPT MSIE 6.0.

VISITOR VISITORS > TIME OF FIRST

VISIT EQUALS 11/07/2005

ASSUMING THE START AND END DATE OF THE SEGMENT IS

11/07/2005, ALL VISITS FOR VISITORS WHO FIRST VISITED THE

Page 173: Hitbox Installation Guide

|Page 161

AND OCCURRENCES PER

VISITOR IS TRUE.

SITE ONE TIME ON 11/07/2005. (NOTICE THAT HBX

AUTOMATICALLY ENTERS "OCCURRENCES PER VISITOR IS TRUE")

VISITOR COMMERCE > TOTAL ORDERS

GREATER THAN 1 AND

OCCURRENCES PER VISITOR

IS TRUE.

ASSUMING THE START AND END DATE OF THE SEGMENT IS

11/11/2005, ALL VISITS FOR CUSTOMERS (VISITORS) WHO

MADE TWO OR MORE PURCHASES ON 11/11/04.

VISITOR COMMERCE > TOTAL ORDERS

GREATER THAN 1 AND

OCCURRENCES PER VISITOR

IS FALSE.

ASSUMING THE START AND END DATE OF THE SEGMENT IS

11/11/2005, ALL VISITS FOR CUSTOMERS (VISITORS) WITH

TWO OR MORE PURCHASES WHO DID NOT ORDER ON 11/11/04.

VISITOR VISITORS > LOYALTY IS

BETWEEN 2 AND 4 AND

OCCURRENCES PER VISITOR

IS GREATER THAN 2.

ALL VISITS FOR VISITORS WHO HAVE TWO, THREE, OR FOUR

PREVIOUS VISITS, WHERE THIS SCENARIO OCCURS THREE OR

MORE TIMES.

VISITOR NAVIGATION > TIME SPENT

PER VISIT GREATER THAN

1000 AND OCCURRENCES

PER VISIT IS TRUE.

ALL VISITS FOR VISITORS WHO HAVE ONE OR MORE VISITS

LASTING LONGER THAN 1000 SECONDS (ABOUT 16 MINUTES).

VISITOR NAVIGATION > TIME SPENT

PER VISIT LESS THAN 1000

AND OCCURRENCES PER

VISIT IS FALSE.

NO VISITS FOR VISITORS WHO HAVE A VISIT LASTING LESS THAN

1000 SECONDS (ABOUT 16 MINUTES).

VISIT VISITORS > FREQUENCY

GREATER THAN 5 AND

OCCURRENCES PER VISIT IS

TRUE.

ALL VISITS WHERE VISITORS HAVE WAITED FIVE AND A HALF

DAYS OR MORE BETWEEN VISITS TO THE SITE.

VISITOR CONTENT > CONTENT

GROUPS CONTAINS "/GATHER

LEADS" AND OCCURRENCES

PER VISITOR IS GREATER

THAN 1.

ALL VISITS FOR VISITORS WHO GO TO THE "/GATHER LEADS"

CONTENT GROUP TWO OR MORE TIMES.

VISITOR NAVIGATION > INTERNAL

SEARCH KEYWORD CONTAINS

"DENALI" AND

OCCURRENCES PER VISIT IS

GREATER THAN 0.

ALL VISITS FOR VISITORS WHO SEARCH THE SITE INTERNALLY

FOR THE KEYWORD "DENALI" DURING ONE OR MORE VISITS.

VISIT PAGES > DOWNLOADS

CONTAINS "MAX". AND

OCCURRENCES PER VISIT

EQUALS 1.

ALL VISITS WHERE A DOWNLOADED PAGE CONTAINS THE WORD

"MAX".

VISITOR COMMERCE > ORDER VALUE

GREATER THAN 1000.00

AND OCCURRENCES PER

VISITOR IS GREATER THAN 0.

ALL VISITS FOR CUSTOMERS (VISITORS) WHO PLACE ONE OR

MORE ORDERS WHERE EACH ORDER HAS A VALUE OF MORE THAN

$1000.

Page 174: Hitbox Installation Guide

|Page 162

VISITOR COMMERCE > SHIPPING COST

GREATER THAN 5.00 AND

OCCURRENCES PER VISIT IS

GREATER THAN 0.

ALL VISITS FOR CUSTOMERS (VISITORS) WHO PLACE ONE OR

MORE ORDERS WITH MORE THAN $5.00 IN SHIPPING COSTS.

VISIT COMMERCE > ORDER VALUE

GREATER THAN 50.00 AND

OCCURRENCES PER VISIT IS

GREATER THAN 1.

ALL VISITS WHERE TWO OR MORE ORDERS ARE PLACED AND

WHERE EACH ORDER EXCEEDS 50

VISITOR NAVIGATION > TOTAL

FUNNEL VISITS EQUALS

"1244" AND OCCURRENCES

PER VISITOR IS GREATER

THAN 2.

ALL VISITS FOR VISITORS WHO VISIT FUNNEL 1244 TWO OR

MORE TIMES.

VISITOR CAMPAIGNS > RESPONSES

EQUALS "KAC-SMBPG" OR

"KAC-FROOGLE". AND

OCCURRENCES PER VISIT

EQUALS 1.

ALL VISITS FOR VISITORS WHO MADE ONLY ONE RESPONSE TO

EITHER KEYWORD AD CAMPAIGNS KAC-SMBPG OR KAC-

FROOGLE.

VISIT CAMPAIGNS > TOTAL

CAMPAIGN VALUE LESS THAN

250.00 AND OCCURRENCES

PER EVENT EQUALS FALSE.

ALL VISITS WITH CAMPAIGN CONVERSIONS WHERE THE TOTAL

VALUE OF THE CAMPAIGN IS GREATER THAN 250.

Segment Filters

At the conceptual level, a filter is defined by the following elements:

a report group and its associated dimension (such as Referrer > URL)

an operator (such as contains, equals, greater than, less than, between)

an operand (the term you enter on the right side or select from a list of an equation or comparison)

An operand can consist of one or more terms in the form of a number or a text string. Multiple operands for one filter are strung together with logical OR. HBX allows up to 10 separate OR-connected operands in a single filter if the report/dimension allows multiple operands. A full listing of report groups and associated dimensions is in the table below.

A segment query can consist of one or more filters. Multiple segment filters are strung together with logical AND. HBX allows up to 10 separate AND-connected filters in a single segment. When creating segment queries, remember that as more filters are added to the query, the resulting data set becomes narrower.

The operators available for a report group or metric depend on the kind of data expected as the operand. If for example you define a segment that looks for time data (such as Navigation > Time Spent on Site), the operators in the dropdown include less than, greater than and between, where the data expected as an operand is an amount of time (1 hour, 2 hours, etc.)

An operand can consist of one or more terms in the form of a number or a text string. Multiple operands for one filter are strung together with logical OR. HBX allows up to 10 separate OR-connected operands in a single filter if the report/dimension allows multiple operands. A full listing of report groups and associated dimensions is in this table.

Page 175: Hitbox Installation Guide

|Page 163

The type of data you can enter (or select from a list) as an operand varies according to the data expected for report group/dimension. Data types include:

text (page name, URL, string fragment)

number (integer, floating point number)

Page names and URLs in segment filters are case-insensitive.

The table below shows the kinds of data you can enter into the various text boxes. Because HBX allows you to build filters using partial information, you can enter just a fragment of the name or URL or ID. When selecting

content groups or page names currently tracked by HBX, you may click on the icon on the right side of the text field. When you click on the icon, a browser window pops up allowing you to enter search criteria. Read more about the HBX Search Utility. For some report group/dimensions, you can only select values from a list of standard values. The Data Type column of the table indicates these report group/dimensions with the notation (List only).

A segment query can consist of one or more filters. Multiple segment filters are strung together with logical AND. HBX allows up to 10 separate AND-connected filters in a single segment. When creating segment queries, remember that as more filters are added to the query, the resulting data set becomes narrower.

Filters for the active segment typically describe a line item in one report's summary table, if data is available for the line item. For example, in the HBX report System > Connection Type, a possible value is DSL. To make the query more specific, you link together filters of the active segment. For example, to get the segment that displays the intersection of DSL connections with New Zealand visitors (that is, all visitors to your Web site who use DSL and whose ISP shows a New Zealand origin), add another filter to the Connection Type query (cited above) that specifies Visitors > Geographic where the value equals New Zealand.

Certain reports show more information in the form of columns in their summary tables than other reports. Because of this, you define filters for segment queries in slightly different ways for some reports. For example, for segments built using the Navigation reports > Internal Search metric, the summary table of the report shows a line item for multidimensional data. This means that you can drill down on an item listed in the summary table for more information about any of the search attributes associated with the keyword displayed in the internal search report. Because some reports feature multidimensional data (Custom Metric, Internal Search, the filter definition process differs slightly. The examples below illustrate differences in filter definition methods.

When you click on Define Next Filter after completing one filter definition, the dropdown menus and text boxes or list boxes from the preceding filter definition are replaced by a natural language description of the Filter. In addition, the area to define the next filter is opened up. If you click on the icon for the preceding filter, you can view or edit that filter.

Page 176: Hitbox Installation Guide

|Page 164

Active segments: Report Groups, Associated Dimensions, Expected Operands, and Searchability

Report Selection

Once you have built filters for the segment, decide how HBX should display the segment information. The report selection page lists in sections the reports you wish to associate with the segment you are creating. Most HBX reports are available in the Default Reports section, which includes all the report groups listed in the following table. Only Navigation and Campaign reports are listed separately.

Page 177: Hitbox Installation Guide

|Page 165

No action is required if you wish the segment to be displayed in most HBX reports. To see which reports are included in the Default Reports section, click on the arrow to expand the list of Default Reports.

If you also wish to add the reports in the Navigation or Campaign Reports section, enable the checkboxes next to the appropriate options. To display the reports available in the Navigation or Campaign Reports section, click on the arrow to expand the list. To review summary information about the segment to be created, click Next >

Figure 2. Default Reports

Figure 3. Navigation Reports

Page 178: Hitbox Installation Guide

|Page 166

Figure 4. Campaign Reports

Commerce Reports

You can also associate reports in the HBX commerce module with a segment. When you create a segment with an associated commerce report, data to be filtered is available from January 1, 2006, regardless of the segment creation date. In addition, you can edit any segment to add commerce reports. To do this, simply click on the segment in the segment list. When the segment detail appears, enable the commerce reports checkbox.

HBX considers the addition of Commerce reports to a segment as using another segment. For example, if you purchased ten segments for your account, adding a segment with Commerce reports enabled will use two of the ten segments. Be sure that you have enough segments available before adding a Commerce report to your active segment. The HBX commerce module does not support population groups. Population groups are therefore not available as a filter or condition in the segment creation process. Site conversion, cart conversion, product conversion, lifetime customer value, and time to first purchase reports cannot be associated with a segment.

Figure 5. Commerce Reports

Page 179: Hitbox Installation Guide

|Page 167

Report Confirmation

After entering all information about the new segment, including details about the date range, name, and description of the segment as well as the filters to be satisfied by the query and the reports to be associated with the segment, HBX displays a segment summary page. Here you examine whether the segment correctly describes the specific group of visitors you are targeting, and make revisions if necessary.

To complete creation of the segment, click Finish.

To edit the segment, click < Back.

Example of creating a Segment, Type 1 -Exit link as filter

Suppose you wish to examine on a daily basis a very specific group of visitors to your Web site who meet the following criteria: Visitors who left your site via the bearz.com/confirmation.htm or the bearz.com/order_summary.htm URLs .In addition to this query, you want to be able to compare information on that segment during the same period with data gathered about the undifferentiated visitor using the Pages > Visits per page report.

To create such a query, take the following steps in the Segment Administration page. For all text box entries, refer to the section on Illegal Characters.

Click on New. The Create Segment page opens.

Enter a descriptive and unique name for the segment. In this case, the name is BearzExits.

In the Description field, enter a short description of the segment. One description for the BearzExits might be: Confirmation_and_order_summary_exits

Enter today's date to start data collection for the segment starting today. If you wish more extended data on the segment, enter a date in the past. Do not enter an end date.

In the Define Segment Filters area, create the first filter that forms the query: For Filter 1, select a kind of Report from the dropdown menu. In this example, select Navigation.

In the next dropdown menu, select a dimension of the report. A dimension is one of the metrics available from a report. In this example, select Exit Link.

In the third dropdown menu, select an operator that relates the dimension with the operand to form a logical expression. In this example, select contains.

The last set of ten text boxes allows you to enter possible matches for exit links. Enter a partial or complete URL as a potential exit link candidate. Here, enter confirmation.htm in the first text box and bearz.com/order_summary.htm in the second text box. Note that because the operator is contains, a wider range of acceptable and matchable entries is possible.

When you are satisfied with adding elements to the filter, click Next>

The report page lists the reports you wish to associate with the segment you are creating. To choose the default set of reports (which contains the Pages > Visits per page report), simply click on Next >.

A confirmation page allows you to review the parameters of the segment, including all segment filters you entered. If you wish to complete creation of the segment, click Finish. To edit the segment, click < Previous.

Remember that once created, segment filters may not be changed. You can however, archive, unarchive, deactivate, and delete the segment.

Example of creating a Segment, Type 2 - Internal search and download as filters

Page 180: Hitbox Installation Guide

|Page 168

Suppose you wish to examine on a daily basis a very specific group of visitors to your Web site who meet the following criteria: Visitors who did an internal search on batik and Sumatra and who downloaded the "nutmeg grater" Flash movie. In addition to this query, you want to be able to compare information on that segment during the same period with data gathered about the undifferentiated visitor using Traffic > Page Views and Content > Most Requested Content reports.

To create such a query, take the following steps in the Segment Administration page. For all text box entries, refer to the section on Illegal Characters.

Click New. The Create Segment page opens.

Enter a descriptive and unique name for the segment. In this case, the name is ISBatSumNutFla.

In the Description field, enter a short description of the segment. One description for the ISBatSumNutFla might be: Search batik&Sumatra nutmeggrater anime

Enter today's date to start data collection for the segment starting today. If you wish more extended data on the segment, enter a date in the past. Do not enter an end date.

In the Define Segment Filters area, create the first of three filters that form the query: For Filter 1, select a kind of Report from the dropdown menu. In this example, select Navigation.

In the next dropdown menu, select a dimension of the report. A dimension is one of the metrics available from a report. In this example, select Internal Search.

In the Keyword dropdown menu, choose an operator. In this example, select equals.

In the text box next to the operator, enter batik as the keyword value.

In the next dropdown menu, choose another operator. In this example, select equals. Note that HBX displays the label for this dropdown menu that you assign to the Search Parameter in Downloads and Administration > Edit Account Information.

In the text box next to the operator, enter a value for the search attribute. In this example, enter Sumatra in the text box as the search attribute value.

Once you have finished Filter 1 of the query, you are ready to enter information for the second filter. Click Define Next Filter. The view of the Filter 1 dropdown menus and boxes is replaced by a natural language summary of the filter. You can expand and edit Filter 1 by clicking on the icon.

In Filter 2 of the query, select another kind of Report. In this example, choose Page. From the Dimension dropdown menu, select Downloads. In the operator box, select equals. In the text box, enter the string matching the name of the nutmeg grating movie, nutgrate.fla

When you are satisfied with adding elements to the filter as listed in the descriptions each of the filters, click Next>

The report page lists the reports you wish to associate with the segment you are creating. To choose which reports HBX displays segment information in, check the desired report boxes. In this example, check the Traffic > Page Views and Content > Most Requested Content reports.

A confirmation page allows you to review the parameters of the segment, including all segment filters you entered. If you wish to complete creation of the segment, click Finish. To edit the segment, click < Back.

Remember that once created, segment filters may not be changed. You can however, archive, unarchive, deactivate, and delete the segment.

Example of creating a Segment, Type 3 - Geography, referring URL, and content group as filters

Page 181: Hitbox Installation Guide

|Page 169

Suppose you wish to examine on a daily basis a very specific group of visitors to your Web site who meet the following criteria: Visitors from France who were referred by Google and who viewed the /kitchen content group. In addition to this query, you want to be able to compare information on that segment during the same period with data gathered about the undifferentiated visitor using Traffic > Page Views, Content > Most Requested Content, and Pages > Most Requested Pages reports.

To create such a query, take the following steps in the Segment Administration page. For all text box entries, refer to the section on Illegal Characters.

Click New. The Create Segment page opens.

Enter a descriptive and unique name for the segment. In this case, the name is FrGooKitchen.

In the Description field, enter a short description of the segment. One description for the FrGooKitchen might be: French Googlereferred kitchen content

Enter today's date to start data collection for the segment starting today. If you wish more extended data on the segment, enter a date in the past. Do not enter an end date.

In the Define Segment Filters area, create the first of three filters that form the query: For Filter 1, select a kind of Report from the dropdown menu. In this example, select Visitor.

In the next dropdown menu, select a dimension of the report. A dimension is one of the metrics available from a report. In this example, select Geography.

A 4 x 10 grid of text boxes opens, where you select continent, country, state/province, and city. In the first dropdown menu, choose from a list of continents tracked by HBX. In this example, find and select : (1) Western Europe in the list of available continent values and (2) France in the list of available countries. If the visitor/prospective segment arrives from one of the countries for which HBX has state/provincial and city information, you may also select from the Province/State and City dropdown menus.

Once you have finished Filter 1 of the query, you are ready to enter information for the second filter. Click Define Next Filter. The view of the Filter 1 dropdown menus and boxes is replaced by a natural language summary of the filter. You can expand and edit Filter 1 by clicking on the icon.

In Filter 2 of the query, select another kind of Report from the dropdown menu. In this example, choose Referrer. From the Dimension dropdown menu, select Referring URL. In the operator box, select contains. In the text box, enter the string google. Click Define Next Filter.

Finally, in Filter 3 of the query, select another kind of Report. In this example, choose Content. From the Dimension dropdown menu, select Most Requested Content. In the operator box, select contains. In the text box, enter the string /kitchen matching the name of the kitchen content group

Rather than entering the name kitchen, you can click on the search icon and enter search criteria. HBX searches its database for matches to content groups satisfying the criteria you entered.

When you are satisfied with adding elements to the filter as listed in the descriptions each of the filters, click Next>

The report page lists the reports you wish to associate with the segment you are creating. To choose which reports HBX displays segment information in, check the desired report boxes. In

Page 182: Hitbox Installation Guide

|Page 170

this example, Traffic > Page Views, Content > Most Requested Content, and Pages > Most Requested Pages reports

A confirmation page allows you to review the parameters of the segment, including all segment filters you entered. If you wish to complete creation of the segment, click Finish. To edit the segment, click < Previous.

Remember that once created, segment filters may not be changed. You can however, archive, unarchive, deactivate, and delete the segment.

Uniqueness Filtering Administration

Uniqueness Filtering allows you to count the number of unique filters to your site or to a section of your site over an arbitrary date range.

Before using the Uniqueness Filtering feature, please contact your Omniture Accounts Manager.

On the uniqueness filtering administration page, you work with uniqueness filters. You can:

view a listing of active and archived uniqueness filters, and examine detailed information about an active or archived uniqueness filter

create uniqueness filters

archive uniqueness filters and delete uniqueness filters

You can click on a small help icon for a brief explanation of technical concepts introduced in this page.

Uniqueness Filter List

The uniqueness filter administration page presents tabbed views listing both active and archived uniqueness filters. Prior to creating your first uniqueness filter, no uniqueness filters appear in the list. The total number of uniqueness filters is displayed at the top of the table. The list of uniqueness filters is arranged in columns with the following information:

Uniqueness Filter Name

Description

Date Created

Start Date

End Date

Status

All columns in the list are sortable. You can click on the column headers to reorder the items listed in either ascending or descending order. A small triangle next to the column header indicates the sort order. By default, the list of uniqueness filters is sorted by the uniqueness filter name column.

The uniqueness filter name is the short name you assign when creating the uniqueness filter, while the description is a longer explanation of the uniqueness filter name. You can click on the name of the uniqueness filter in the list to display a popup window with detailed information about the uniqueness filter. The date created shows when the uniqueness filter was created, while the start date indicates the day you instructed HBX to begin collecting information for the uniqueness filter

Page 183: Hitbox Installation Guide

|Page 171

In contrast with active segments, where you can specify either a snapshot of historic data or monitor data in real time, the uniqueness filter allows only a snapshot of historic data by specifying both start and end dates in the past.

Status indicates the state of the uniqueness filter. HBX distinguishes three statuses:

Pending (uniqueness filter is waiting to be processed by HBX)

Processing (HBX is currently processing the uniqueness filter information)

Complete (HBX has finished processing the uniqueness filter for the specified date range. No further processing will occur for the uniqueness filter.)

Uniqueness Filter Detail view

When you click on a uniqueness filter in the list of either active or archived uniqueness filters, a popup window displays non-editable information about the uniqueness filter including:

Uniqueness Filter Name

Description

Date Created

Start Date

End Date

Conditions (or filters) defined for the uniqueness filter

Archiving a uniqueness filter

If you wish to retire a uniqueness filter temporarily or permanently, you can archive it. When a uniqueness filter is archived (or made inactive), it no longer appears in the list of active uniqueness filters or in the uniqueness filter report.

To archive a uniqueness filter:

Select the radio button next to a uniqueness filter from a list of active uniqueness filters.

Click on the Archive button. A popup box will ask you to confirm your intention to archive the uniqueness filter.

When the screen refreshes, the uniqueness filter no longer appears in the list of active uniqueness filters in the administration page. In addition, the uniqueness filter name no longer appears in the Uniqueness Filter report.

Deleting a uniqueness filter

Unlike archiving, deleting a uniqueness filter is an irreversible process that completely eliminates the information you entered about a uniqueness filter. Because you cannot undelete a uniqueness filter, carefully consider whether to delete a uniqueness filter.

To delete a uniqueness filter:

Select the radio button next to a snapshot uniqueness filter from the list of archived uniqueness filters.

Click on the Delete button. A popup box will ask to ask you to confirm your intention to delete the uniqueness filter.

When the screen refreshes, the uniqueness filter no longer appears in the list of uniqueness filters in the administration page.

Creating Uniqueness Filters

Page 184: Hitbox Installation Guide

|Page 172

The creation of a uniqueness filter involves three primary steps:

Indicate basic parameters for the uniqueness filter (name, description, and start/end dates).

Specify the conditions (or filters) to be met by the query.

Review the summary of the query. Accept or edit the query.

Just as with creating active segments, the definition of uniqueness filters requires some preliminary analysis of your site design. Carefully consider how best to identify uniqueness filters based on the information contained in page name, URLs, or links before creating a uniqueness filter. This is especially important when defining uniqueness filters.

Once a uniqueness filter has been defined in HBX for your account, it cannot be edited. You may however delete a uniqueness filter and start over again. You may also archive a uniqueness filter. To start creating a uniqueness filter, click Create Uniqueness Filter.

As with Active Segments, the number of available uniqueness filters available is limited to the quota you established via the Omniture Accounts Manager. In addition, uniqueness filters and active segments share the same quota. For every uniqueness filter used, one less active segment is available. This is true even if the uniqueness filter is deleted.

Uniqueness Filter Information

Basic parameters to include for any uniqueness filter include:

uniqueness filter name

short description

date type (based on a historic date range)

The uniqueness filter name is a descriptive and unique name for the uniqueness filter. It is suggested that you name a uniqueness filter descriptively so that you will remember some of its parameters when viewing uniqueness filter data in reports. The short description helps you distinguish among uniqueness filters you create.

HBX collects data for the uniqueness filter only for data over a specified range of historic dates. Enter start and end dates in the past. The period allowed for a snapshot uniqueness filter can be up to six months.

Filters

At the conceptual level, a filter is defined by the following elements:

a report group and its associated dimension (such as Referrer > URL)

an operator (such as contains, equals, greater than, less than, between)

an operand (the term you enter on the right side or select from a list of an equation or comparison)

constraint by visit or by visitor

An operand can consist of one or more terms in the form of a number or a text string. Multiple operands for one filter are strung together with logical OR. HBX allows up to 10 separate OR-connected operands in a single filter if the report/dimension allows multiple operands.

A uniqueness filter query may optionally include one or more filters. If filters are being used, they are strung together with logical AND. HBX allows up to 10 separate AND-connected filters in a single uniqueness filter. When creating such queries, remember that as more filters are added to the query, the resulting data set becomes narrower.

Page 185: Hitbox Installation Guide

|Page 173

The operators available for a report group or metric depend on the kind of data expected as the operand. If for example you define a uniqueness filter that looks for time data (such as Navigation > Time Spent on Site), the operators in the dropdown include less than, greater than and between, where the data expected as an operand is an amount of time (1 hour, 2 hours, etc.)

The type of data you can enter (or select from a list) as an operand varies according to the data expected for report group/dimension. Data types include:

text (page name, URL, string fragment)

number (integer, floating point number)

Because HBX allows you to build filters using partial information, you can enter just a fragment of the name or URL or ID. When selecting content groups or page names currently tracked by HBX, you may click on the icon

on the right side of the text field. When you click on the icon, a browser window pops up allowing you to enter search criteria. Read more about the HBX Search Utility. For some report group/dimensions, you can only select values from a list of standard values. The Data Type column of the table indicates these report group/dimensions with the notation (LIST ONLY).

Queries of the uniqueness filter typically describe a line item in one report's summary table, if data is available for the line item. For example, in the HBX report System > Connection Type, a possible value is DSL. To make the query more specific, you link together filters of the uniqueness filter. For example, to get the uniqueness filter that displays the intersection of DSL connections with New Zealand visitors (that is, all visitors to your Web site who use DSL and whose ISP shows a New Zealand origin), add another filter to the Connection Type query (cited above) that specifies Visitors > Geographic where the value equals New Zealand.

Certain reports show more information in the form of columns in their summary tables than other reports. Because of this, you define filters for uniqueness filter queries in slightly different ways for some reports. For example, for uniqueness filters built using the Navigation reports > Internal Search metric, the summary table of the report shows a line item for multidimensional data. This means that you can drill down on an item listed in the summary table for more information about any of the search attributes associated with the keyword displayed in the internal search report. Because some reports feature multidimensional data (Custom Metric, Internal Search, the filter definition process differs slightly.

When you click on Define next filter after completing one filter definition, the dropdown menus and text boxes or list boxes from the preceding filter definition are replaced by a natural language description of the Filter. In

addition, the area to define the next filter is opened up. If you click on the icon for the preceding filter, you can view or edit that filter.

Visitor-based vs Visit-based filtering

To understand how to build uniqueness filters with visit-based or visitor-based constraints, it is first necessary to understand the fundamentals of HBX data collection.

While HBX obtains information on site activity in several ways, the most important method involves setting a browser-specific cookie on the user's computer, and the execution of a JavaScript script when the user accesses a page on the site. The cookie allows the accumulation of persistent data about the way the user navigates a site. The user's browser accepts the cookie containing a unique ID assigned to that computer, and the time that the user accessed the Web site, among other data.

Drawing on this data, HBX analyzes site activity in terms of one or more of the following basic entities. Here, it is assumed that the site has HBX code on its pages, and that the visitor's browser is configured to accept cookies and to enable JavaScript.

visit (also called a session) The visit covers all site activity (or all events) in which the user interacts with the site. HBX considers the visit to be completed after thirty minutes of inactivity, that is, a period of thirty

Page 186: Hitbox Installation Guide

|Page 174

minutes during which the user doesn't interact with the site. This period is calculated from the time registered on the cookie. A visit must have one visitor.

visitor The visitor refers to an individual user who enters the site and interacts with it. This individual user is determined by the unique ID on the cookie. A visitor is associated with one or more visits.

event An event is any data collection request sent to the HBX data center triggered by a visitor's interaction with a page on your Web site. HBX recognizes a variety of events: page view, internal search, conversion, link click, download, and custom-defined. Different kinds of events may occur simultaneously, such as conversion and link click events.

Thus, the visit is related to time on the site, while the visitor is a unique site user. An event is the visitor's action on the site.

When you create uniqueness filters based on visit or visitor conditions, you target a subset of the uniqueness or visitor information gathered by HBX. Note that the subset may be identical to the set.

The following table presents possible combinations of filters with visit-based and visitor-based conditions. The description column shows the metric (report group) operator and operand, as well as the occurrences of the condition. The explanation column indicates what particular group the visit-based or visitor-based segment is targeting.

DESCRIPTION EXPLANATION

ACQUISITION SOURCES > TOP

REFERRING DOMAINS > DOMAINS

EQUALS

"GOLDENAGECARTOONS.COM" AND

OCCURRENCES PER VISITOR IS

GREATER THAN 0.

ALL VISITORS WHO CAME TO THE SITE FROM DOMAIN

GOLDENAGECARTOONS.COM ONE OR MORE TIMES.

ACQUISITION SOURCES > TOP

REFERRING DOMAINS > DOMAINS

EQUALS

"GOLDENAGECARTOONS.COM" AND

OCCURRENCES PER VISIT IS TRUE.

ALL VISITS BY VISITORS THAT CAME TO THE SITE FROM DOMAIN

GOLDENAGECARTOONS.COM.

ACQUISITION SOURCES > TOP

REFERRING DOMAINS > DOMAINS

EQUALS

"GOLDENAGECARTOONS.COM" AND

OCCURRENCES PER VISIT IS FALSE.

ALL VISITS BY VISITORS THAT CAME TO THE SITE FROM ANY DOMAIN

EXCEPT GOLDENAGECARTOONS.COM.

VISITORS > TIME OF FIRST VISIT

EQUALS 11/07/2005 AND

OCCURRENCES PER VISITOR IS

TRUE.

ASSUMING THE START AND END DATE OF THE SEGMENT IS 11/07/2005,

ALL VISITORS WHO FIRST VISITED THE SITE ONE TIME ON 11/07/2005.

(NOTICE THAT HBX AUTOMATICALLY ENTERS "OCCURRENCES PER VISITOR

IS TRUE")

COMMERCE > TOTAL ORDERS

GREATER THAN 1 AND

OCCURRENCES PER VISITOR IS

TRUE.

ASSUMING THE START AND END DATE OF THE SEGMENT IS 11/11/2005,

ALL CUSTOMERS (VISITORS) WHO MADE TWO OR MORE PURCHASES ON

11/11/04.

COMMERCE > TOTAL ORDERS

GREATER THAN 1 AND

ASSUMING THE START AND END DATE OF THE SEGMENT IS 11/11/2005,

ALL CUSTOMERS (VISITORS) WITH TWO OR MORE PURCHASES WHO DID

Page 187: Hitbox Installation Guide

|Page 175

OCCURRENCES PER VISITOR IS

FALSE.

NOT ORDER ON 11/11/04.

VISITORS > LOYALTY IS BETWEEN

2 AND 4 AND OCCURRENCES PER

VISITOR IS GREATER THAN 2.

ALL VISITORS WHO HAVE TWO, THREE, OR FOUR PREVIOUS VISITS, WHERE

THIS SCENARIO OCCURS THREE OR MORE TIMES.

NAVIGATION > TIME SPENT PER

VISIT GREATER THAN 1000 AND

OCCURRENCES PER VISIT IS TRUE.

ALL VISITS BY VISITORS WHO HAVE ONE OR MORE VISITS LASTING LONGER

THAN 1000 SECONDS (ABOUT 16 MINUTES).

NAVIGATION > TIME SPENT PER

VISIT LESS THAN 1000 AND

OCCURRENCES PER VISIT IS FALSE.

NO VISITS BY VISITORS WHO HAVE A VISIT LASTING LESS THAN 1000

SECONDS (ABOUT 16 MINUTES).

CONTENT > CONTENT GROUPS

CONTAINS "/GATHER LEADS" AND

OCCURRENCES PER VISITOR IS

GREATER THAN 1.

ALL VISITORS WHO GO TO THE "/GATHER LEADS" CONTENT GROUP TWO

OR MORE TIMES.

NAVIGATION > INTERNAL SEARCH

KEYWORD CONTAINS "DENALI"

AND OCCURRENCES PER VISIT IS

GREATER THAN 0.

ALL VISITS BY VISITORS WHO SEARCH THE SITE INTERNALLY FOR THE

KEYWORD "DENALI" DURING ONE OR MORE VISITS.

COMMERCE > ORDER VALUE

GREATER THAN 1000.00 AND

OCCURRENCES PER VISITOR IS

GREATER THAN 0.

ALL CUSTOMERS (VISITORS) WHO PLACE ONE OR MORE ORDERS WHERE

EACH ORDER HAS A VALUE OF MORE THAN $1000.

COMMERCE > SHIPPING COST

GREATER THAN 5.00 AND

OCCURRENCES PER VISIT IS

GREATER THAN 0.

ALL CUSTOMERS (VISITORS) WHO PLACE ONE OR MORE ORDERS WITH

MORE THAN $5.00 IN SHIPPING COSTS.

NAVIGATION > TOTAL FUNNEL

VISITS EQUALS "1244" AND

OCCURRENCES PER VISITOR IS

GREATER THAN 2.

ALL VISITORS WHO VISIT FUNNEL 1244 TWO OR MORE TIMES.

CAMPAIGNS > RESPONSES EQUALS

"KAC-SMBPG" OR "KAC-

FROOGLE". AND OCCURRENCES

PER VISIT EQUALS 1.

ALL VISITS BY VISITORS WHO MADE ONLY ONE RESPONSE TO EITHER

KEYWORD AD CAMPAIGNS KAC-SMBPG OR KAC-FROOGLE.

Report Confirmation

After entering all information about the new uniqueness filter, including details about the date range, name and description of the uniqueness filter as well as the filters to be satisfied by the query, HBX displays a uniqueness filter summary page. Here you examine whether the uniqueness filter correctly describes the specific group of visitors you are targeting, and make revisions if necessary.

To complete creation of the uniqueness filter, click Finish.

To edit the uniqueness filter, click < Back.

Page 188: Hitbox Installation Guide

|Page 176

Search Utility

To search in the set of content groups or page names currently tracked by HBX, you may click on the icon on the right side of the text field. When you click on the icon, a browser window pops up allowing you to enter search criteria.

The method of building search criteria for the page name or content group is identical regardless of the administrative page the search utility appears in. The search utility is available for tagless funnels, conversions, segments, and campaigns. Page name is short for complete page name, that is, content group + page name

In the Search in: dropdown menu, you select the page name or content group to search. Then you select an operator in the Which: dropdown menu (equals, does not equal, contains, does not contain, starts with, or ends with) to constrain the search. Finally, you enter in the Keyword: text field a word or number you wish to match in this search. The keyword you enter must conform to character size and character types described in Illegal Characters.

Click on the Search button. Soon HBX displays a list of matches to the search criteria you specified. Once you find an appropriate match, select the radio button in front of the line item and click the Submit Selection button. If no matches are found, HBX displays a No Results message. If none of the matches are appropriate to the criteria you are building, click on the Search Again button.

Funnel Analysis

You can examine the sequential navigation and traffic behavior of your visitors within a given set of pages using funnels. A funnel is a group of Web pages matching business goals with user goals, modeled on a simple user completion scenario and projected outcomes. The visitor to a web site may have a particular goal, such as buying a book. The visitor first finds the product, researches different types of products offered (used, new, large-type, hard-back, anthology), then acts on the decision. The e-commerce model should reflect this user scenario by providing (1) an easily locatable product (through search boxes or user-friendly menu navigation); (2) ability to shop comparatively (look at different selections and different shipping costs); and (3) an easily filled shopping cart that discourages abandonment.

Ideally, a visitor enters the funnel at the first level, progressively interacts with other pages in the funnel, and arrives at a goal page. It is necessary for the visitor to touch all levels in sequence without idling more than 30 minutes between levels of the funnel. This activity-dependent time period is known as a funnel session. The visitor may stray away from the funnel pages or go backwards in the funnel. But as long as all levels in the funnel are traversed in sequence during the session, the visitor's funnel activity will result in a funnel conversion. If the visitor leaves the funnel prematurely, it is counted as a funnel abandonment.

If a visitor happens to visit pages in the funnel so as to register a funnel conversion in HBX, no other funnel conversions (besides the first conversion) are counted during that session. While the visitor can continue to visit any or all of the funnel pages in any order, only the first funnel conversion is counted while the funnel session is still active. But, if the visitor leaves the site (or the browser sits idle) for over one-half hour and returns to the funnel pages, once again following the levels of the funnel in sequence, another new conversion is reported. Note also that if the visitor satisfies conditions of a conversion rule while in a funnel, another non-funnel conversion is reported by HBX in the conversion summary.

The funnel's business goal should be reflected in the target page or pages (conversion level) of the funnel. Funnel analysis exposes visitor participation in the funnel, enabling you to evaluate retention and possible conversion of visitors within a set of funnel pages. From this you can better determine the effectiveness of the content in your funnel pages toward reaching your business goals.

Generally funnels:

Page 189: Hitbox Installation Guide

|Page 177

start with page content for a 'hook' (flashy banner advertisement, e-mail promotion – funnel level 1)

progress through value-added or persuasive content (funnel level 2), and

end by achieving a particular objective (getting the visitor into the catalog ordering pages, or submitting a form – the funnel conversion level).

While a funnel can have between two and ten levels, a minimum recommended funnel size is three levels. You are allowed to put code for three separate funnels on a page if you have one HBX account. (Read about advanced funnel coding for information on implementing funnels with more than one HBX account.)

As you add more levels to the funnel, more funnels to your pages, and (optionally) account-linked funnels to your pages, you increase the complexity of integrating Web design with marketing strategy in determining the most content-effective use of Web pages. It is suggested that a simpler funnel implementation for content pages reflects the logical progression toward your ultimate business goal. Furthermore, the likelihood that funnels will be navigated through to the conversion level diminishes as the number of levels increases.

Funnel Administration

Creating funnels begins with the Funnel Administration page, accessed from the top-level menu under "Site Tools and Reporting > Funnel Administration". This page lists Active Funnels and Archived Funnels, arranged according to funnel ID number, funnel name, conversion level, and activation date and sorted in ascending alphabetical order by name.

Here you can create up to a maximum of 20 active funnels at any one time. You may create fully functional funnels on the funnel administration page without modifying page code (tagless funnels), or generate funnel IDs and level IDs on the funnel administration page for use with pages you wish to tag (tagged funnels). You can also edit or archive existing funnels in the active list, and permanently delete any archived funnels.

HBX users who coded funnels on their site pages prior to the introduction of tagless funnels may also create a hybrid funnel, combining funnel and level IDs of already tagged funnels with criteria specified in the tagless funnel page.

In contrast with active segments and population groups, where you can restore information from archived active segments and population groups, funnel information cannot be restored after archiving.

Creating a Tagless Funnel

On the funnel administration page, click Create New Funnel.

Determine a name for your tagless funnel. The funnel name must conform to character size and character types described in Illegal Characters. For example, the name can be set to reflect the business goal of your funnel.

Tip

Page 190: Hitbox Installation Guide

|Page 178

While it is possible to use the exact same name for many funnels, it is suggested that you create unique names for tagless funnels, so as to avoid confusion when you interpret the information reported in the funnel statistics pages.

After naming the funnel, determine a unique name for the first level of your funnel. The funnel level name must also conform to character size and character types described in Illegal Characters.

If any illegal characters (such as spaces, asterisks, ampersands, and so on) are included in the name you create for the funnel or level, HBX pops up a message asking if you wish to have the illegal characters removed. If you click OK, the name will be reduced by the amount of illegal characters you originally entered. For example, if your funnel is tentatively named "Loyal Readership's Funnel", the corrected version elides the spaces and apostrophe to "LoyalReadershipsFunnel".

If you attempt to enter a non-unique name for a level, a popup error message is displayed as a reminder that the level name must be unique.

After naming the tagless funnel, decide how many funnel levels you want to add for the funnel. For one funnel, you may enter up to 10 separate levels. You must enter at least two levels per funnel. The most recent level entered is automatically the conversion level. When planning levels for your funnel, remember that the final level = the conversion level.

For each level of the funnel, you specify up to five kinds of criteria for filtering the data that will appear in the conversion level reports. Build filters for funnel levels by selecting options from dropdown menus, and entering or searching for the page names or content group names on your site in the text box.

Options in the dropdown menus include

Page names and URLs in tagless funnel criteria are case-sensitive.

First dropdown menu:

Page Name (abbreviation for Content Group/Page Name - the full page name, that is, the content group plus page name, that you wish to match)

Content Group

Page Name(_pn) (this refers to the page name defined in the hbx.pn variable in the HBX page code)

Second dropdown menu

equals

does not equal

contains

does not contain

starts with

ends with

Text field

Page 191: Hitbox Installation Guide

|Page 179

In the text field, enter any page name or content group name on your site. Page name is short for complete page name, that is, content group + page name. If you need a reminder or list of content groups and page names valid

for your site, when selecting content groups or page names, you may click on the icon on the right side of the text field. When you click on the icon, a browser window pops up allowing you to enter search criteria. Read more about the HBX Search Utility. Once you enter the content group or page name in the text field, either proceed to the next level of the funnel, or further refine your funnel criteria by adding another page name or content group expression to the level immediately below the first expression. If you click on the icon appearing on the header for each level of the funnel next to the funnel level name, HBX expands or collapses the area where the level criteria are displayed.

To complete the funnel, click on Finish at any time after you have filled at least one line of funnel criteria for two levels. An alert window appears, asking to confirm if you want to create the funnel with the chosen name and number of levels, where the last level created = the conversion level. If you click OK, the funnel is created as you designed it. The funnel will soon become active and start collecting data.

You cannot go back to add or delete levels once the funnel is created, but you can change the name of

the level by clicking 'Edit' once the funnel is created. You can also edit or update criteria on any of the levels.

If you wish to add more levels to the funnel, click the Add Next Level button and repeat step 4 above, entering a new unique name for each new level. In addition, enter one or more lines of funnel criteria for each level that you add to the funnel.

If you attempt to create more than 20 funnels without first archiving an active funnel, or more than ten levels per funnel, an error message is displayed as a reminder of the maximum number of funnels or levels allowed.

EXAMPLE OF A TAGLESS FUNNEL

Suppose you wish to track the golf enthusiast's path through pages on your sports content site, and show a conversion when the visitor submits a page for registering for email tee alerts (special golf offers for on-line golf businesses within the visitor's zip code).

First, you need to determine relevant content pages most likely to lead to a conversion.

Create a new funnel named TeeAlert and name the first level Hook.

Select one or more catchy pages representing the general golf content group on your site. Criteria on the Hook level include possible matches where Content Group contains /golf OR Content Group contains /sports OR Page Name contains /golf/cart.htm. You may wish to make the entrance of the funnel "wider" by adding several possible qualifying conditions connected by OR so as not to exclude candidates from the possible conversion.

Create a level two called Acquire. Since the visitor is already in the entrance of the funnel, you want to narrow choices. Specify this by making Page Name equal to/promos/teealert/registration.htm.

Create the last conversion level and call it Registered. As with level Acquire, only one choice should exist for the goal page. In this case, the candidate has successfully filled out the form and submitted it. Specify this in the conversion level criteria by making Page Name equal to /optin/confirmation.htm.

Page 192: Hitbox Installation Guide

|Page 180

Now examine the TeeAlert funnel in the HBX HTML interface. You can see how well visitors achieved your business goal in traversing the funnel, and whether they converted by successfully viewing all levels of the funnel, or failed to convert by abandoning the funnel. You can then revise the funnel level criteria to capture a wider slice of the audience, or change content or design on your Web site to enhance acquisition.

Creating a Tagged Funnel

To create a tagged funnel, do not change the settings of the dropdown menus that list Content

Group/Page Name or operator (equals, contains, and so on).Further, do not enter any criteria in the text box next to

the search icon .

On the funnel administration page, click Create New Funnel.

Determine a name for your tagged funnel. The funnel name must conform to character size and character types described in Illegal Characters. For example, the name can be set to reflect the business goal of your funnel.

While it is possible to use the exact same name for many funnels, it is suggested that you create unique names for funnels, so as to avoid confusion when you interpret the information reported in the funnel statistics pages.

After naming the funnel, determine a unique name for the first level of your funnel. The funnel level name must also conform to character size and character types described in Illegal Characters.

If any illegal characters (such as spaces, asterisks, ampersands, and so on) are included in the name you create for the funnel or level, HBX pops up a message asking if you wish to have the illegal characters removed. If you click OK, the name will be reduced by the amount of illegal characters you originally entered. For example, if your funnel is tentatively named "Loyal Readership's Funnel", the corrected version elides the spaces and apostrophe to "LoyalReadershipsFunnel". If you attempt to enter a non-unique name for a level, a popup error message is displayed as a reminder that the level name must be unique.

After naming the funnel, decide how many funnel levels you want to add for the funnel. For one funnel, you may enter up to 10 separate levels. You must enter at least two levels per funnel. The most recent level entered is automatically the conversion level. When planning levels for your funnel, remember that the final level = the conversion level. You use a special tag in the page code to indicate funnel conversion level. Find more information on tagging the conversion level below in the Coding Funnels section. To complete the funnel, click on Finish at any time. An alert window appears, asking to confirm if you want to create the funnel with the chosen name and number of levels, where the last level created = the conversion level. If you click OK, the funnel is created as you designed it. The funnel will soon become active and start collecting data..

Page 193: Hitbox Installation Guide

|Page 181

You cannot go back to add or delete levels once the funnel is created, but you can change the name of

the level by clicking 'Edit' once the funnel is created.

If you wish to add more levels to the funnel, click on Add Next Level, and repeat step 4 above, entering a new unique name for each new level.

If you attempt to create more than 20 funnels without first archiving an active funnel, or more than ten levels per funnel, an error message is displayed as a reminder of the maximum number of funnels or levels allowed.

Active and Archived Funnels

The information in this section applies to both tagged and tagless funnels.

The funnel administration page displays active and archived funnels for your account. Funnels you create are listed in the funnels section. The archived funnels section identifies formerly active funnels, listed according to activation date and archive date.

ARCHIVING FUNNELS

Archiving a funnel is a one-time, irreversible action that permanently stops funnel data from being collected. Once a funnel is archived, all data that was collected for that funnel is still available in the HTML interface when looking at funnel statistics, but you can not continue collecting this data again once the funnel is archived. If you decide to archive an active funnel, note that you cannot later "un-archive" or reactivate that funnel.

Any time you archive a funnel, you tell HBX to stop collecting data for the funnel with the funnel ID you created in the funnel administration page. If you later delete that funnel, remember that deletion only eliminates stored historic data about your funnel. Neither archiving nor deleting funnels will affect the funnel code on your page. It is important to remove old funnel references in page code once you archive funnels.

To archive a funnel, select the funnel from the Active Funnels list, and click the 'Archive' button. A popup alert will advise you that the funnel is to be permanently archived. The funnel will then be listed in the archived funnels section, along with the archive date.

DELETING FUNNELS

If you no longer wish to keep the statistics stored in an archived funnel, click on the Delete button in the list of archived funnels. Deleting an archived funnel removes it from the archived funnels list and also wipes historic data stored for that archive.

While only 20 funnels can be maintained at any one time in the list of active funnels, and no restrictions are placed on the number of funnels archived for your account, it is recommended to limit funnel archives to a number that you can easily manage.

Coding Tagged Funnels

Just as you edit the JavaScript code for each page depending on campaign and segment identifiers you wish to track, you also need to code individual pages for tagged funnels. The funnel code is similar to that used for campaigns and segments, with slight differences in the syntax used for the funnel identifiers and levels. Also like goal pages for campaigns, you must establish a final target page for the conversion funnel level.

Tip

Page 194: Hitbox Installation Guide

|Page 182

In the snippet of HBX code below (found under 'Site Tools and Reporting>Edit Account'), the funnel variable is highlighted in gray.

<!-- OMNITURE CODE HBX2.0-->

<!--COPYRIGHT 1996 - 2008. OMNITURE, INC. ALL RIGHTS RESERVED. U.S.PATENT No. 6,393,479B1 and

6,766,370. MORE INFO: http://www.omniture.com/privacy/ -->

<script language="javascript">

//REQUIRED, NON-EDITABLE SECTION

var _hbEC=0,_hbE=new Array;function _hbEvent(a,b){b=_hbE[_hbEC++]=new Object();b._N=a;b._C=0;return

b;}var hbx=_hbEvent("pv");hbx.vpc="HBX0200u";hbx.gn="hg123";

//POPULATION GROUPS AND FUNNELS

hbx.seg="";//POPULATION GROUPS

hbx.fnl="";//FUNNELS

Page 195: Hitbox Installation Guide

|Page 183

Before coding for funnels, analyze the pages on your site that represent a linear progression from entry to a conversion level in a funnel. Suppose you have a 'hook' page (hook.htm) that attracts the visitor's attention, intended eventually to result in an e-mail service sign-up. The first page is hyper-linked through a "Continue Tour" button to another page (more_features.htm). The more_features.htm page entices the visitor with more attractive details of the e-mail sign-up. Finally, the user interacts with the last page (got_em.htm) in your e-mail service sign-up. Ideally, you want the user to navigate these pages in sequence, touching all levels no more than 30 minutes apart, without distraction from other links in the pages (or 'Go Back' buttons) that may lead out of your funnel (or backwards in the funnel).

In summary, for a funnel named "EmailSubscriptionFunnel" assigned Funnel ID 200304, create three levels for the funnel:

PAGE NAME LEVEL

ID LEVEL NAME

CONVERSION LEVEL?

hook.htm 1 HOOK NO

more_features.htm 2 FEATURES NO

got_em.htm 3 SUCCESS YES

Simple Funnel: Page Names and Levels

Review the funnel administration page for names and IDs of the funnel and funnel levels. You will need to know the IDs assigned by HBX to both the funnel name and level name before continuing with coding. Should you later make changes to the page code (such as archiving funnels) for the funnels you design, it will be convenient for you to have all the information available on the funnel administration page. Consider also adding self-explanatory comments (identifying funnel name and level name) to the line containing the hbx.fnl variable by typing in text following the double forward slashes //

The following information applies to coding simple funnels, that is, funnels for a single account. For more information about coding multiple-account funnels, refer to the Advanced Coding section.

Coding Simple Tagged Funnels

FUNNEL CODING SYNTAX

Once you have created funnel names and funnel level names using the funnel administration tool, you may code funnels into your pages using the HBX code.

To specify the funnel names and funnel level names on pages constituting a funnel, assign funnel ID and level ID to each page, using the hbx.fnl variable. Up to three separate funnels may be encoded on any page.

For the EmailSubscriptionFunnel example above where the funnel ID number is 200304, page hook.htm is coded:

hbx.fnl="(200304,1)";

The syntax for a funnel ID and funnel level ID on a page is:

hbx.fnl="(fn,Lm)";

where

fn is the funnel ID and

Lm is the level ID.

based on the IDs listed on the Funnel Administration page when you created the funnels.

DESIGNATING CONVERSION LEVEL

When you create funnel levels, the last level in the funnel that you create is labeled as the conversion level. Because the last level of a funnel typically corresponds to the goal you set for that funnel, it is natural to place the conversion level part of the funnel on your goal page.

Page 196: Hitbox Installation Guide

|Page 184

When coding goal pages using the funnel variable hbx.fnl, use the conversion level identifier c to signal that HBX should count visits to that page as a candidate for funnel conversion. Whether a visit to a page coded with a funnel conversion is actually reported as a conversion in the funnel statistics depends on:

if the visitor touches all levels of the sequence in ascending order, from the first level to the funnel conversion level and

if the visitor is idle for no more than 30 minutes between successive levels in the funnel pages.

If the visitor lets the session expire by waiting more than 30 minutes before hitting the next level, or the visitor wanders off the funnel and doesn't complete the remaining levels in succession, no conversion is counted by HBX. For this reason, it is important to make page content highly goal-directed, providing the visitor little opportunity or motivation to miss the goal page.

For the EmailSubscriptionFunnel example above where the funnel ID number is 200304, goal page got_em.htm is coded:

hbx.fnl="(200304,3c)";

The syntax for a conversion level funnel ID on a page is:

hbx.fnl="(fn,Lmc)";

where

fn is the funnel ID,

Lm is the ID for the conversion level, and

c is the conversion level identifier.

Note that nothing except commas, the character c, Funnel IDs and Level IDs are permitted between the parentheses.

While it is possible to omit the conversion level identifier c to mark conversions for the funnel, HBX will not report conversions if omitted. Since the value added by conversion-tracking data is central to the business goal of coding funnels on site pages, it is recommended not to omit the conversion level identifier c when mapping out your funnel.

Following the example of the "EmailSubscriptionFunnel" described above, code pages as follows:

PAGE NAME FUNNEL NAME

FUN

NEL

ID

LEVEL NAME

CONVERSIO

N LEVEL

?

LEVEL ID

FUNNEL CODE

hook.htm EMAILSUBSCRIPTIONFU

NNEL

2 HOO

K

NO 1 hbx.fnl="(200304,1)";

more_features.htm

EMAILSUBSCRIPTIONFU

NNEL

2 FEAT

URES

NO 2 hbx.fnl="(200304,2)";

got_em.htm EMAILSUBSCRIPTIONFU

NNEL

2 SUC

CESS

YES 3 hbx.fnl="(200304,3c)";

Coding Simple Funnel Page Names And Levels

Page Error Code

Page 197: Hitbox Installation Guide

|Page 185

HBX allows the addition of code to Web pages to signal when a specific error is raised by server-side validation scripts for forms, such as form-based data validation scripts or password verification scripts requiring input from the visitor. Code for server-side validation may be written using .asp (Active Server Pages), .cfm (ColdFusion), perl/cgi, .php, or another scripting language. Note that while Error Page code tracking covers errors thrown by server-side validation code, Form Abandonment tracking is used for reporting visitors' interaction (completion or abandonment) with forms using either simple submits or more complex POST operations involving client-side data validation scripts.

Page Error code, using the hbx.pec variable, is different than Error Page code, which is HBX page code you insert into the 404-error Web page used by your server.

To enable this feature, you assign a user-defined string value to the JavaScript variable hbx.pec on the page containing the form that calls the server-side code. The value you assign to the page error code variable must conform to character size and character types described in Illegal Characters. Assign the hbx.pec variable this string literal on the page that calls the error-handling script.

Suppose you want to track how often errors are triggered when the wrong password is entered for a user profile or account. On the same page as the form, assign a string value to the error page code such as "Wrong+Password". Every time an error is returned from the server-side script, the name of the error (encoded on the page that called the script) is reported in the Error Page Code statistic.

The use of the hbx.pec code is developed in more detail in Appendix E, where a simple .asp script for validating user date input is presented. A ColdFusion example is given in Appendix F.

In the snippet of HBX code below (found under 'Site Tools and Reporting>Edit Account'), the page error code variable is highlighted in gray.

<!-- OMNITURE CODE HBX2.0-->

<!--COPYRIGHT 1996 - 2008. OMNITURE, INC. ALL RIGHTS RESERVED. U.S.PATENT No. 6,393,479B1 and

6,766,370. MORE INFO: http://www.omniture.com/privacy/ -->

<script language="javascript">

//REQUIRED, NON-EDITABLE SECTION

var _hbEC=0,_hbE=new Array;function _hbEvent(a,b){b=_hbE[_hbEC++]=new Object();b._N=a;b._C=0;return

b;}var

hbx=_hbEvent("pv");hbx.vpc="HBX0200u";hbx.gn="hg123";

<!-- code snipped for brevity -->

//CUSTOM VARIABLES

hbx.ci="";//CUSTOMER ID

hbx.hc1="";//CUSTOM 1

hbx.hc2="";//CUSTOM 2

hbx.hc3="";//CUSTOM 3

hbx.hc4="";//CUSTOM 4

hbx.hrf="";//CUSTOM REFERRER

hbx.pec="Wrong+Password";//ERROR CODES

Tip

Page 198: Hitbox Installation Guide

|Page 186

Form Page Abandonment Code

HBX allows you to track whether visitors complete or abandon input forms on your site. Form Abandonment tracking is thus a kind of gauge of how "user friendly" the form is. The measure of user-friendliness is partly based on whether the layout and design of the input forms are helpful to encourage users to finish filling out the form. Note that while Form Abandonment tracking is used for reporting visitors' interaction (completion or abandonment) with forms using either simple submits or more complex POST operations involving client-side data validation scripts, Page Error code tracking covers errors thrown by server-side validation code.

For example, you have a Web page form with several fields including date, email address, and name. These forms call client-side (JavaScript or JScript) scripts for checking validity of data input. Form abandonment tracking is useful for determining if visitors experience difficulty in filling out forms. If you consistently see errors generated for the form input named "date" <input type=text name=date>, you might wish to add a prompt on the form page demonstrating the correct format for entering dates.

If a visitor fills out a form completely and submits it, the page is identified as a form completion. If the visitor submits an incomplete form, the page is still considered a form completion, because the JavaScript coding cannot distinguish between a completed and incomplete form. If on the other hand, the visitor leaves the page without submitting any form, and there has been form activity on the page, the page is identified as containing a form abandonment. Note that the form must have at least three editable input fields to be counted by the form page tracking feature.

When assigning values to HTML or JavaScript attributes, ensure that you avoid reserved JavaScript identifiers or words. A partial list of JavaScript identifiers may be found at this link.. In addition, avoid assigning any value to an HTML or JavaScript attribute that matches any of the internal JavaScript methods. For example, because JavaScript has the internal submit method of the document.form object, do not use submit as a name.

In particular, do not use the following values:

name=submit

name=onSubmit

Form abandonment tracking does not support pseudo-input fields within non-html elements, such as those appearing in Macromedia Flash movies or documents.

Depending on how your forms are coded, you may need to set the value of a JavaScript variable hbx.fv (form validation) on pages with forms.

For the majority of form submissions using either a simple POST operation, or the onSubmit attribute of the input tag, as in the following forms submission models

<input type=submit name=your_button_name>

or

<form onSubmit="validate(this)">

there is no need to change your page code. This case is covered in the simple form abandonment section.

For power users of form abandonment tracking, refer to the advanced form abandonment section. Note that tracking more sophisticated forms using onClick handlers for form submission requires you to add the hbx.fv variable to the page code.

In the snippet of HBX code below (found under 'Site Tools and Reporting>Edit Account'), the form validation variable is highlighted in gray.

Tip

Page 199: Hitbox Installation Guide

|Page 187

<!-- OMNITURE CODE HBX2.0-->~

<!--COPYRIGHT 1996 - 2008. OMNITURE, INC. ALL RIGHTS RESERVED. U.S.PATENT No. 6,393,479B1 and

6,766,370. MORE INFO: http://www.omniture.com/privacy/

-->

<script language="javascript">

//REQUIRED, NON-EDITABLE SECTION

var _hbEC=0,_hbE=new Array;function _hbEvent(a,b){b=_hbE[_hbEC++]=new Object();b._N=a;b._C=0;return

b;}var hbx=_hbEvent("pv");hbx.vpc="HBX0200u";hbx.gn="";

//REMAINING VARIABLES ARE ALL OPTIONAL

//ACTION SETTINGS

hbx.fv="js_date_validation"; //FORM VALIDATION MINIMUM ELEMENTS OR SUBMIT FUNCTION NAME hbx.lt="manual";//LINK TRACKING

Simple Form Abandonment Tracking with type=submit or onSubmit=validation_function()

For any form on your page using the following form submission models

<input type=submit name=your_button_name>

or

<form onSubmit="validate(this)">

the form completion or abandonment statistic will be reported with no changes required to the HBX page code.

Take for example the following html code, where the form has a value assigned to the name attribute

<form name="register"> <p>Enter your name: <input type="text" name="username"><br> Enter your age: <input type="text" name="age"><br> Enter email: <input type="text" name="email"><br> <input type="submit" value="Submit Form"><br> </p> </form>

HBX tracks what happens after the last onFocus event (visitor leaving the page while the document focus is on a particular form field) or submit event (visitor clicking on the 'Submit' button) is fired by the visitor's browser:

If you have given the form a name attribute within the form tag, HBX will report the name of the last onFocus field in form if the user does not complete filling out the form. A typical entry for such a form would be register.age, indicating that the focus was last on the 'age' form field.

If the visitor does complete filling out the form, the name of the page with the completed form will be reported.

When setting page name code for pages containing forms, be sure to use a descriptive, easily recognizable name. The form abandonment statistic reports the name of the page containing the form(s). If the page with the form has no title, or the hbx.pn variable is not assigned a name in the page code, the form abandonment statistic will only return the name of the error in a drill down view.

Using the same html form example without a name assigned to the form attribute,

<form> <p>Enter your name: <input type="text" name="username"><br> Enter your age: <input type="text" name="age"><br> Enter email: <input type="text" name="email"><br>

Page 200: Hitbox Installation Guide

|Page 188

<input type="submit" value="Submit Form"><br> </p> </form>

If your form is not named, form data identified by HBX uses the last field with focus linked to the index of the array of input forms stored as a JavaScript object by the browser. A typical entry for such a form is forms[0].age, indicating that in the array of forms created in the document, the form with the index of [0] last had the focus.

If the visitor does complete filling out the form, the name of the page with the completed form will be reported.

For the case where the form uses a client-side validation function, the function can exist in several ways. Assuming that my_js_validation()is a JavaScript function for client-side validation of form data entries containing a form.submit()method, the JavaScript function can be called:

from an embedded script in the <head> portion of the html

<script type="text/javascript"> <!-- // handlerName() --> or <script LANGUAGE="JavaScript1.2"> <!-- // handlerName() -->

from an external .js file in the <head> portion of the html

<script type="text/javascript" src="my_validation_routines.js">

For Form Abandonment to report visitors' interaction with client-side functions that process forms, the function referenced by name in the input tag must be within the scope of the page.

For the following page code,

<html><head>... <script> function handleSubmit(form_object) { if( form_object.username.value == '' ) { return false; } return true } </script> ... </head> <body> <!-- first bullet below --> <form name="register" onSubmit="return handleSubmit(this)"> <!-- third bullet below --> <form onSubmit="return handleSubmit(this)"> <p>Enter your name: <input type="text" name="username"><br> Enter your age: <input type="text" name="age"><br> Enter email: <input type="text" name="email"><br>

Page 201: Hitbox Installation Guide

|Page 189

<input type="submit" value="Submit Form"><br> </p> </form> </body>

If you have given the form a name attribute within the form tag, HBX will report the name of the last onFocus field in the form if the user does not complete filling out the form. A typical entry for such a form would be register.age, indicating that the focus was last on the 'age' form field.

If the visitor completes the form, just the name of the page containing the completed form is reported by HBX.

If your form is not named, the form data identified by HBX is the last field with focus linked to the index of the array of input forms stored as a JavaScript object by the browser. A typical entry for such a form is forms[0].age, indicating that in the array of forms created in the document, the form with the index of [0] last had the focus.

If the visitor does complete filling out the form, the name of the page with the completed form will be reported.

Custom Metric

HBX gives you the ability to track traffic on pages containing items or products or services specific to your business through the use of customizable page code variables. The custom metric variables hbx.hc1 (or hbx.hc2, hbx.hc3, and so forth) allow you to analyze page views of traffic in straightforward ways not readily trackable with standard HBX reports. Traffic on these pages is displayed in the Custom Metric and Dimension report. You can also change how HBX displays the names of these Custom Metric variables in the Site Tools and Reporting > Administration > Account Administration page. In this way, you can use the Custom Metric statistics to create a sort of simple flat file database for selected pages on your Web site.

Example of use of the Custom Metric

Suppose that, as part of the automotive industry, the e-marketing division needs to expand its Web presence and to improve intelligence about customer interaction and particular interests while on your site. You want to track how many times customers view pages that specifically relate to parameters such as Make, Model, Body Type, and Option Package. For each parameter, you can assign different values in the HBX page code. For Body Type, you might use a value such as sedan, convertible, station+wagon, SUV, and so forth.

To implement the Custom Metric feature, create labels in the Site Tools and Reporting > Administration > Account Administration page for each of the custom metric menu choices. Assign Make to Custom Metric 1, Model to Custom Metric 2, and so on. Then set the value of the custom metric variables in your page code. For example, use the following code if you want to track the total number of views of a page with information about a particular make, model, and body type.

hbx.hc1="Hummer"

hbx.hc2="H1"

hbx.hc3="4+door+wagon"

Page 202: Hitbox Installation Guide

|Page 190

Whenever a customer views a page coded with the value "4+door_wagon" for the hbx.hc3 variable, you will notice an increase in the number of page views for the "4+door+wagon" item listed in the summary table at the bottom of the Body Type report (formerly the Custom Metric 3 report) in HBX. In this way, you can use the four Custom Metric statistics to create a sort of simple flat file database for selected pages on your Web site.

Multiple-value Custom Metric

You can also assign more than one value as parameter for the custom metric variable. Each value you use must be separated by a comma. Assuming that you have assigned labels in the Site Tools and Reporting > Administration > Account Administration page for the Custom Metric variables as in the above examples, suppose you modify the values of the hbx.hc2 hbx.hc3 hbx.hc4 variables this way for page A :

hbx.hc2="H1";

hbx.hc3="4+door+wagon,4+door+open+top";

and for page B you define the custom metric variables like this

hbx.hc2="H2";

hbx.hc4="Base,Lux,Adventure";

When a visitor views page A, HBX displays one more page view for "H1" in the table listing the Model parameter, and one page view for both "4 door wagon" and "4 door open top" in the table listing the Body Type parameter. When the visitor views page B, a page view is displayed for "H2" in the table listing the Model parameter, as well as new page views for "Base", "Lux", and "Adventure" in the table listing the Option Package parameter.

Now, instead of just one item in each table for the different parameters, updated page views of several line items in the table can be displayed, depending on the way you assign comma-delimited values to the custom metric variables.

When defining the custom metric variables on your pages, values you choose must conform to character size and character types described in Illegal Characters. It is suggested that you make the values unique so they will be meaningful when interpreting the displayed results.

Coding Custom Metric Dimensions

HBX enables you to associate dimensions with any of the custom metric variables. A dimension (also known as an attribute) can be used to identify properties of the item assigned to the "parent" custom metric variable.

You can change the name of the Custom Metric menus in the Site Tools and Reporting > Administration > Account Administration page. However, you must change the name of Dimension 1 or Dimension 2 for the custom

metric in the HBX Downloads and Administration > Edit Account page before you can view any data from Dimensions 1 or 2. For example, if you renamed a Custom Metric as Autos, you might wish to name Dimension 1 as Make and Dimension 2 as Model.

Example of adding Dimensions to the Custom Metric

Suppose you have the following definitions for hbx.hc1 hbx.hc2 and hbx.hc3 mapping out the CPU, Hard Drive, and CDR parameters, respectively for page A.

hbx.hc1="Intel";

hbx.hc2="Toshiba";

hbx.hc3="HP";

Tip

Page 203: Hitbox Installation Guide

|Page 191

and on page B, you further specify a variable feature, property, or classification for the "parent" custom variable in this way:

hbx.hc1="Intel|50GHz";

hbx.hc2="Toshiba|1TB";

hbx.hc3="HP|418X240X418";

You separate the value of the custom variable from the value of its associated attribute using the pipe symbol | Use this symbol only to separate the value of the custom metric variable from its dimension.

Whenever a customer views page A coded with the value "Intel" for the hbx.hc1 variable, you will notice an increase in the number of page views for the "Intel" item listed in the summary table at the bottom of the CPU report (formerly the Custom Metric 1 report) in HBX. Similarly, you will note increases in page views for the "Toshiba" item listed in the table for the Hard Drive report and the "HP" item in the CDR report.

Suppose the customer now browses on to page B coded with the value "Intel|50GHz" for the hbx.hc1 variable. This time, you see a new page view for the "Intel" item in the CPU report and a drill down icon appears next to that item. When you click on this drilldown icon, detail information about the "Intel" item is displayed. In particular, this detail information shows a new summary table listing the value "50GHz" for the speed dimension of the Intel CPU.

Multiple-value Custom Metric with Attribute

You can also define multiple values, each with a dimension, as a parameter for the custom metric variable. Each value you use must be separated by a comma. You can only assign one attribute per value. Following the example given above, suppose that you modify the values of the hbx.hc1 hbx.hc2 hbx.hc3 variables this way:

hbx.hc1="Intel|50GHz,Athlon|45GHz";

hbx.hc2="Toshiba|1TB,Maxtor|0.8TB";

hbx.hc3="HP|418X240X418,Plextor|388X156X388";

When a visitor views this page, HBX displays:

one more page view for both "Intel" and "Athlon" in the table listing the CPU parameter

one more page view for both "Toshiba" and "Maxtor" in the table listing the Hard Drive parameter

one more page view for both "HP" and "Plextor" in the table listing the CDR parameter.

In addition, next to each line item listed in the tables in the CPU, Hard Drive and CDR reports, detail views are now available by clicking on the drilldown icon.

When defining the custom metric variables on your pages, values you choose must conform to character size and character types described in Illegal Characters. It is suggested that you make the values unique so they will be meaningful when interpreting the displayed results.

Page 204: Hitbox Installation Guide

|Page 192

Legal Notice "Omniture", "HBX", "HitBox", "WebSideStory", and "StatMarket" are trademarks or registered trademarks of Omniture, Inc. in the United States, Canada, Japan, and the European Community. "Microsoft", "ActiveX", "JScript", "Outlook", and "Windows" are registered trademarks of Microsoft Corporation in the United States and/or other countries. "EarthLink" is the service mark of EarthLink, Inc. "Macintosh", "QuickTime", and "Safari" are trademarks or registered trademarks of Apple Computer, Inc. "Mozilla" and "Firefox" are registered trademarks of the mozilla.org. "Netscape", "Netscape Navigator", and "JavaScript" are trademarks of Netscape Communications Corporation. "NetObjects" and "NetObjects Fusion" are trademarks or registered trademarks of NetObjects, Inc. "Macromedia", "Flash", and "ColdFusion" are trademarks or registered trademarks of Macromedia, Inc. in the United States and/or other countries. "Adobe" and "Acrobat" are registered trademarks of Adobe Systems Incorporated. "Keynote" and "Perspective" are trademarks or registered trademarks of Keynote Systems, Inc. "Teleport Pro" is a trademark of Tennyson Maxwell Information Systems, Inc. (Tenmax) "Gómez" is a trademark of Gómez, Inc. "Mercury Interactive" and "Topaz" are registered trademarks of Mercury Interactive Corporation. "Tonic" is a trademark of Tonic Software, Inc. "Watchfire" is a registered trademark of Watchfire Corporation. "UNIX" is a registered trademark of The Open Group in the United States and other countries. "RealAudio", "RealPlayer", "RealNetworks", and "RealVideo" are registered trademarks of RealNetworks, Inc. "Java" is a trademark of Sun Microsystems, Inc. in the United States and other countries. "EdgeScape" is a servicemark belonging to Akamai Technologies. "AOL" and "America Online" are trademarks of AOL Time Warner, Inc. "Salesforce.com" is a registered trademark of Salesforce.com, Inc. "Cisco" is a registered trademark of Cisco Systems, Inc. and/or its affiliates in the U.S. and certain other countries. "Sprint" is a registered trademark of Sprint Communications Company LP. "Level3" is a trademark of Level 3 Communications, Inc. "Sun" is a service mark of Sun Microsystems, Inc. in the United States and other countries. "DMA" is a registered trademark and "Nielsen Media Services, Inc." is a trademark of Nielsen Media Services, Inc. All other trademarks, registered trademarks, and service marks are the property of their respective owners. Rev. 1/13/08 Copyright 1996 - 2008. Omniture, Inc. All Rights Reserved.

Users of HBX should note that information in this guide covers only installation. For details on the use of HBX, consult the HBX User Manual. All information contained in this guide and in the user manual is also available in the HBX on-line help.

Page 205: Hitbox Installation Guide

| PageA-1

Appendix A: Advanced Coding

For the power user, HBX enables the tracking of various kinds of visitor interactive behavior from one page using multiple accounts. This section presents advanced information about using multiple accounts with HBX page code campaigns. Among items discussed are:

Coding Multiple Accounts

Pages

Multi-level Content

Campaigns

Static/Dynamic

Lead Campaigns

Custom Campaign Attributes

Population Groups

Funnels (multiple funnels; combined tagged and tagless)

In addition, you will also find advanced topics in

campaigns (the interaction of population groups and campaigns, and more.)

coding the <noscript></noscript> portion of the page code

coding form validation with custom JavaScript validation functions

first-party cookies, hbx.cp campaigns created in the HBX commerce module, and the campaign domain variable hbx.cpd

coding alternate download file names

coding error page code

tracking filtered exit links

coding custom referrers

coding download filter and exit filter tracking

coding the redirect function

popup windows and HBX code

filtering for downloads counted by HBX

forcing lower-case display of content groups and page names

coding landing page URLs to indicate purchased keywords and outlets for HBX customers without Bid

the gateway variables

coding the page with HBX convenience functions

coding the page with HBX event interfaces

coding the page to override the default protocol

coding custom metrics variables to track RSS feeds and podcasts

Page 206: Hitbox Installation Guide

| PageA-2

Multiple Accounts

Tracking Multiple Accounts

HBX allows you track more than one HBX account with a single piece of code. In order to track multiple accounts with one piece of code, use the hbx.acct variable in the code. This variable is automatically populated with one account number. Simply add additional account numbers to the variable, separated by a semicolon ;

For example, if you have an HBX account that you use to track visitor traffic on your entire Web site, and another account that you use for tracking pages relevant to a particular promotion, place both account numbers together, separated with a semicolon, on pages you wish to track for both accounts. Here is an example:

hbx.acct="DM0000000000001;DM0000000000002";

Be sure not to leave spaces between the account numbers, as this may cause errors. When multiple account numbers are listed in the hbx.acct variable, they must always appear in the same order for all your pages if you also intend to track multiple campaigns, multiple funnels, and so on.

You can only define three accounts in the hbx.acct variable.

Tracking Pages with Multiple Accounts

If you are tracking a page for multiple accounts, you may designate several page names in the page name variable. The number of characters in the page name variable is truncated after a certain limit specified in Appendix H. For example, you may be tracking your whole site using one account, but also have an account that tracks pages related to a special advertising promotion. You may want to use different names for these pages for each account. To do so, simply separate those page names with a semicolon ; in the page name variable. Here is how to code the page name assignment for two page names:

hbx.pn="Main+Page;Campaign+Main";

Be sure not to leave any spaces between the page names, as this may cause errors. HBX will match page names and accounts in the order in which you've typed them, so the first page name will be tracked for the first account, the second page name for the second account, and so on.

You can insert an asterisk * to exclude a page name from being associated with an account. For example, if you have three accounts:

hbx.acct="DM0000000001;DM0000000002;DM0000000003";

you can associate the file's page name with the first account listed, exclude it from the second listed account, and associate another page name with the file for the last account listed.

hbx.pn="Main+Page;*;Campaign+Main";

In this case, the file will be listed as "Main Page" for DM0000000001, and as "Campaign Main" for DM0000000003, but account DM0000000002 will not show a name for the page.

If you are tracking multiple accounts with one piece of HBX code, and you only designate one page name, that page name will be used for all accounts. You can explicitly exclude the page name from being applied to all accounts by coding hbx.pn="Main+Page;*"; This will associate page name "Main Page" with the first account listed in hbx.acct, and ignore the other accounts.

Coding Multi-Level Content with Multiple Accounts

If you are tracking content groups for multiple accounts, you may designate several page names in the page name variable. The number of characters in the content group hierarchy (including the required forward slashes /) is truncated after a certain limit specified in Appendix H. For example, you may be tracking your whole site using

Tip

Page 207: Hitbox Installation Guide

| PageA-3

one account, but also have an account that tracks content related to a special advertising promotion. You may want to use different content groups for each account.

To do so, simply separate those content groups with a semi-colon ; in the content group variable. To designate two content groups for one page, define the content group variable thus:

hbx.mlc="/Sports/Baseball;/Promotions/World+Series";

Precede each content group with the forward slash. Be sure not to leave any spaces between the content groups, as this may cause errors. HBX will match content groups and accounts in the order in which you've typed them, so the first content group will be tracked for the first account, the second content group for the second account, and so on.

Just as with the page name variable hbx.pn in the above example, you can also specify which accounts should be excluded with the * symbol. For three accounts:

hbx.acct="DM0000000001;DM0000000002;DM0000000003";

you can associate the content grouping with the page for the first account listed, exclude it from the second listed account, and associate another content group with the page for the last account listed.

hbx.mlc="/Sports/Baseball;*;/Promotions/World+Series";

In this case, the content group will be listed as "/Sports/Baseball" for DM0000000001, and as "Promotions/World+Series" for DM0000000003, but account DM0000000002 will not show a content group for the page.

Just as with the page name variable hbx.pn in the example in the preceding section, if you code

hbx.mlc="/Sports/Baseball;*";

the content group "/Sports/Baseball" will be applied to the page for only the first account listed in the hbx.acct variable.

But if you code

hbx.mlc="/Sports/Baseball";

the content group "/Sports/Baseball" will be applied to the page for all accounts listed in the hbx.acct variable.

Coding Campaigns with Multiple Accounts

If you have more than one account, you must be careful to match campaign IDs in the appropriate account and in the correct order with the pages to be associated with campaigns. Because each Campaign ID you create in the campaign administration tool is unique to that account, Campaign IDs you create for one account are not valid for another account (see NOTE below). In general, the order of account IDs in your page code (separated by the semicolon ; ) corresponds to the order that campaigns are counted when coding campaigns (separated by the semicolon ; ) for multiple accounts. Use the asterisk * to exclude campaign ID(s) from being associated with account numbers in the account list.

When launching dynamic campaigns, creating campaigns in the campaign administration page, or creating campaigns via the upload feature, it is possible to assign the same name (or ID) to a campaign for different

accounts. While the campaign ID is the same, remember that each of these campaigns IDs is unique to a single account.

Tip

Page 208: Hitbox Installation Guide

| PageA-4

For tagless campaigns, any response, lead, or conversion rules defined in Step 2 of the Campaign

Administration page will apply only to the logged-in account. You cannot define rules for tagless campaign to apply to several accounts at the same time when logged into one account. If you wish to apply the same response, lead, or conversion rules to a tagless campaign for a different account, you must first log out of the current HBX account, and login to the other account.

Tracking Responses

TRACKING RESPONDENTS TO CONVENTIONAL STATIC (AND CONVENTIONAL DYNAMIC) CAMPAIGNS AND STATIC (AND DYNAMIC) LEAD CAMPAIGNS

TRACKING RESPONDENTS VIA LANDING PAGE METHOD

You can associate multiple conventional static (or conventional dynamic) campaigns and static (or dynamic) lead campaign IDs with multiple account IDs. The order in which campaign IDs are coded corresponds directly to the order in which account IDs are listed in the hbx.acct variable in the page code.

Suppose you are coding a page with three account IDs, but want to collect responses to only one campaign. If you use this page code

hbx.acct="DM0011223344;DM1122334455;DM2233445566";

hbx.cmp="EMC-1258;*;*";

or for dynamic campaigns

hbx.dcmp="NewCampaign;*;*";

HBX records responses to conventional static campaign EMC-1258. No campaign IDs are associated with the last two HBX accounts defined in the account variable because of the last two asterisks.

You must use an asterisk separated by semicolons when defining the campaign list for each account you wish to exclude. You can no longer use the asterisk to exclude more than one account at the same time.

In the above examples, there are three accounts defined for the page, but only one campaign ID to track. When defining the campaign ID list, every account without a corresponding campaign ID must use an asterisk to exclude it.

HBX records a response to dynamic campaign NewCampaign for account DM0011223344. No campaign IDs are associated with the last two HBX accounts defined in the account variable because of the asterisks.

SUMMARY OF TRACKING RESPONDENTS VIA LANDING PAGES (NO EXAMPLES HERE FOR DYNAMIC CAMPAIGN LISTS)

Tip

Tip

Page 209: Hitbox Installation Guide

| PageA-5

ACTION DESIRED

# OF ACCOUNT

IDS

# OF CAMPAIGNS

CAMPAIGN IDS

CODE:

HBX.cmp=

HBX.dcmp= EXPLANATION

MAP

ACCOUNTS TO

CAMPAIGN(S)

2 2 EMC-1245

BAL-4459

"EMC-

1245;BAL-

4459";

CAMPAIGN EMC-

1245 MAPPED TO

FIRST ACCOUNT

ID; LEAD

CAMPAIGN BAL-

4459 MAPPED TO

SECOND

ACCOUNT ID

MAP SELECTED

ACCOUNT(S)

TO SELECTED

CAMPAIGN(S)

CASE 1

3 3 EMC-1245

BAL-4459

NLC-7288

"*;EMC-

1245;BAL-

4459";

ACCOUNT1 HAS

NO ASSOCIATED

CAMPAIGNS;

ACCOUNT2

LINKED TO

CAMPAIGN EMC-

1245; ACCOUNT3

LINKED TO LEAD

CAMPAIGN BAL-4459

MAP SELECTED

ACCOUNT(S)

TO SELECTED

CAMPAIGN(S)

CASE 2

3 3 EMC-1245

BAL-4459

NLC-7288

"EMC-

1245;*;*";

ACCOUNT1 IS

ASSOCIATED

WITH CAMPAIGN

EMC-1245;

ACCOUNT2 AND

ACCOUNT3 ARE

NOT LINKED TO

CAMPAIGNS

Campaign Tracking for Multiple Accounts - Respondents via Response Page

TRACKING RESPONDENTS VIA URL QUERY STRINGS

Page 210: Hitbox Installation Guide

| PageA-6

You can also associate conventional static (or conventional dynamic) campaign IDs and static (or dynamic) lead campaign IDs with multiple account IDs when tracking respondents by URL query strings. The order in which campaign IDs are listed in the URL corresponds directly to the order in which account IDs are listed in the hbx.acct variable in the page code. Use the asterisk to mark the campaign ID in the list corresponding to the account you wish to exclude from tracking.

For example, you have three account IDs and want to track respondents to the first and third account IDs, but not track respondents to the second, the URL query string is coded:

http://www.website.com/?...&CMP=EMC-1245;*;NLC-7288

or for dynamic campaigns

http://www.website.com/?...&DCMP=NewCampaign;*;NLC-7288DY

This string indicates that the first account ID tracks all respondents with EMC-1245 in the URL string, and the third account ID tracks all respondents with NLC-7288 in the URL string for the static campaign. For the dynamic campaign, the first account ID is tracks all respondents with NewCampaign in the URL string, and the third account ID tracks all respondents with NLC-7288DY in the URL string. Using the * instead of a campaign ID in the list of campaign IDs disables collection of respondent data for the second account ID.

Suppose you have three account IDs on a page and the URL query string is:

http://www.website.com/?...&DCMP=NewCampaign;*;*

The first account ID collects respondent data for the dynamic campaign ID NewCampaign. The second and third account IDs are associated with the final two * s and therefore will not collect respondent data.

If you use the alternate (dynamic) campaign query parameter to replace the default names CMP or DCMP in the URL query string, the substitute name applies to all campaign IDs. You cannot use the definition form hbx.cmp="_P::<query_string_parameter>"; or hbx.dcmp="_P::<query_string_parameter>"; with different values for multiple accounts on the same page.

Page 211: Hitbox Installation Guide

| PageA-7

SUMMARY OF TRACKING RESPONDENTS VIA URL QUERY STRINGS

Campaign Tracking for Multiple Accounts - Respondents via URL Query Strings

TRACKING CONVERSIONS TO CONVENTIONAL STATIC (AND CONVENTIONAL DYNAMIC) CAMPAIGNS AND STATIC (AND DYNAMIC) LEAD CAMPAIGNS

TRACKING CONVERSIONS VIA LANDING PAGE METHOD

ACTION DESIRE

D

# OF ACCOU

NT IDS

# OF CAMPAIG

NS

CAMPAIGN IDS

URL QUERY STRING EXPLANATION

MAP

ACCOUNTS

TO

CAMPAIGN(

S)

2 2 EMC-1245

BAC-4459

http://www.website.com/?

...&CMP=EMC-1245;BAC-4459

CAMPAIGN EMC-1245

MAPPED TO

FIRST

ACCOUNT ID;

CAMPAIGN BAC-4459

MAPPED TO

SECOND

ACCOUNT ID

MAP

SELECTED

ACCOUNT(

S) TO

SELECTED

CAMPAIGN(

S) CASE 1

3 3

EMC-1245DY

NewCampaig

n

NLC-7288DY

http://www.website.com/?...&DCMP=

*;EMC-1245DY;NewCampaign

ACCOUNT1

HAS NO

ASSOCIATED

CAMPAIGNS;

ACCOUNT2

LINKED TO

CAMPAIGN

EMC-1245DY;

ACCOUNT3

LINKED TO

NEWCAMPAIGN

MAP

SELECTED

ACCOUNT(

S) TO

SELECTED

CAMPAIGN(

S) CASE 2

3 3 EMC-1245

BAC-4459

NLC-7288

http://www.website.com/?

...&CMP=EMC-1245;*;*

ACCOUNT1 IS

ASSOCIATED

WITH

CAMPAIGN

EMC-1245;

ACCOUNT2

AND

ACCOUNT3 ARE

NOT LINKED TO

CAMPAIGNS

Page 212: Hitbox Installation Guide

| PageA-8

You can associate multiple conventional static (or conventional dynamic) and static (or dynamic) lead campaign IDs with multiple account IDs for goal pages. The order in which campaign IDs are coded corresponds directly to the order in which account IDs are listed in the hbx.acct variable in the page code.

Suppose you are coding a page with three account IDs, but want collect conversions to only one campaign. If you use this page code

hbx.acct="DM0011223344;DM1122334455;DM2233445566";

hbx.gp="EML-1258;*;*";

HBX records conversions to lead campaign EML-1258 for account DM0011223344. No campaign IDs are associated with the last two HBX accounts defined in the account variable because of the last two asterisks.

You must use an asterisk separated by semicolons when defining the campaign list for each account you wish to exclude. You can no longer use the asterisk to exclude more than one account at the same time.

In the above examples, there are three accounts defined for the page, but only one campaign ID to track. When defining the campaign ID list, every account without a corresponding campaign ID must use an asterisk to exclude it.

You can also list multiple campaign IDs per account. HBX will check the respondent's cookie for a matching campaign ID on a per-account basis. If any matches are found in the list of campaign IDs for a particular account, HBX will register a conversion in the particular account for only the campaign ID that the visitor responded to most recently. If you wish to track just the last conversion of any campaign on a specific goal page for an account, without listing all possible campaign IDs, use the word LAST.

SUMMARY OF TRACKING CONVERSIONS VIA LANDING PAGES

Tip

Page 213: Hitbox Installation Guide

| PageA-9

ACTION DESIRED

# OF ACCOUNT

IDS

# OF CAMPAIGNS

CAMPAIGN IDS

CODE: HBX.gp= EXPLANATION

MAP

ACCOUNTS TO

CAMPAIGN(S)

2 2 EML-1245

BAC-4459DY

"EML-

1245;BAC-

4459DY";

LEAD CAMPAIGN EML-

1245 IS CONVERTED

FOR FIRST ACCOUNT

ID ON THE GOAL

PAGE; CAMPAIGN BAC-

4459DY CONVERTED

FOR SECOND ACCOUNT

ID ON THE GOAL PAGE

MAP SELECTED

ACCOUNT(S)

TO SELECTED

CAMPAIGN(S)

CASE 1

3 3 EML-1245

BAC-4459DY

NLC-7288

"*;EML-

1245;

LAST";

ACCOUNT1 HAS NO

ASSOCIATED

CAMPAIGNS;

ACCOUNT2 CONVERTS

CAMPAIGN EML-1245

ON THE GOAL PAGE;

ACCOUNT3 CONVERTS

TO THE LAST

CAMPAIGN RESPONDED

TO

MAP SELECTED

ACCOUNT(S)

TO SELECTED

CAMPAIGN(S)

CASE 2

3 3 EML-1245

BAC-4459DY

NLC-7288

"EML-

1245,NLC-

7288;*;*";

ACCOUNT1 CONVERTS

FOR WHICHEVER

CAMPAIGN (EML-1245

OR NLC-7288) THE

VISITOR RESPONDS TO

MOST RECENTLY;

ACCOUNT2 AND

ACCOUNT3 ARE NOT

LINKED TO CAMPAIGNS

Campaign Tracking for Multiple Accounts - Conversions via Response Page

TRACKING CONVERSIONS VIA URL QUERY STRINGS

Page 214: Hitbox Installation Guide

| PageA-10

You can also associate IDs of conventional and lead campaigns, both static and dynamic with multiple account IDs when tracking conversions by URL query strings. The order in which campaign IDs are listed in the URL corresponds directly to the order in which account IDs are listed in the hbx.acct variable in the page code.

For example, you have three account IDs and want to track conversions to the first and third account IDs, but not track conversions to the second, the URL query string is coded:

http://www.website.com/?...&GP=EMC-1245;*;BAC-4459

This string indicates that the first account ID tracks all conversions with EMC-1245 in the URL string and the third account ID tracks all respondents with BAC-4459 in the URL string.

Using the * instead of a campaign ID in the list of campaign IDs disables collection of respondent data for the second account ID.

Suppose you have three account IDs on a page and the URL query string is:

http://www.website.com/?...&CMP=EMC-1245;*;*

The first account ID collects respondent data for the campaign ID EMC-1245. The second and last account IDs are associated with the final two *s and therefore will not collect respondent data.

You can also list multiple campaign IDs per account. HBX will check the respondent's cookie for a matching campaign ID on a per-account basis. If any matches are found in the list of campaign IDs for a particular account, HBX will register a conversion in the particular account for only the campaign ID that the visitor responded to most recently. If you wish to track just the last conversion of any campaign for an account, without listing all possible campaign IDs, use the word LAST.

If you use the alternate goal page query parameter (via definition of hbx.gp="_P::<query_string_parameter"; ) to replace the default name GP in the URL query string, the substitute name applies to all campaign IDs. You cannot use this form of the definition of hbx.gp with different values for multiple accounts on the same page.

SUMMARY OF TRACKING RESPONDENTS VIA URL QUERY STRINGS

ACTION DESIRED

# OF ACCOUN

T IDS

# OF CAMPAIGN

S

CAMPAIGN IDS

URL QUERY STRING EXPLANATION

MAP

ACCOUNTS

TO

CAMPAIGN(S

)

2 2 EMC-1245

BAC-4459

http://www.website.com/

? ...&GP=EMC-1245;BAC-

4459

CAMPAIGN EMC-

1245 IS

CONVERTED FOR

FIRST ACCOUNT

ID; CAMPAIGN BAC-4459

CONVERTED FOR

SECOND

ACCOUNT ID

MAP

SELECTED

ACCOUNT(S)

TO SELECTED

CAMPAIGN(S

) CASE 1

3 3 EMC-1245DY

BAL-9902

NLC-7288DY

http://www.website.com/

?

...&GP=*;EMC-

1245DY,BAL-9902;NLC-

7288DY

ACCOUNT1 HAS

NO ASSOCIATED

CAMPAIGNS;

ACCOUNT2

CONVERTS FOR

WHICHEVER

CAMPAIGN (EMC-

1245DY OR BAL-

Page 215: Hitbox Installation Guide

| PageA-11

Campaign Tracking for Multiple Accounts - Conversions via URL Query Strings

Tracking Lead Designations to Lead and Dynamic Lead Campaigns

TRACKING LEAD DESIGNATES

You can associate multiple static (or dynamic) lead campaign IDs with multiple account IDs for lead designation pages. The order in which campaign IDs are coded corresponds directly to the order in which account IDs are listed in the hbx.acct variable in the page code.

Suppose you are coding a page with three account IDs, but want collect lead designations for only two campaigns. If you use this page code

hbx.acct="DM0011223344;DM1122334455;DM2233445566";

hbx.gp="EML-1258;*;*";

HBX records lead designations for lead campaign EML-1258 for account DM0011223344. No campaign IDs are associated with the last two HBX accounts defined in the account variable because of the last two asterisks.

You can also list multiple lead campaign IDs per account. HBX will check the respondent's cookie for a matching lead campaign ID on a per-account basis. If any matches are found in the list of campaign IDs for a particular account, HBX will register a lead designation in the particular account for only the campaign ID that the visitor responded to most recently. If you wish to track just the last lead designation on a specific lead designation page for an account, without listing all possible campaign IDs, use the word LAST.

SUMMARY OF TRACKING LEAD CONVERSIONS VIA LANDING PAGES

ACTION DESIRED

# OF ACCOUNT

IDS

# OF CAMPAIGNS

CAMPAIGN IDS

CODE: HBX.gp= EXPLANATION

9902 ) THE

VISITOR

RESPONDS TO

MOST RECENTLY;

ACCOUNT3

CONVERTS

CAMPAIGN NLC-7288DY

MAP

SELECTED

ACCOUNT(S)

TO SELECTED

CAMPAIGN(S

) CASE 2

3 3 EMC-1245DY

BAL-9902

NLC-7288DY

http://www.website.com/

? ...&GP=LAST;*;*

ACCOUNT1

CONVERTS FOR

THE LAST

CAMPAIGN

RESPONDED TO;

ACCOUNT2 AND

ACCOUNT3 ARE

NOT LINKED TO

CAMPAIGNS

Page 216: Hitbox Installation Guide

| PageA-12

MAP

ACCOUNTS TO

CAMPAIGN(S)

2 2 EML-1245

BAL-4459DY

"EML-

1245;BAL-

4459DY";

LEAD CAMPAIGN EML-

1245 HAS A LEAD

DESIGNATION FOR

FIRST ACCOUNT ID;

CAMPAIGN BAL-4459DY

HAS LEAD

DESIGNATION FOR

SECOND ACCOUNT ID

MAP SELECTED

ACCOUNT(S)

TO SELECTED

CAMPAIGN(S)

CASE 1

3 3 EML-1245

BAL-4459DY

NLL-7288

"*;EML-

1245;

LAST";

ACCOUNT1 HAS NO

ASSOCIATED

CAMPAIGNS;

ACCOUNT2 HAS A LEAD

DESIGNATION FOR

LEAD CAMPAIGN EML-

1245; ACCOUNT3 HAS

A LEAD DESIGNATION

FOR THE LAST LEAD

CAMPAIGN RESPONDED

TO

MAP SELECTED

ACCOUNT(S)

TO SELECTED

CAMPAIGN(S)

CASE 2

3 3 EML-1245

BAL-4459DY

NLL-7288

"EML-

1245,NLL-

7288;*;*";

ACCOUNT1 HAS A LEAD

DESIGNATION FOR

WHICHEVER LEAD

CAMPAIGN (EML-1245

OR NLL-7288) THE

RESPONDENT VISITED

MOST RECENTLY;

ACCOUNT2 AND

ACCOUNT3 ARE NOT

LINKED TO CAMPAIGNS

Lead Campaign Tracking for Multiple Accounts - Conversions via Response Page

Population Groups and Campaigns

Two basic models of population group and campaign interaction are outlined here. In the first model, membership in a population group is determined as the visitor responds to a campaign. In the second model, population group membership is determined for campaign converters based on the respondent's existing membership status.

In the first model, population group state changes always precede campaign state changes. Here, population group state change refers to a population group visit, and a population group entry or exit (segment conversion), while campaign state change refers to campaign response. Three scenarios (and two special cases) are possible. In the scenarios below, a visitor is assumed to be a calendar daily unique visitor.

When visitors who are members of population group A respond to a campaign in the same population group A for the first time, that visit is counted first as a population group visitor and then as a campaign response. The visit is counted as a campaign response for population group A.

When visitors who are members of population group A respond to a campaign in a different population group B for the first time, that visit is counted first as a population group entry into population group B and then as a campaign response. The visit is counted as a campaign response for population group B. A special case of this is the following scenario:

Page 217: Hitbox Installation Guide

| PageA-13

When visitors who are not members of any population group respond to a campaign containing population group B for the first time, that visit is counted first as a population group entry and then as a campaign response. The visit is counted as a campaign response for population group B.

When visitors who are members of population group A respond to a campaign unassociated with any population group for the first time, the visit has no impact on the counting of population groups, but it is considered a campaign response. A special case of this is the following scenario:

When visitors who are members of population group A respond for the first time to a campaign that removes the visitor (temporarily or permanently) from the population group, the visit is considered both a population group exit from population group A and a campaign response. This response has no connection to population group A.

EXAMPLES OF INTERACTION OF CAMPAIGN

RESPONSE/RESPONDENTS AND POPULATION GROUPS

Note: Visitor X is assumed to be a calendar daily unique visitor. Assume also that page sequences show visitor X's entire history on your site.

PAGE SEQUENCE

PAGE 1

PRE-CAMPAIGN PAGE 2

CAMPAIGN RESPONSE

UPDATES TO CAMPAIGN AND POPULATION GROUP REPORTS WHEN

X LANDS ON PAGE 2

SCENARIO 1 hbx.cmp="";

hbx.seg="1";

hbx.cmp="EMC-24670";

hbx.seg="1";

X IS COUNTED AS POP GRP 1 VISITOR, AND

AS RESPONDENT TO CAMPAIGN EMC-24670

SCENARIO 2A hbx.cmp="";

hbx.seg="1";

hbx.cmp="EMC-24670";

hbx.seg="1,2";

X IS COUNTED AS POP GRP 1 VISITOR, A

POPULATION GROUP ENTRY FOR POP GRP 2, AND A RESPONDENT TO CAMPAIGN EMC-24670

SCENARIO 2B hbx.cmp="";

hbx.seg="";

hbx.cmp="EMC-24670";

hbx.seg="1";

X IS COUNTED AS A POPULATION GROUP

ENTRY FOR POP GRP 1, AND A RESPONDENT

TO CAMPAIGN EMC-24670

SCENARIO 3A hbx.cmp="";

hbx.seg="1";

hbx.cmp="EMC-24670";

hbx.seg="";

X IS COUNTED AS RESPONDENT TO

CAMPAIGN EMC-24670. X IS NOT COUNTED

AS A POP GRP 1 VISITOR.

SCENARIO 3B hbx.cmp="";

hbx.seg="1";

hbx.cmp="EMC-24670";

hbx.seg="-1";

X IS COUNTED AS A POPULATION GROUP

EXIT FOR POP GRP 1. X IS COUNTED AS

RESPONDENT TO CAMPAIGN EMC-24670

Examples Of Interaction Of Campaign Response/Respondents And Population Groups

Different scenarios apply when tracking population groups during campaign conversion or lead conversion. In this second model, campaign conversions or lead conversions remain associated with the same population groups determined during the campaign response or lead response phase, and not with population groups acquired as a result of the conversion or lead conversion.

If respondents were to change population group membership at every conversion, one possible outcome is that HBX population group-specific reports would show more conversions per population group than responses per population group. Unless there are errors in the way the page code is implemented, it is impossible for the number of conversions in any campaign to be greater than the number of responses to the same campaign.

Page 218: Hitbox Installation Guide

| PageA-14

In the scenarios below, a visitor is assumed to be a calendar daily unique visitor. Although the explanation discusses static campaign conversions, these principles apply equally to campaign lead conversions.

When campaign respondents who are members of population group A land on a campaign goal page having the same population group A, that visit is counted first as a population group visitor and then as a campaign conversion. The visit is counted as a campaign conversion for population group A.

When campaign respondents who are members of population group A land on a campaign goal page containing a different population group B, that visit is counted first as a population group entry into the population group B, and then as a campaign conversion. But, the visit is counted as a campaign conversion for population group A, because the visitor was a member of population group A when first responding to the campaign. A special case of this is the following scenario:

When campaign respondents who are not members of any population group land on a campaign goal page containing population group B, that visit is counted first as a population group entry for population group B and then as a campaign conversion. But, the campaign conversion is not associated with population group B, since the visitor was not a member of population group B when first responding to the campaign.

If population group A was deleted via the Population group administration page prior to the respondent's conversion (based on comparing time stamps for population groups on the respondent's HBX cookie), the campaign conversion is not associated with population group A. Remember, however, that the respondent is still associated with population group A.

When respondents who are members of population group A land on a campaign goal page unassociated with any population group, the visit is counted as a campaign conversion in population group A., but is not counted as a population group A visitor. A special case of this is the following scenario:

When respondents who are members of population group A land on a campaign goal page that removes the visitor (temporarily or permanently) from the population group, the visit is counted as a an exit from population group A. This visit is also considered a campaign conversion in population group A.

If population group A was deleted via the Population group Administration page prior to the respondent's conversion (based on comparing time stamps for population groups on the respondent's HBX cookie), the campaign conversion is not associated with population group A. Remember, however, that the respondent is still associated with population group A.

Page 219: Hitbox Installation Guide

| PageA-15

EXAMPLES OF INTERACTION OF CAMPAIGN CONVERSION/CONVERTERS AND POPULATION GROUPS:

Note: Visitor X is assumed to be a calendar daily unique visitor; also assume that page sequences show visitor X's entire history on your site

PAGE

SEQUENCE

PAGE 1

PRE-CAMPAIGN

PAGE 2

CAMPAIGN RESPONSE

PAGE 3

CAMPAIGN CONVERSION

UPDATES TO

CAMPAIGN AND

POPULATION

GROUP REPORTS

WHEN X LANDS ON

PAGE 3

SCENARIO 1

hbx.cmp="";

hbx.seg="1";

hbx.cmp="EMC-24670";

hbx.seg="1";

hbx.gp="EMC-24670";

hbx.seg="1";

X IS COUNTED AS A

POP GRP 1 VISITOR

AND A CONVERTER

TO CAMPAIGN

EMC-24670 AS

PART OF POP GRP 1

SCENARIO 2A

hbx.cmp="";

hbx.seg="1";

hbx.cmp="EMC-24670";

hbx.seg="1";

hbx.gp="EMC-24670";

hbx.seg="1,2";

X IS COUNTED AS

POP GRP 1 VISITOR

AND A POPULATION

GROUP ENTRY FOR

POP GRP 2. X IS A

CONVERTER TO

CAMPAIGN EMC-24670 AS PART OF POP GRP 1

SCENARIO 2B

hbx.cmp="";

hbx.seg="";

hbx.cmp="EMC-24670";

hbx.seg="";

hbx.gp="EMC-24670";

hbx.seg="1";

X IS COUNTED AS A

POPULATION

GROUP ENTRY FOR

POP GRP 1. X IS A

CONVERTER TO

CAMPAIGN EMC-24670 BUT IS NOT PART OF ANY POPULATION GROUPS

SCENARIO 2C

hbx.cmp="";

hbx.seg="1";

hbx.cmp="EMC-24670";

hbx.seg="1";

Seg 1

deleted

hbx.gp="EMC-24670";

hbx.seg="";

X IS COUNTED AS A

POPULATION

GROUP EXIT FOR

POP GRP 1. X IS A

CONVERTER TO

CAMPAIGN EMC-24670 BUT IS NOT PART OF ANY POPULATION GROUPS

SCENARIO 3A

hbx.cmp=""; hbx.cmp="EMC-24670"; hbx.gp="EMC- X IS COUNTED AS A

Page 220: Hitbox Installation Guide

| PageA-16

hbx.seg="1"; hbx.seg="1"; 24670";

hbx.seg=""; CONVERTER TO

CAMPAIGN EMC-24670 AS PART

OF POP GRP 1 X

IS NOT COUNTED

AS A POP GRP 1

VISITOR.

SCENARIO 3B

hbx.cmp="";

hbx.seg="1";

hbx.cmp="EMC-24670";

hbx.seg="1";

hbx.gp="EMC-24670";

hbx.seg="-1";

X IS COUNTED AS A

POPULATION

GROUP EXIT FOR

POP GRP 1. X IS A

CONVERTER TO

CAMPAIGN EMC-24670 AS PART OF POP GRP 1

SCENARIO 3C

hbx.cmp="";

hbx.seg="1";

hbx.cmp="EMC-24670";

hbx.seg="1";

Seg 1

deleted

hbx.gp="EMC-24670";

hbx.seg="";

X IS COUNTED AS A

POPULATION

GROUP EXIT FOR

POP GRP 1. X IS A

CONVERTER TO

CAMPAIGN EMC-24670 BUT IS NOT PART OF ANY POPULATION GROUPS

Examples Of Interaction Of Campaign Conversion/Converters And Population Group

Response Attribute, Lead Attribute, Conversion Attribute, and Conversion Value with Multiple Accounts

HBX applies the value defined for hbx.hra hbx.hla hbx.hcn and hbx.hcv to all accounts associated with a page when the page is counted as a response, lead designation, or conversion. The same principle applies if the campaign is a keyword advertising network campaign, where the keyword stored with the campaign becomes the response attribute (that is, the value of hbx.hra).

Using the example of the lead attribute, suppose that more than lead campaign is defined on the lead designation page, each associated with a different account, and a lead designation is counted for the campaigns associated with the accounts. When the lead designation occurs, the same value defined for hbx.hla is applied to all accounts.

If

hbx.acct="DM0011223344;DM1122334455;DM2233445566";

hbx.hlt="EML-1258;BAL-4459DY;NLL-7288";

hbx.hla="Forms+locator";

then for every lead designation occurring on the page, "Forms locator" is considered as a lead attribute for all lead campaigns defined on the page

Coding Population Groups With Multiple Accounts

You can associate many population group strings with account IDs. The order in which population group strings are coded corresponds directly to the order in which account IDs are coded.

For three accounts A, B, and C, if you define hbx.seg thus:

Page 221: Hitbox Installation Guide

| PageA-17

hbx.seg="1,2;4,7;20,15,2";

account A will count visits to the page under population groups 1 and 2

account B will count visits to the page under population groups 4 and 7

account C will count visits to the page under population groups 20, 15 and 2

If you do not wish to collect population group data for an account ID, insert an asterisk * in place of a population group string.

Suppose you have three account IDs and want to assign different population group strings to the first and third account IDs, while not assigning any population group string to the second. The hbx.seg variable would look like this:

hbx.seg="1,2;*;1,3,4";

Using the * in place of a population group string disables collection of population group data for the second account ID.

If the hbx.seg variable does not contain a number of population group strings that matches the number of account IDs on that page, all the account IDs not having a corresponding population group string in the hbx.seg variable will be associated with the final population group string.

For example, if you have five account IDs on a page and your hbx.seg variable is defined as follows:

hbx.seg="1,2;*;1,3;*";

then the first account ID is associated with population group string 1,2. The second account ID is not collecting population group data. The third account ID is associated with population group string 1,3. The fourth and fifth account IDs are associated with the final * and therefore will not collect population group data.

Summary of Coding Population groups with Multiple Account IDs

ACTION DESIRED

# OF ACCOUN

T IDS

# OF POPULATION GROUPS

POPULATION GROUP

IDS

CODE: hbx.seg= EXPLANATIO

N

MAP

ACCOUNTS

TO

POPULATION

GROUP(S)

2 4 1, 2, 4, 5 "1,2;1,4,5";

POPULATION

GROUPS 1 AND 2

MAPPED TO FIRST

ACCT ID;

POPULATION

GROUPS 1, 4,

AND 5 MAPPED

TO SECOND ACCT

ID

MAP

SELECTED

ACCOUNT(S

4 5 1, 2, 4, 5, 6 "*;1,5,6;2,4;2,3";

ACCOUNT1 HAS

NO ASSOCIATED

POPULATION

Tip

Tip

Page 222: Hitbox Installation Guide

| PageA-18

) TO

SELECTED

POPULATION

GROUP(S)

CASE 1

GROUPS;

ACCOUNT2

LINKED TO

POPULATION

GROUPS 1, 5,

AND 6;

ACCOUNT3

LINKED TO

POPULATION

GROUPS 2 AND

4; ACCOUNT4

LINKED TO

POPULATION

GROUPS 2 AND 3

MAP

SELECTED

ACCOUNT(S

) TO

SELECTED

POPULATION

GROUP(S)

CASE 2

4 5 1, 2, 4, 5, 6 "*;1,5,6;*";

ACCOUNT1 HAS

NO ASSOCIATED

POPULATION

GROUPS;

ACCOUNT2

LINKED TO

POPULATION

GROUPS 1, 5,

AND 6;

ACCOUNTS 3 AND

4 ARE NOT

LINKED TO

POPULATION

GROUPS

Population groups Coding: Multiple Accounts

Advanced Tagged Funnel Coding

Multiple Funnels per Page - Single Account

For multiple funnels on one page (up to three per account), the syntax is the same as for the simple funnel, with each funnel and level ID pair in parentheses separated by the vertical bar |

Suppose you have three funnels, "EmailSubscriptionFunnel" (funnel ID 200304), "CatalogArrivalFunnel" (funnel ID 200521), and "FreeToPayFunnel" (funnel ID 200654), and you share some pages among the EmailSubscriptionFunnel, CatalogArrivalFunnel, and FreeToPayFunnel The following chart shows a possible set of funnel levels:

Page 223: Hitbox Installation Guide

| PageA-19

PAGE NAME FUNNEL NAME

FU

NNEL ID

LEVEL

NAME

LEVEL

ID

CONVERSION LEVEL

?

FUNNEL CODE

hook.htm EMAILSUBSCRIP

TIONFUNNEL

2 HOOK 1 NO hbx.fnl="(200304,1)";

more_features.htm

EMAILSUBSCRIP

TIONFUNNEL

2 FEATUR

ES

2 NO hbx.fnl="(200304,2)";

got_em.htm EMAILSUBSCRIP

TIONFUNNEL

2 SUCCE

SS

3 YES hbx.fnl="(200304,3c)";

convince_me.htm

CATALOGARRIV

ALFUNNEL

4 CONVI

NCE

1 NO hbx.fnl="(200521,1)";

sounds_good.htm

CATALOGARRIV

ALFUNNEL

4 SELLME 2 NO hbx.fnl="(200521,2)";

lets_order_now.htm

CATALOGARRIV

ALFUNNEL

4 SPEND 3 YES hbx.fnl="(200521,3c)";

upgrade_service.htm

FREETOPAYFUN

NEL

5 FREE 1 NO hbx.fnl="(200654,1)";

more_features.htm

FREETOPAYFUN

NEL

5 BETTER 2 NO hbx.fnl="(200654,2)";

benefits.htm

FREETOPAYFUN

NEL

5 WHYNO

T

3 NO hbx.fnl="(200654,3)";

lets_order_now.htm

FREETOPAYFUN

NEL

5 BIGBU

CKS

4 YES hbx.fnl="(200654,4c)";

Coding Multiple Funnels: Page Names and Levels

In this case, the CatalogArrivalFunnel and FreeToPayFunnel share page lets_order_now.htm, while the EmailSubscriptionFunnel and FreeToPayFunnel both share page more_features.htm.

For the lets_order_now.htm page, the funnel variable has the following code:

hbx.fnl="(200521,3c)|(200654,4c)";

Similarly, the funnel variable for the more_features.htm page is encoded:

hbx.fnl="(200304,2)|(200654,2)";

The syntax for a multiple levels/funnels on a page is:

hbx.fnl="(fn,Lm)|(fs,Lt)|(fy,Lz)";

where

fn,fs,fy are the funnel IDs,

Lm ,Lt ,Lz are the level IDs, and

c is the conversion level identifier,

Page 224: Hitbox Installation Guide

| PageA-20

based on the IDs listed on the Funnel Administration page when you created the funnels.

Note that nothing except the vertical bar, the commas, open and closing parentheses, the Funnel ID, the conversion level marker c and Level ID are permitted between the double quotes.

Single and Multiple Funnels per Page - Multiple Accounts

For multiple accounts on a single page, the syntax is the same as that for a single funnel page, with funnel code for each account separated by a semicolon ;

Suppose each funnel in the example above is connected with a different account, instead of the same account, as in the following chart:

Page 225: Hitbox Installation Guide

| PageA-21

PAGE NAME FUNNEL NAME

FUNNEL ID

LEVEL NAME

LE

VE

L I

D

CONVERSION

LEVEL? FUNNEL CODE

ACCOUNT DM000ABCDEF00

hook.htm EMAILSUBSCRIPTIO

NFUNNEL

200304

HOOK 1 NO hbx.fnl="(200304,1)";

more_features.htm

EMAILSUBSCRIPTIO

NFUNNEL

200304

FEATURE

S

2 NO hbx.fnl="(200304,2)";

got_em.htm EMAILSUBSCRIPTIO

NFUNNEL

200304

SUCCESS 3 YES hbx.fnl="(200304,3c)";

ACCOUNT DM000ABCDEF01

convince_me.htm

CATALOGARRIVALF

UNNEL

200521

CONVINC

E

1 NO hbx.fnl="(200521,1)";

sounds_good.htm

CATALOGARRIVALF

UNNEL

200521

SELLME 2 NO hbx.fnl="(200521,2)";

lets_order_now.htm

CATALOGARRIVALF

UNNEL

200521

SPEND 3 YES hbx.fnl="(200521,3c)";

ACCOUNT DM000ABCDEF02

upgrade_service.htm

FREETOPAYFUNNEL 200654

FREE 1 NO hbx.fnl="(200654,1)";

more_features.htm

FREETOPAYFUNNEL 200654

BETTER 2 NO hbx.fnl="(200654,2)";

benefits.htm FREETOPAYFUNNEL 200654

WHYNOT 3 NO hbx.fnl="(200654,3)";

lets_order_now.htm

FREETOPAYFUNNEL 200654

BIGBUCK

S

4 YES hbx.fnl="(200654,4c)";

Coding Multiple Funnels in Multiple Accounts: Page Names and Levels

In this case, the CatalogArrivalFunnel and FreeToPayFunnel still share page lets_order_now.htm, and the EmailSubscriptionFunnel and FreeToPayFunnel still share page more_features.htm, but all three funnels are under different accounts.

The syntax for multiple levels/funnels on a page tracking multiple accounts is:

hbx.fnl="(fn,Lm);(fs,Lt);(fy,Lz)";

where

fn,fs,fy are the funnel IDs,

Lm ,Lt ,Lz are the level IDs,

c is the conversion level identifier, and

* is the (optional) null account marker (see below)

Page 226: Hitbox Installation Guide

| PageA-22

For the lets_order_now.htm page, the funnel variable has the following code:

hbx.fnl="*;(200521,3c);(200654,4c)";

Similarly, the funnel variable for the more_features.htm page is encoded:

hbx.fnl="(200304,2);*;(200654,2)";

NULL ACCOUNT MARKER

Note that the order of the list of funnels for multiple accounts corresponds to the order in which multiple accounts numbers are listed on your page under the hbx.acct variable.

For example, if you have HBX accounts DM000ABCDEF00, DM000ABCDEF01, and DM000ABCDEF02. Your hbx.acct variable is then:

hbx.acct="DM000ABCDEF00;DM000ABCDEF01;DM000ABCDEF02";

Using the above example, funnel 2 is tracked for DM000ABCDEF00, funnel 4 is tracked for DM000ABCDEF01, and funnel 5 is tracked for DM000ABCDEF02. If, for a particular page, you wish to track only funnels on the first and third accounts, use the following code

hbx.fnl="(200304,2);*;(200654,2)";

where the asterisk * indicates that no data is recorded for the second account ID.

If you have three accounts, but only wish to track funnel information for funnel page hook.htm in the first account, the code is

hbx.fnl="(200304,1);*";

You do not need to use

hbx.fnl="(200304,1);*;*";

since a string-final, post-semicolon asterisk indicates that the funnel is associated only with the first of multiple accounts listed in the hbx.acct variable, and the rest of the accounts are ignored in reporting funnel information.

Finally, if you have multiple funnels with multiple accounts, use the following syntax when coding the funnels in the page code, concatenating funnel IDs and funnel level IDs for each account with the semicolon ;

hbx.fnl="(f1,L1)|(f3,L2);(f1,L1)|(f2,L2);(f2,L2)|(f2,L2)";

Combined Tagged and Tagless Funnels

If you currently have certain pages on your site coded for collecting funnel data using the hbx.fnl variable, you can create a hybrid funnel in the funnel administration page that adds the flexibility of creating a tagless funnel to the funnel information already coded on these pages. You can use this hybrid funnel to build what-if scenarios that exercise content group or page name restrictions on or permit greater access to certain levels of the funnel.

Suppose that you coded the EmailSubscriptionFunnel as described in previous sections, and that levels of the funnel include:

Hook

Features

Success

Suppose further that you want to modify the EmailSubscriptionFunnel so that it acquires visitors from more than one page (or from a content group). The Hook level of the original EmailSubscriptionFunnel acquired visitors from only the hook.htm page. By now, you have created several alluring pages, all of which could pull the visitor into the funnel. The content group specified for these pages is /ads/promopages.

In the funnel administration page, click on the Edit button for the EmailSubscriptionFunnel . On level one, click the (expand level) icon. On the first line of the level 1 criteria, select Content Group equals and enter

/ads/promopages. Do not enter funnel level criteria for levels two or three.

Page 227: Hitbox Installation Guide

| PageA-23

Click on the Finish button. Notice changes in data displayed in the Conversion Funnel reports. Because you have increased the reach of the funnel over the purely tagged version in the page code, you should see an increase in the number of visitors to the funnel.

Note that you can only edit tagged funnels by adding constraints on various funnel level. You cannot add or remove the number of funnel levels in a tagged funnel. Nor can you define a tagless funnel using levels from a pre-existing tagged funnel.

<noscript></noscript>

This section only applies to versions of page code in use prior to the release of HBX. Page code

released with HBX no longer contains the <noscript></noscript> tags described in this section. HBX will continue to track data contained in the <noscript></noscript> tags in existing page code, but implementations of the new HBX page code no longer track this data.

The <noscript></noscript> tags are part of the HTML 4.0 specification. The original intent of adding these tags was to allow visitors with disabled JavaScript (or other client-side scripting) in their browsers to view content, rather than seeing a page rendered blank.

Today, however, visitors with disabled JavaScript account for only about 3% of total visitor activity on Web pages tracked by StatMarket. The few "visitors" with JavaScript disabled are typically automated agents, such as spiders, web-crawlers, or robots. Automated agents visit thousands of Web sites in a short amount of time. Most automated agents are (1) not browsers, or (2) are not embedded in browsers, or (3) are not applications that understand and interpret JavaScript. Because of this, client-side scripting used in web page content is rarely executed by automated agents. Automated agents are free however to request the URL listed in the IMG SRC portion of the NOSCRIPT element of the HBX page coding. When automated agents request this URL, a page hit is recorded by HBX.

If JavaScript is turned off in the visitor's browser, HBX can still track visitor interaction for most statistics. Note however that because the detection of special conditions in the visitor's browser requires visitors to have JavaScript enabled, certain HBX statistics are not tracked. These statistics include: Broken Link Pages, Cookies, Downloads - Pages, Downloads - Traffic, Exit Links, Files Not Found, Most Requested Content, and Time Zones.

When the <noscript></noscript> portion of the page code is accessed by a "visitor", a minimum of information about the visitor is sent for processing by HBX.

How to Code the <noscript></noscript> Portion of the Page Code

The page code default for the <noscript></noscript> portion is:

<noscript><img

src="http://ehg.HBX.com/HG?hc=we89&cd=1&hv=6&ce=u&hb=DMyourAccountNumber&n=PUT+PAGE+NAME+HERE&vcon=CONTENT+CATEGORY&seg=&cmp=&gp=&fnl=&pec=&dcmp=&ra=&gn=&cv=&ld=&la=&c1=&c2=&c3=&c4=" border="0" width="1" height="1"></noscript>

In this sample, replace ehg.HBX.com with the value assigned to the hbx.gn variable.

Keep in mind that visitors (probably automated agents) with disabled JavaScript will access only this portion of the code. If you leave the following page name and content variables in the default state

n=PUT+PAGE+NAME+HERE

vcon=CONTENT+CATEGORY

Page 228: Hitbox Installation Guide

| PageA-24

any "hits" by automated agents are counted in the HBX page statistics as "Unknown Page", while content statistics record visits to "/Ungrouped" content groups. (If the values assigned to the default variables are not changed, HBX reports the page as "Unknown" and the content as "/Ungrouped".)

To make page and content statistics more informative, change the defaults

n=PUT+PAGE+NAME+HERE

vcon=CONTENT+CATEGORY

For example, use the following values:

n=No+JavaScript

vcon=/No+JavaScript

You may also enable User Agent Filtering in the Edit Account page. This instructs HBX to ignore visits by automated agents to your Web page.

<noscript></noscript> and SSL Web page Tracking

Instead of using the SSL Page code (found on the Edit Account page) when you need to track your secure Web pages, you can use the HBX page code, as long as a modification is made to the <noscript></noscript> section of the code. For your secure pages, make the following change where highlighted:

<noscript> <img src="https://ehg.HBX.com/HG?hc=we89...height="1"> </noscript>

In this sample, replace ehg.HBX.com with the value assigned to the hbx.gn variable.

If the protocol specifier http:// is not changed to https:// HBX will not be able to determine that the page should be handled as a secure Web page.

<noscript></noscript> and Campaign Response/Conversion Tracking

TRACKING RESPONDENTS VIA WEB PAGES WITH JAVASCRIPT DISABLED

To track responses to static (or dynamic) campaigns who also have JavaScript turned off (disabled), or who are using browsers capable of rendering only JavaScript 1.0, add the campaign ID to the &cmp (or &dcmp) variable in the <noscript> portion listed at the bottom of the HBX page code. You must also modify the HBX page code as described in the section on coding campaigns for responses. In the <noscript> portion, locate the string &cmp (or &dcmp) and change from the default null assignment ( &cmp= or &dcmp) to the campaign ID

<noscript><img src="...&cmp=EMC-1258"></noscript>

or

<noscript><img src="...&dcmp=EMC-1258DY"></noscript>

TRACKING CONVERSIONS BY CODING GOAL PAGES WITH JAVASCRIPT DISABLED

To track conversions for static (or dynamic) campaigns by respondents who also have JavaScript turned off (disabled), or who are using browsers capable of rendering only JavaScript 1.0, add the campaign ID to the &gp variable in the <noscript> portion listed at the bottom of the HBX page code, as well as changing page code as described in the section on coding campaigns for conversions. Locate the string &gp and change from the default null assignment ( &gp= ) to the campaign ID.

<noscript><img src="...&gp=EMC-1258"></noscript>

or <noscript><img src="...&gp=EMC-1258DY"></noscript>

Or, use LAST

<noscript><img src="...&gp=LAST"></noscript>

TRACKING LEAD DESIGNATIONS BY CODING LEAD DESIGNATION PAGES WITH JAVASCRIPT DISABLED

To track lead designations for static (or dynamic) lead campaigns by respondents who also have JavaScript turned off (disabled), or who are using browsers capable of rendering only JavaScript 1.0, add the campaign ID to the

Page 229: Hitbox Installation Guide

| PageA-25

&ld variable in the <noscript> portion listed at the bottom of the HBX page code, as well as changing page code as described in the section on coding campaigns for conversions. Locate the string &ld and change from the default null assignment ( &ld= ) to the campaign ID.

<noscript><img src="...&ld=EML-1258"></noscript>

or <noscript><img src="...&ld=EML-1258DY"></noscript>

Or, use LAST

<noscript><img src="...&ld=LAST"></noscript>

If you use the URL-query string tracking method (the on-line method), and you also wish to track

responses or conversions by individuals (or automated agents) using browsers with JavaScript disabled by coding the <noscript></noscript> section of the page code as described above, you cannot use the alternate campaign or goal page query parameters for the default CMP DCMP or GP query parameters. Because browsers with JavaScript disabled detect only HBX page code between the <noscript></noscript> tags, they cannot

know that the CMP DCMP or GP names have been reassigned with the hbx.cmp="_P::<query_string_parameter>";

hbx.dcmp="_P::<query_string_parameter>"; or hbx.gp="_P::<query_string_parameter>"; form of these variables.

Advanced Form Abandonment Tracking with onClickhandler=validation_function()

At some point, you may want a more elegant approach to client-side validation of forms input data, using onClick handlers, containing the form.submit()method.

Because browsers behave differently in how form.submit() is handled, HBX requires the use of the JavaScript variable hbx.fv to mark pages with forms validated by this class of function. The hbx.fv variable is assigned the name of the onClick handler using the form.submit()method. For example, the hbx.fv variable might be assigned the value my_js_validation as in:

hbx.fv = "my_js_validation";

When coding pages for the hbx.fv (form validation) variable, the value you assign must conform to character size and character types described in Illegal Characters.

If you wish to disable HBX form abandonment tracking for any pages, assign the hbx.fv variable the value n or N:

hbx.fv = "n";

This instructs HBX to ignore any forms on those pages. With this in mind, you should carefully assign the form validation function a descriptive name. Using a form validation variable named n or N is counter-productive if you intend to track form validation.

If you wish to limit the forms tracked automatically by form abandonment, set the value of the hbx.fv variable to an integer equal to the minimum number of fields in just the form you wish to track. Currently, any form with three or more fields is tracked by HBX by default.

For example, suppose you have two independent forms on your page:

a search form with four fields (including two radio buttons), and

a email signup form with a two text boxes and two radio buttons, for a total of three fields.

Normally, HBX would track form abandonment for both forms. If you wish to track just the search form, and not the email signup form, use this definition of the hbx.fv variable:

hbx.fv = "4";

Page 230: Hitbox Installation Guide

| PageA-26

This instructs HBX to ignore any forms on the page containing less than four fields.

For this example, note that if you define hbx.fv = "5"; no forms on the page will be tracked. This

is because the minimum number of fields per form must be equal to or greater than five.

onClick Handler Examples

EXAMPLE 1

HTML form containing a form button with an onClick handler checking only if there is at least one character input in the field that may submit the form. This example also applies to forms with auto-focus fields, with no character input by the user.

<!-- OMNITURE CODE HBX2.0-->

<!--COPYRIGHT 1996 - 2008. OMNITURE, INC. ALL RIGHTS RESERVED. U.S.PATENT No. 6,393,479B1 and

6,766,370. MORE INFO: http://www.omniture.com/privacy/ -->

<script language="javascript">

//REQUIRED, NON-EDITABLE SECTION

var _hbEC=0,_hbE=new Array;function _hbEvent(a,b){b=_hbE[_hbEC++]=new Object();b._N=a;b._C=0;return

b;}var hbx=_hbEvent("pv");hbx.vpc="HBX0200u";hbx.gn="hg123";

//REMAINING VARIABLES ARE ALL OPTIONAL

//ACTION SETTINGS

hbx.fv="handleSubmit";//FORM VALIDATION MINIMUM ELEMENTS OR SUBMIT FUNCTION NAME <!-- remainder of Omniture code -->

//REQUIRED SECTION. CHANGE "YOURSERVER" TO VALID LOCATION ON YOUR WEB SERVER (HTTPS IF FROM SECURE

SERVER)

</script><script language="javascript1.1" src="http://YOURSERVER/hbx.js"></script>

<!--END OMNITURE CODE--> <script> function handleSubmit(form_object) { if( form_object.username.value == '' ) { return; } form_object.submit(); } </script> <form name="the_form"> <p>Enter your name: <input type="text" name="username"><br> Enter your age: <input type="text" name="age"><br> Enter email: <input type="text" name="email"><br> <input type="button" value="Submit Form" onClick="handleSubmit(document.forms['the_form'])"><br> </p></form>

EXAMPLE 2

HTML form containing a form button with an onClick handler checking only if there is at least one character input in the field that may submit the form. This example also applies to forms with auto-focus fields, with no characters input by the user.

<!-- OMNITURE CODE HBX2.0-->

<!--COPYRIGHT 1996 - 2008. OMNITURE, INC. ALL RIGHTS RESERVED. U.S.PATENT No. 6,393,479B1 and

6,766,370. MORE INFO: http://www.omniture.com/privacy/ -->

<script language="javascript">

//REQUIRED, NON-EDITABLE SECTION

var _hbEC=0,_hbE=new Array;function _hbEvent(a,b){b=_hbE[_hbEC++]=new Object();b._N=a;b._C=0;return

b;}var hbx=_hbEvent("pv");hbx.vpc="HBX0200u";hbx.gn="hg123";

//REMAINING VARIABLES ARE ALL OPTIONAL

//ACTION SETTINGS

hbx.fv="handleSubmit";//FORM VALIDATION MINIMUM ELEMENTS OR SUBMIT FUNCTION NAME

Page 231: Hitbox Installation Guide

| PageA-27

<!-- remainder of Omniture code -->

//REQUIRED SECTION. CHANGE "YOURSERVER" TO VALID LOCATION ON YOUR WEB SERVER (HTTPS IF FROM SECURE

SERVER)

</script><script language="javascript1.1" src="http://YOURSERVER/hbx.js"></script>

<!--END OMNITURE CODE--> <script> function handleSubmit(form_object) { if( form_object.username.value == '' ) { return; } form_object.submit(); } </script> <form name="the_form"> Enter your name: <input type="text" name="username"><br> Enter your age: <input type="text" name="age"><br> Enter email: <input type="text" name="email"><br> <!-- calling the handleSubmit() function --> <!-- invoking handleSubmit() by referencing the action of the onClick attribute to the href --> <a href="#" onClick="handleSubmit(document.forms['the_form'])">submit form with onClick link</a><br> </form>

Page 232: Hitbox Installation Guide

| PageA-28

In both examples above, HBX will report whether a form has been completed or abandoned. If abandoned, the form abandonment statistic specifies the last field having the focus when the user left the page. If the form is completed, the name of the page containing the completed form will be reported.

Cost and Revenue Calculation Models for Campaign ROI

There are five cost models for HBX campaigns. For a tagged campaign, you can pass the campaign value associated with each conversion defined in the hbx.hcv variable. For a tagless campaign, you can define Conversion Value in Step 1 of the Campaign Administration page or you can assign a value to a specific conversion in the conversion administration page. In terms of cost models, you can now select between reckoning campaign cost on the basis of cost per thousand impressions, cost per acquisition, cost per click, and daily cost, as well as the standard total cost model (discussed in the preceding paragraph). To make immediate modifications to an account's cost models, you use the campaign administration tool, or by creating/updating campaigns via the upload feature.

Now suppose that an HBX campaign runs from 4/1/03 to 4/5/03 and receives the following events.

4/1/03 - 5 conversions, 100 impressions, 10 responses, hbx.hcv = 10

4/2/03 - 10 conversions, 200 impression, 20 responses, hbx.hcv = 10

4/3/03 - 5 conversions, 300 impressions, 15 responses, hbx.hcv = 10

4/4/03 - 7 conversions, 200 impressions, 20 responses, hbx.hcv = 15

4/5/03 - 10 conversions, 100 impressions, 20 responses, hbx.hcv = 15

If your goal pages are coded with hbx.hcv, or if you defined a Conversion Value in the campaign creation or conversion creation process, a conversion value is recorded by HBX with every conversion. Results displayed for campaign cost are sensitive to the date range you select (with the exception of the total cost model). You can explore the results of campaign cost model modifications through the return on investment report detail view. In particular, this view displays the calculated figures campaign performance and ROI, where campaign performance = campaign value - campaign cost, and ROI = campaign value/campaign cost.

To allow overhead for calculation, HBX limits the conversion value and cost you can enter for a single campaign to an amount less than $10,000,000,000.00 in the campaign administration page or when uploading campaigns. You can use decimal values (up to two digits) when defining the conversion value variable.

Many different permutations are possible when selecting campaign cost in the campaign administration page. You should explore the various cost models offered to find one best suited for your particular campaign. Remember that a particular cost setting in one campaign may not be optimal for another campaign. Consider the follow examples:

Assume your newly created campaign contains a conversion value of $12 and a campaign cost of $10. For the date range 4/1/03 to 4/5/03, here are results for different settings of the conversion value and campaign cost

Campaign Value

Conversion value = $444 (5*12 + 10*12 + 5*12 + 7*12 + 10*12)

Total Cost

Campaign Cost = $10 (10*1/5 + 10*1/5 + 10*1/5 + 10*1/5 + 10*1/5)

Daily Cost

Assume user uploads the following campaign file

EML-1234,04/01/2003,10 EML-1234,04/01/2003,20 EML-1234,04/01/2003,30 EML-1234,04/01/2003,40 EML-1234,04/01/2003,50

Page 233: Hitbox Installation Guide

| PageA-29

Campaign cost = $150

CPA - Cost per acquisition

Campaign Cost = $370 (5*10 + 10*10 + 5*10 + 7*10 + 10*10)

CPC - Cost per click

Campaign Cost = $850 (10*10 + 20*10 + 15*10 + 20*10 + 20*10)

CPM - cost per thousand impressions

Campaign Cost = $9 (10*100 + 200*10 + 300*10 + 200*10 + 100*10)/1,000

If the date range is changed to 4/1/03 to 4/3/03, the results for conversion value and campaign cost for each model also change thus:

Campaign Value

Conversion value = $240 (5*12 + 10*12 + 5*12 )

Total Cost

Campaign Cost = $6 (10*1/5 + 10*1/5 + 10*1/5)

Daily Cost

Assume user uploads the following campaign file

EML-1234,04/01/2003,10 EML-1234,04/01/2003,20 EML-1234,04/01/2003,30 EML-1234,04/01/2003,40 EML-1234,04/01/2003,50

Campaign cost = $60

Page 234: Hitbox Installation Guide

| PageA-30

CPA

Campaign Cost = $200 (5*10 + 10*10 + 5*10)

CPC

Campaign Cost = $450 (10*10 + 20*10 + 15*10)

CPM

Campaign Cost = $6 (10*100 + 200*10 + 300*10)/1,000

First-Party Cookies, hbx.cp Campaigns Created in the HBX commerce module, and the Campaign Domain Variable hbx.cpd

To gather essential information about a visit, hbx.cp campaigns created in the HBX commerce module (also known as a "legacy campaign" or a _cp campaign) rely on the existence of a first-party cookie on the user's browser. A first-party cookie either originates on or is sent to the currently viewed Web site, and is commonly used to store your preferences when visiting that site. By contrast, a third-party cookie either originates on or is sent to a Web site different from the currently viewed Web site, and is used to provide some Web content on the Web site. Remember that if the visitor or customer has not enabled any kind of cookie, either first- or third- party cookies, HBX is able to gather information on only a small set of statistics. (For more information on how to create an hbx.cp campaign, consult the HBX commerce module Installation Guide.)

When a visitor/customer comes to a page on your site http://www.haymarket.com/index.html and has both first- and third- party cookies enabled, cookies are served by your site directly to the visitor's browser by your site (first-party cookies). When you look at the Cookies statistic in HITBOX or HBX presentation modes (System > Cookies), you will see the number of Page views incremented under the Cookies Enabled category.

If a visitor/customer comes to your site with the browser set to accept neither type of cookie, a look at the Cookies statistic following a visit by a visitor/customer shows that the number of Page views has increased under the Cookies Disabled category.

Suppose your haymarket.com Web site has several other subdomains connected with the Web site, including

financials.haymarket.com

news.haymarket.com

shop.haymarket.com

By default, the domain variable hbx.cpd is defined hbx.cpd=""; Normally, you should leave the hbx.cpd variable in its default state when the hbx.cp campaigns are targeting a page within the main domain.

If, for example, hbx.cpd=""; and a customer comes to a page on your site via the following URL

http://www.haymarket.com/search/category/browsecategory.jsp?XX_ID=@@1989.1031@@&cat=Yard+Care&CP=summer+camp

a response is recorded for the hbx.cp campaign "summer+camp" for the domain haymarket.com

Now, suppose that hbx.cpd=""; and the URL is:

http://shop.haymarket.com/search/category/browsecategory.jsp?XX_ID=@@1989.1031@@&cat=Yard+Care&CP=summer+camp

Because HBX doesn't automatically recognize subdomains of your Web site that are recorded on the first-party cookie served when the customer accesses the above URL, the hbx.cp campaigns targeting pages in a subdomain will not register responses.

To enable HBX to count hbx.cp campaigns targeting subdomain pages, define the variable hbx.cpd to the site's main domain name. In the above example, use this definition:

Page 235: Hitbox Installation Guide

| PageA-31

hbx.cpd="haymarket.com"; Now, anytime a visitor responds to a hbx.cp campaign hosted on any subdomain of your site, HBX records a response. This method works if you conduct the campaign through the URL query string using &CP=campaign+name or by definition of the hbx.cp variable ( hbx.cp="campaign+name";) on the landing page.

If you define the variable hbx.cpd for a different domain that doesn't belong to the current hostname for the page, the HBX commerce module will not be able to indicate responses to hbx.cp campaigns for pages intended as targets for hbx.cp campaigns. For example, if you define hbx.cpd="deanrichardson.com"; no hbx.cp campaign responses will be registered.

Alternative Names for Tracking Downloaded Files

When tracking files downloaded from your site, you may wish to display a more readable or user-friendly label for the file name. To do this, you assign a value to the name attribute in the anchor <a> tag, and change the default value of the hbx.dft variable to y (lower-case only).

For example, if the name of the download file you want to track is pmllxr3-tar.gz, but you prefer to have HBX display the file name as "Personal Manager Lite for LXR", simply make the following change to the page code:

hbx.dft="y";

When providing the link in the download page, use this code:

<a href="/downloads/pmllxr3-tar.gz" name="Personal Manager Lite for LXR">Personal Manager Lite for LXR</a>

Note that the default value of the hbx.dft variable is n. In its default state, HBX will use the name of the just the downloadable file based on the value assigned to the href attribute of the anchor tag (in the example above, pmllxr3-tar.gz). In addition, if you set the value of hbx.dft to y but fail to assign a value to the name attribute in the anchor tag, HBX will list the name of the downloadable file based on the value assigned to the href attribute of the anchor tag.

You can also instruct HBX to display the entire path of the file. To do this, define hbx.dft="full"; If the example above is changed thus

<a href="/downloads/pmllxr3-tar.gz" >Personal Manager Lite for LXR</a> (without using the name attribute)

HBX will display /downloads/pmllxr3-tar.gz instead of the simple name of the file (pmllxr3-tar.gz).

Error Page Code

When a visitor to your site arrives by accident at a URL that does not correspond to any page on your site, your server normally returns a 404 error, meaning that the page was not found. For most servers, this error page is customizable.

HBX allows you to track visitor accesses of this error page with error page code. This code is available from the Site Tools and Reporting Menu > Edit Account.

Customizing the Error Page Code

CHANGING THE DISPLAY OF THE CONTENT GROUP WHEN VISITORS ACCESS THE ERROR PAGE

By default, whenever a visitor accesses the 404 error page, HBX reports the visit in the Files Not Found, Broken Link Pages statistics, and increments the /Ungrouped content group for statistics that show content groups. If you prefer to have HBX classify visits to these pages under the heading of /ERROR or / (/ means root directory of the content hierarchy), you need to change the default value of the hbx.mlc variable on the error page code.

Page 236: Hitbox Installation Guide

| PageA-32

By default, the hbx.mlc variable is set to "CONTENT+CATEGORY" thus:

hbx.mlc="CONTENT+CATEGORY";

To display /ERROR for content statistics, modify the value thus:

hbx.mlc="ERROR";

To display / (that is, the "root directory" of the content hierarchy) for content statistics, modify the value thus:

hbx.mlc="";

MULTIPLE ACCOUNTS

If you have several HBX accounts, and wish to track visits to error pages across all accounts, you don't need to make any adjustments to the error page code. HBX error page code automatically registers visits for all accounts.

Filtering and Tracking Exit Links

The hbx.elf variable allows you to track visitors who exit from a page hosted on your domain to a site hosted on one of your subdomains.

Normally, to explore the links visitors click on to exit your site, you view the HBX report Exit Links. The Exit Links report shows all valid exit links to a site with

completely different HBX account

or to another page without HBX code.

For example, if your site's domain is wholehog.com, you can track exit links to an unrelated site (trailbologna.com) or to your "sister" site saltpork.com.

With the hbx.elf variable, you can follow exits from pages in your domain to a site hosted on a subdomain. Defining the hbx.elf variable as:

hbx.elf ="abattoir.wholehog.com";

now allows you track all exits linked to the subdomain abattoir.wholehog.com. Note that if you don't define the hbx.elf variable this way, all exit links to abbatoir.wholehog.com will be ignored by HBX.

You may also define the hbx.elf variable as a cgi program that is executed when a visitor clicks on a link. Suppose you want to have a script-driven "smart" redirect page that funnels exit visits according to some criteria. You place a your script on the page (exit.cgi) and then define the hbx.elf variable as:

hbx.elf = "exit_director.cgi"

With this definition, HBX records the number of times that exits involve the invocation/execution of the script. The Exit Links page lists "exit_director.cgi" among all the other exit links from your domain.

Custom Referrers

With the hbx.hrf variable, you can instruct HBX to expose a specific referring page name, instead of a non-specific default label used for internal referrals.

For example, if a visitor goes first to http://groups.google.com/groups?hl=en&lr=&ie=UTF-8&group=alt.frankenstein.soiled

and then clicks on one of the sponsored links, such as http://groups.google.com/url?q=http://www.shopcentral.com/xKW-scrubbing-bubbles/link_id-742/pumice.html&sa=l&ai=YaBA&num=1

HBX will display one of the referrers for page http://www.scrubbing-bubbles/link_id-742/pumice.html

as

http://groups.google.com

If the referring page is within your Web pages or domain, however, HBX displays the link as "Bookmarks or directly referred URLs"

Page 237: Hitbox Installation Guide

| PageA-33

To change how the internal referring page is displayed, assign a URL value to the hbx.hrf variable. By default, the value of this variable is the empty string. (hbx.hrf=""; ).

Suppose that on the index page, you have a link to another page, but you wish to track the number of clicks through to that page. One way to handle this is to implement the HBX link tracking feature. Another method is to use a cgi/perl script to log the number of clicks. The following example explains this second option.

For example, if the target page is http://www.scrubbing-bubbles/pumice/index.html

and the main page (http://www.scrubbing-bubbles/washmartha/index.html) contains the following code to redirect to this target page:

<a href="/cgi-bin/redir.pl?url=/pumice/index.html">"Gritty Clean"</a>

visitors who click on the link are redirected to the specified URL.

By default, HBX reports the referrer to the target page as a "Bookmarks or directly referred URLs". This is because HBX cannot determine the exact location of the referrer from the available page traffic information.

If you want HBX to display more specific information about the exact page that refers visitors internally on your Web site (such as a redirect page), define the hbx.hrf variable like this:

hbx.hrf = "http://www.scrubbing-bubbles/washmartha/index.html"

Now, you notice that in the list of Referring URLs reported by HBX for the target page /pumice/index.html the following URL is included:

http://www.scrubbing-bubbles/washmartha/index.html

instead of the generic "Bookmarks or directly referred URLs".

Redirect Code

The HBX technology allows you to send customers to another page via a redirect function and still collect visitor information based on the original page.

Typically, when a visitor lands on a page containing HBX code, the information is sent to HBX immediately after the entire page loads in the browser. The exact timing of this transmission depends on where the HBX code is located on the Web page. In general, it is recommended that you place the HBX code as close after the opening <BODY> tag as possible.

A page can contains redirect instructions in various forms: client-side redirect or server-side redirect. Client redirect may be implemented as a META refresh in the header (using code such as <META HTTP-EQUIV="refresh" content="0;URL=http://www.website.com/newpage.htm"> or a JavaScript redirect script in the document body, while a server redirect may be a .cgi script that executes when the page loads, optionally gathers information about the visit, and sends then sends the visitor to another page. If using a client-side solution, the page may not have time to load entirely. If HBX code is on such a page, the data normally generated by HBX page code as a result of the visit will not be transmitted because the script will not have time to execute before the browser sends the visitor to the redirect page.

To address this situation, HBX offers a redirect function that transmits visitor information to HBX and then sends the visitor to the redirect page.

The function is in the following form:

_hbRedirect("main+page","main+content","http://www.nextpage.com","&other_hbx_query_variables");

where "main+page" indicates the page name of the originating page (the page containing the redirect code)

"main+content" identifies the content group of the originating page, "http://destination.url.com" is the target URL for the redirect, and "&other_hbx_query_variables" is a string containing other queries recognized by HBX (such as campaign information, custom metric information, and so on).

To implement the redirect code, associate the _hbRedirect function with a visitor action, such as clicking on a link client-side, or incorporate the _hbRedirect function in a server-side script.

Page 238: Hitbox Installation Guide

| PageA-34

For an example of a client-side implementation suppose you wish to:

redirect visitors from the default welcome page (that is, an originating page named "welcome" and belonging to the "home" content group) at http://www.eversion.com to the destination page at http://www.eversion.com/run/db0/home/home.html,

and

track custom metric variables hbx.hc1 and hbx.hc2 for localizing Web site content to Hebrew

place the following minimal code on your originating Web page. The redirection function client-side would then appear as the gray highlighted area below:

<BODY>

<!-- OMNITURE CODE HBX2.0-->

<!--COPYRIGHT 1996 - 2008. OMNITURE, INC. ALL RIGHTS RESERVED. U.S.PATENT No. 6,393,479B1 and 6,766,370. MORE INFO: http://www.omniture.com/privacy/

-->

<script language="javascript">

hbx.hbEC=0,_hbE=new Array;function _hbEvent(a,b){b=_hbE[_hbEC++]=new Object();b._N=a;b._C=0;return b;}var hbx=_hbEvent("pv");hbx.vpc="HBX0200u";hbx.gn="hg123";

//BEGIN EDITABLE SECTION

//CONFIGURATION VARIABLES

hbx.acct="DM000111222333";//ACCOUNT NUMBER(S)

hbx.gn="h1.hitbox.com";//GATEWAY NAME

//END EDITABLE SECTION

</script>

<script language="javascript1.1" src="http://YOURSERVER/hbx.js"></script>

<!--remainder of OMNITURE PAGE CODE -->

<a href='javascript:_hbRedirect("welcome","home","http://www.eversion.com/run/db0/home/home.html","&c1=foreign&c2=bidi")'>Eversion</a>

</BODY>

Page 239: Hitbox Installation Guide

| PageA-35

Popup Windows

Whenever a page containing HBX page code is viewed by a visitor, that page is counted by HBX as a page view. This is true for all pages, including your regular Web pages as well as popup windows. Because the creation of this popup window does not represent a truly unique visit, you might wish to disable the counting of popup windows.

You can instruct HBX to ignore visits normally counted for popup browser windows by adding the HBX variable hbx.ptc to the page code. Set the value of the variable to p thus:

hbx.ptc="p";

The value p (lowercase only) is the only value for this variable recognized by HBX. When adding this functionality to the HBX page code, ensure that you place the definition somewhere between the sections beginning with these comments:

//REMAINING VARIABLES ARE ALL OPTIONAL

and

//END EDITABLE SECTION

Download Filter

For cases where you wish to block out the display of certain downloaded files that HBX typically reports on, you can define the hbx.dlf variable in the page code. The hbx.dlf variable is found among the action settings under the //OPTIONAL PAGE VARIABLES section of the HBX page code.

Any file downloaded with the following extensions is considered as Web file types, and are not counted by HBX.

.htm .cfm .jsp .pl .php .bin .dmg

.html .jhtml

.shtml and variants

.asp .cgi .taf .dll .hqx

All other file types (non-Web file type) are typically reported by HBX, unless you redefine the hbx.dlf variable.

The default value of this variable is n. When this variable has the value n, HBX will list all non-Web file types in the files downloaded and pages downloaded reports.

You can define one or more specific files or file extensions or exclude one or more specific files or file extensions.

Defining specific files as downloads

If you wish to track a particular file that is normally excluded by HBX in these reports, define the variable with the name of the file. For example, you wish to see the number of downloads of the file pattypansquash.cgi use the following definition:

hbx.dlf="pattypansquash.cgi";

You can also specify a list of files to track by using separating file names with commas:

hbx.dlf="pattypansquash.cgi,zucchini.cgi,cucumber.cgi";

When you specify a file name along with its extension, the bang (or exclamation mark) ! is not allowed in the file name.

To count all downloads with the extension .cgi use this:

hbx.dlf=".cgi";

Note that you must add the dot . before the extension.

Page 240: Hitbox Installation Guide

| PageA-36

Excluding files

If you don't wish to show, for example, the pdf files downloaded from your site, modify the definition of this variable:

hbx.dlf="!.pdf";

In this case, the bang (or exclamation mark) ! indicates that the following extensions will be filtered out from the list of downloads displayed in HBX reports. Note that you must add the dot . before the extension. You can filter out more than one by separating file extensions with commas. If you wish to display all non-Web page downloads, except for .pdf .jpg and .js, use the following syntax:

hbx.dlf="!.pdf,.jpg,.js";

If you wish to exclude a specific file, use the entire file name and its extension.

hbx.dlf="!cucumber.pdf";

You can also exclude a list of files:

hbx.dlf="!cucumber.pdf,pattypansquash.pdf,zucchini.pdf";

Finally, you can define specific files or extensions and exclude others in the same definition of the variable:

hbx.dlf=".pl!cucumber.pdf,zucchini.pdf";

This definition counts all files with the extension .pl but excludes those named cucumber.pdf and zucchini.pdf

Force Lower Case Page and Content Group Name Variable

When you define the variables hbx.pn and hbx.mlc in the page code for your Web pages, you typically name the page according to its title information and content group according to a current content classification. Over the course of time, other conventions may be used to determine the page name or content group. Eventually, pages and content groups acquire mixed case names.

If you wish to view the page names and content groups displayed in HBX reports in all lower case, instead of mixed upper and lower case, add the following definition to the HBX page code on your Web pages somewhere between the labels //OPTIONAL PAGE VARIABLES and //END EDITABLE SECTION

hbx.lc="y";

Tagging URLs With Purchased Keyword / Outlet Information

HBX customers with Bid benefit from the analysis of keywords and keyword advertisements purchased from outlets integrated into HBX. Bid seamlessly handles the management of details related to keywords and outlets.

HBX customers without Bid can also profit from reports in the Typed Keywords, Purchased Keyword and Outlets reports, and other related Acquisition Sources reports. If you do not have Bid, you tag the URL with information on the typed keyword, purchased keyword, and outlet. You only tag URLs containing campaign information, specifically a keyword network campaign (KNC or KNL campaign).

Note that an HBX customer who has a Bid account should use this technique to track keywords for outlets not yet supported by Bid. Currently Google and Miva are supported by Bid.

To use this feature, identify the landing page for your KNC or KNL campaign. Then add name-value pairs corresponding to the typed or purchased keywords, as well as the outlet ID associated with the keyword. Values added must be added to the URL query string for the landing page. The query string parameters are HBX_PK for the purchased keyword and HBX_OU for the outlet ID, respectively. Note that these parameters are uppercase only.

For example, if the landing page of the KNC campaign KNC-1002003004 for your Website http://www.obilepurom.com is Order_Info.php?osCsid=152383, and the keyword you wish to track is mobile phone associated with the outlet ID 50 (google.com), and the campaign ID is KNC-199299399 then set the landing page URL to

Page 241: Hitbox Installation Guide

| PageA-37

http://www.obilepurom.com/Order_Info.php?osCsid=152383&CMP=KNC-199299399&HBX_PK=mobile phone&HBX_OU=60.

You can send any string value for the HBX_PK parameter, but only the outlet IDs identified by HBX are accepted as valid values for the HBX_OU parameter.

Note that in the past HBX extracted the paid keyword for KNC or KNL campaigns by parsing relevant information from the referring URL. Depending on the outlet and the keyword query parameter found in the URL, HBX then identified the keyword automatically. Now, HBX will look first for a value associated with the HBX_PK query parameter you have attached to the page URL for the paid keyword. If no value is found, then HBX attempts to extract the keyword from the referring URL.

HBX cannot however always track keywords from a referring URL. In particular, new search engines or outlets may not yet be recognized by HBX. Another case is if the outlet does not use a conventional search query parameter.

In these cases where the keyword is not extracted automatically, the most reliable tracking approach is to attach the HBX_PK query parameters to the page URL for the paid or typed keyword.

Shortcut Notations and Convenience Functions

The HBX shortcut notations and convenience functions allow you to manipulate information associated with the query string, cookie, or referrer.

Several shortcut notations are available. In each case, the shortcut notation is prepended to the value assigned to the page code variable. You can also set and store a value into a first-party cookie with the convenience function _hbCookie. In the HBX page code, this shortcut notation is valid in both the editable and custom events sections.

SHORTCUT NOTATION _P::

The general syntax of the shortcut is:

<query_string_parameter>";

where hbx.variable is most often one of the following variables:

hbx.cmp hbx.dcmp hbx.gp hbx.hra

and

<query_string_parameter> is a parameter passed in the query string for the page URL. This parameter can be: campaign dynamic_campaign campaign_goal or response_attribute

where

campaign is the name portion of the name-value pair in the query string, where the name is any alternate

string (other than cmp) that flags the presence of a campaign in the query, and value is the ID of the HBX campaign. When this name-value pair is present in the query string, a response to the campaign is triggered.

dynamic_campaign is the name portion of the name-value pair in the query string, where the name is any

string (other than dcmp) that flags the presence of a dynamic campaign in the query, and value is the ID of the HBX dynamic campaign. When this name-value pair is present in the query string, a response to the dynamic campaign is triggered.

Page 242: Hitbox Installation Guide

| PageA-38

campaign_goal is the name portion of the name-value pair in the query string, where the name is any string

(other than gp) that flags the presence of a campaign ID in the query, and value is the ID of the HBX campaign. When this name-value pair is present in the query string, a conversion of the campaign is triggered (assuming that the campaign has received a prior response).

response_attribute is the name portion of the name-value pair in the query string, where the name is any

string that flags the presence of a response attribute for a campaign in the query, and value is the value of the response attribute. When this name-value pair is present in the query string, the value is attributed to the HBX campaign responded to in the query string.

Note The query must also contain an HBX campaign ID. If a campaign ID is not also present in the query string of the page URL, the value of the response attribute is not registered.

Note The _P:: notation can be extended to capture a query string value from the page URL and insert it as the value in any HBX page code variable.

Suppose the page query string is http://www.google.com/search?q=some+search+term To extract the value assigned to the keyword parameter in a query string (such as q) and assign that value to the custom 1 page code variable, define the hbx.c1 variable thus:

hbx.c1="_P::q"; The value dynamically inserted into the custom 1 variable is then some search term

When defining HBX page code variables with the shortcut notation, use a unique, case-sensitive alphanumeric value conforming to the rules listed in the Illegal Characters section. The name for the portion following the shortcut notation must not interfere with existing definitions of other query parameters, such as the ones listed in the Gateway Variables column.

EXAMPLES

hbx.cmp = "_P::campaign";

When implementing the alternate (dynamic) campaign query parameter method, suppose that the query string has &myStatic01=EMC-100200300 If the page code has hbx.cmp="_P::myStatic01"; then EMC-100200300 is inserted as the value of the hbx.cmp variable.

hbx.dcmp = "_P::dynamic_campaign";

Suppose that the query string has &myDynam01=BAC-100200300 If the page code has hbx.dcmp="_P::myDynam01"; then BAC-100200300 is inserted as the value of the hbx.dcmp variable.

hbx.gp = "_P::campaign_goal";

When implementing the alternate goal page query parameter method, suppose that the query string has &myGoal01=BAC-100200300 If the page code has hbx.gp="_P::myGoal01"; then BAC-100200300 is inserted as the value of the hbx.gp variable.

hbx.hra = "_P:response_attribute";

When tracking campaign response attributes from the page URL, suppose that the query string has ?pos=middle3 If the page code has hbx.hra="_P::pos"; then middle3 is inserted as the value of the

hbx.hra variable, taken from the query string of the current page.

SHORTCUT NOTATION _R::

The general syntax of the shortcut is:

hbx.variable = "_R::<query_string_parameter>";

Page 243: Hitbox Installation Guide

| PageA-39

where hbx.variable can be any HBX page code variable whose value is to be captured from the referring URL query string

and

<query_string_parameter> is the parameter to be passed in the query string.

EXAMPLES

hbx.hra = "_R:response_attribute";

When tracking campaign response attributes from the referring URL, suppose that the query string has ?pos=middle3 If the page code has hbx.hra="_R::pos"; then middle3 is inserted as the value of the

hbx.hra variable, taken from the query string of the referring page.

Note The query must also contain an HBX campaign ID. If a campaign ID is not also present in the referring URL query string, the value of the response attribute is not registered. The campaign ID cannot begin with KNC or KNL.

Note The _R:: notation can be extended to capture a query string value from the referring URL and insert it as the value in any HBX page code variable.

Suppose the referring URL query string is http://www.google.com/search?q=some+search+term To extract the value assigned to the keyword parameter in a query string (such as q) and assign that value to the custom 1 page code variable, define the hbx.c1 variable thus:

hbx.c1="_R::q"; The value dynamically inserted into the custom 1 variable is then some search term

SHORTCUT NOTATION _C::

The general syntax of the shortcut is:

hbx.variable = "_C::<first_party_cookie_ID>";

where hbx.variable can be any HBX page code variable whose value is to be captured from the first-party cookie

and

<first_party_cookie_ID> is the parameter to be passed in the query string

The _C:: notation can be used in conjunction with the first form of the _hbCookie() function.

EXAMPLE

When you wish to insert information into the first-party cookie, define one of the event interfaces as a JavaScript function in the page code. This function is triggered during the visitor's initial landing on the page.

function _hbOnPrePV() { if(hbx.cmp != "") { _hbCookie("HBX_CMP" hbx.cmp); }

Page 244: Hitbox Installation Guide

| PageA-40

The event interface in the function checks the condition in the function just before the page view request is sent to HBX. The condition says that if hbx.cmp is undefined in the page code, then nothing happens. If hbx.cmp is defined in the page code, then take the campaign ID and associate it with the HBX_CMP tag and put both into the first-party cookie. On the goal page, define hbx.gp = "_C:HBX_CMP"; When the visitor lands on the goal page, the campaign ID in the cookie with the HBX_CMP tag is extracted. The hbx.gp variable then takes the value of that campaign ID.

SHORTCUT NOTATION _D::

The general syntax of the shortcut is:

hbx.variable = "_D::<first_party_cookie_ID>";

where hbx.variable can be any HBX page code variable.

and

<first_party_cookie_ID> is the parameter to be passed in the query string that specifies the cookie ID to be deleted.

The _D:: notation can be used in conjunction with the second form of the _hbCookie() function.

EXAMPLE

Suppose you wish to control persistence of information in the HitBox cookie so that cookie information is kept only until needed. To do this, create a cookie using the _hbCookie() function. Then define any HBX page code variable with the desired information, and prepend _D:: After the HBX JavaScript reads the value of this variable in the cookie, the cookie is deleted.

<script language="javascript"> _hbCookie("keyword", "mySearchKeyword","04-Mar-2009"); </script> ... hbx.hc1 = "_D::keyword";

Page 245: Hitbox Installation Guide

| PageA-41

A HitBox cookie is created via JavaScript. The cookie has the name keyword. The cookie has two values:

mySearchKeyword and 04-Mar-2009. On the same HBX page, the hbx.hc1 variable (custom metric 1) is defined. When HBX processes the page on which the hbx.hc1 variable is defined, it identifies the cookie named

keyword and then deletes it.

_HBCOOKIE FUNCTION

This function has two primary forms.

The first form has this syntax:

_hbCookie("cookie_ID", hbx.variable);

where cookie_ID is the string identifying the tag in the cookie and hbx.variable is any HBX page code variable whose value is associated with the cookie_ID

This form of the function creates a HitBox cookie that associates a cookie tag with an HBX page code variable and is typically used along with the _C:: notation.

Review the example for the shortcut notation _C:: as the standard implementation of this form of the _hbCookie() function.

The second, more generalized form contains additional parameters with this syntax:

_hbCookie('cookie_ID', 'value1', 'cookie_expiration_date');

where cookie_ID is the string identifying the cookie, value1 is the value associated with cookie_ID, (typically a string value), and cookie_expiration_date is the date of the cookie expiration.

This form of the function creates a HitBox cookie with specific values and is typically used along with the _D:: notation.

Review the example for the shortcut notation _D:: as one implementation of this form of the _hbCookie() function.

Event Interfaces

The information on this page is intended for advanced implementations only. It involves creating a

custom hbx.js file. Consult with your Omniture Accounts Manager prior to modifying the hbx.js file.

Every time a visitor interacts with properly implemented pages on your Web site, the HBX page code calls the hbx.js file. This file provides nearly all of the functionality required to track visitor interaction. The hbx.js file also exposes more specialized micro-analytic datapoints, not normally available by setting HBX page code variables. You can implement JavaScript functions in the hbx.js file to take advantage of the information generated at these datapoints. The interface functions in the table are triggered upon the execution of specific events in the file, or at some point in the generation or execution of the page view request.

When implementing an event interface function, place the code and function definition in the section of the hbx.js marked /* INSERT CUSTOM EVENT CODE HERE */. Simple examples of the use of these functions follow.

You must pass a parameter to all of these functions by default, with the exception of _hbOnPrePVR, which takes no parameters.

Tip

Tip

Page 246: Hitbox Installation Guide

| PageA-42

EVENT INTERFACE FUNCTION NAME

TRIGGERED OBJECT PASSED

NOTES

_hbOnError(errorObj) when a JavaScript error event occurs in the hbx.js file

error to test this function in Internet Explorer, go to Advanced Options > Disable Script Debugging

_hbOnLink(linkObj) when a link click event occurs in the hbx.js file

link no link object is created if hbx.lt=""; requires hbx.lt="auto"; or hbx.lt="manual"; or hbx.lt="pos";

_hbOnExitLink(linkObj) when an exit link event occurs in the hbx.js file

link no link object is created if hbx.lt=""; requires hbx.lt="auto"; or hbx.lt="manual"; or hbx.lt="pos";

_hbOnFormComplete(formObj) when a form completion event occurs in the hbx.js file

form

_hbOnFormAbandon(formObj) when a form abandon event occurs in the hbx.js file

form

_hbOnDownload(downldObj) when a download event occurs in the hbx.js file

download

_hbOnPrePVR(requestString) immediately before the page view request is constructed

request string

_hbOnPrePV(requestString) immediately before the page view request is sent

request string

Page 247: Hitbox Installation Guide

| PageA-43

to the gateway

_hbOnPostPV() immediately after the page view request is sent

none

Examples

Examples 1 through 4 assume that you have enabled link tracking in the HBX page code by changing the value of the hbx.lt variable.

Example 1 - Hello World

This tests that a link click occurred in the page code.

function _hbOnLink(linkObj) { alert('Hello World! you are inside _hbOnLink'); }

Example 2

This sets the value of custom metric c1 when a link is clicked.

function _hbOnLink(linkObj){ _hbSet('c1', 'A link was clicked'); }

Example 3

This sets the second dimension of the custom metric variable c2 when an exit link is clicked. The link must be manually tagged as Partner. The value of the custom metric is set to the page name as the first dimension and the hostname as the second dimension.

function _hbOnExitLink(linkObj) { if(linkObj.lid == "Partner") { hbSet('c2', hbx.pn + "|" + location.hostname); } }

Example 4

This example allows you to manually tag links without actually tagging them. It assumes that the link has a distinctive feature to indicate the links to be tagged.

function _hbOnPrePVR(){ var _searchPos = 1; for(i=0;i < document.links.length; i++) { var _l = document.links[i]; _lv.id = ""; _lv.lpos = ""; if(_l.indexOf("search?") != -1) { _lv.id += _l.innerText + ","; _lv.pos += searchPos + ","; searchPos++; } } }

Page 248: Hitbox Installation Guide

| PageA-44

Example 5

Read details about implementing the event interface _hbOnPrePV() along with _hbCookie and the _C:: shortcut notation.

Gateway Variables

The following table shows all gateway variables currently in HBX and HBX commerce. It also indicates HBX page code variables with no gateway variable equivalents and gateway variables with no HBX page code equivalents.

HBX PAGE CODE

VARIABLE GATEWAY

VARIABLE DEFINITION

POSSIBLE

VALUES NOTES

hbx.acct hb ACCOUNT NUMBER INTERNAL USE ONLY

hbx.pn n PAGE NAME

hbx.mlc vcon MULTI-LEVEL CONTENT

hbx.seg seg POPULATION GROUP

hbx.cmp cmp CAMPAIGN ID

hbx.gp gp GOAL PAGE ALSO IN HBX COMMERCE

hbx.fnl fnl FUNNEL ID

hbx.pec pec PAGE ERROR CODE

hbx.dcmp dcmp DYNAMIC CAMPAIGN ID

hbx.dcmpre dcmpre DYNAMIC CAMPAIGN

RESPONSE EXPIRATION

hbx.dcmpe dcmpe DYNAMIC CAMPAIGN

EXPIRATION

hbx.hra ra CAMPAIGN RESPONSE

ATTRIBUTE

hbx.hcn gn CAMPAIGN CONVERSION

Page 249: Hitbox Installation Guide

| PageA-45

ATTRIBUTE

hbx.hlt ld CAMPAIGN LEAD

TRACKING

ALSO IN HBX COMMERCE

hbx.hla la CAMPAIGN LEAD

ATTRIBUTE

ALSO IN HBX COMMERCE

hbx.hcv cv CAMPAIGN

CONVERSION VALUE

ALSO IN HBX COMMERCE

hbx.cp cp LEGACY CAMPAIGN ID FOR HBX COMMERCE

hbx.hc1

c1

or cv.c1

CUSTOM METRIC 1

hbx.hc2

c2

or cv.c2

CUSTOM METRIC 2

hbx.hc3

c3

or cv.c3

CUSTOM METRIC 3

hbx.hc4

c4

or cv.c4

CUSTOM METRIC 4

hbx.ci customerid CUSTOMER ID ALSO IN HBX COMMERCE

hbx.vpc vpc HBX PAGE CODE

VERSION INTERNAL USE ONLY

hbx.lt tt LINK ANALYSIS MODE INTERNAL USE ONLY

hbx.rf rf INDICATES CUSTOM

REFERRER

cname.id cname.id ID ASSOCIATED WITH

CNAME CNAME IS THE NAME OF

THE USER-DEFINED

Page 250: Hitbox Installation Guide

| PageA-46

CUSTOM EVENT

cname.value cname.value VALUE ASSOCIATED

WITH CNAME

CNAME IS THE NAME OF THE USER-DEFINED

CUSTOM EVENT

cnv.id cnv.id CUSTOM CONVERSION

ID

cnv.value cnv.value CUSTOM CONVERSION

VALUE

lv.lpos

GATEWAY VARIABLES WITH NO HBX PAGE CODE EQUIVALENTS

GATEWAY VARIABLE DEFINITION POSSIBLE

VALUES NOTES

lid LINK ID

lpos LINK TRACKING POSITION

lv.id LINK VIEW AND LINK ID LIST

COMMA-SEPARATED IDS

lv.lpos LINK VIEW AND LINK POSITION LIST

COMMA-SEPARATED IDS

ttt LINK TRACKING TOKEN

INTERNAL USE ONLY

el EXIT LINK

sf INDICATES FORM COMPLETION

lf INDICATES FORM ABANDONMENT

VALUE IS LAST FORM FIELD WITH FOCUS

Page 251: Hitbox Installation Guide

| PageA-47

fn INDICATES DOWNLOAD

search.keyword INTERNAL SEARCH KEYWORD

search.attr1

through search.attr4

INTERNAL SEARCH ATTRIBUTES

hec PAGE VIEW STATUS

HEC=0 INDICATES NEW PAGE

VIEW HEC=1

INDICATES INTRA-PAGE

REQUEST

INTERNAL USE ONLY

err ERROR FLAG

JS ERROR OCCURS ON PAGE POST

LOAD

INTERNAL USE ONLY

m.f NAME OF TRACKED MEDIA FILE

m.cp

CURRENT POSITION OF TRACKED MEDIA FILE

IN MILLISECONDS

m.ep END POSITION OF TRACKED MEDIA FILE

IN MILLISECONDS

m.s MEDIA STATE

PLAY PAUSE STOP PLAYP

m.cl MEDIA PLAYER TYPE

Page 252: Hitbox Installation Guide

| PageA-48

m.cv MEDIA CLIENT VERSION

AVAILABLE ONLY FOR QUICKTIME AND REALPLAYER

m.tt MEDIA TRACKING TYPE

I = INTERVAL TRACKING E = EVENT TRACKING

pu PAGE URL 200 CHARACTER MAXIMUM

HBX PAGE CODE VARIABLES WITH NO GATEWAY VARIABLE EQUIVALENTS

PAGE CODE

VARIABLE DESCRIPTION

hbx.pndef DEFAULT PAGE NAME

hbx.ctdef DEFAULT CONTENT CATEGORY

hbx.cpd CAMPAIGN DOMAIN

hbx.elf EXIT LINK FILTERING

hbx.gn GATEWAY NAME

hbx.mn MACHINE NAME

hbx.cgn COMMERCE GATEWAY

hbx.epg EVENT GATEWAY TOGGLE

hbx.dft DOWNLOAD FILE NAME DISPLAY TOGGLE

hbx.fv FORM VALIDATION

Page 253: Hitbox Installation Guide

| PageA-49

HBX COMMERCE PAGE CODE

COMMERCE

EVENT PAGE CODE

VARIABLE GATEWAY VARIABLE DEFINITION

POSSIBLE

VALUES NOTES

CARTADD hbx.cam cam CART ADD METHODOLOGY

CAM = 0 INDICATES HIGHWATERMARK CAM = 1 INDICATES INCREMENTAL

CARTADD ITEMVIEW

hbx.pv pv PRODUCT VIEW FLAG

PV = 0 INDICATES CART ADD

PV = 1 INDICATES PRODUCT VIEW

CARTADD CHECKOUT

n/a abd_type EVENT TYPE ABD_TYPE = CART_ADD ON CART ADD PAGES ABD_TYPE = CHECKOUT ON CHECKOUT PAGES ABD_TYPE = ORDER ON ORDER PAGES

ORDER n/a event=true EVENT FLAG EVENT = TRUE ON ORDER

ORDER n/a eid=1 EVENT ID FLAG EID = 1 ON ORDER

ORDER hbx.ci customerid CUSTOMER ID ALSO IN HBX

ORDER hbx.oi orderid ORDER ID

ORDER hbx.sy shipcity SHIP CITY

ORDER hbx.sa shipstate SHIP STATE

ORDER hbx.sz shipzipcode SHIP ZIP

ORDER hbx.so shipcountry SHIP COUNTRY

ORDER hbx.pt paymenttype PAYMENT TYPE

ORDER CARTADD ITEMVIEW

hbx.pr product CART PRODUCT

Page 254: Hitbox Installation Guide

| PageA-50

CHECKOUT

ORDER CARTADD CHECKOUT

hbx.qn quantity PRODUCT QUANTITY

ORDER ITEMVIEW

hbx.bd brand PRODUCT BRAND

ORDER ITEMVIEW

hbx.ca category PRODUCT CATEGORY

ORDER CHECKOUT

hbx.st shippingtype SHIPPING TYPE

ORDER CHECKOUT

hbx.sp shipping SHIPPING PRICE

ORDER CARTADD CHECKOUT

hbx.pc price PRODUCT PRICE

ORDER CARTADD CHECKOUT

hbx.sr store STORE

ORDER hbx.sk sku SKU

ORDER hbx.cu customer_type CUSTOM TYPE

ORDER hbx.ds discount DISCOUNT

ORDER hbx.po promotion PROMOTION

ORDER hbx.c1 li_custom1 CUSTOM METRIC 1

ORDER hbx.c2 li_custom2 CUSTOM METRIC 2

ORDER CARTADD ITEMVIEW CHECKOUT

hbx.cacct aid COMMERCE ACCOUNTID

Page 255: Hitbox Installation Guide

| PageA-51

CHECKOUT CARTADD

hbx.cv cv CONVERSION VALUE

ORDER CHECKOUT CARTADD

hbx.gp gp GOAL NAME ALSO IN HBX

ORDER CHECKOUT

hbx.hla la LEAD ATTRIBUTE ALSO IN HBX

ORDER CHECKOUT

hbx.hlt ld LEAD TRACKING ALSO IN HBX

Page 256: Hitbox Installation Guide

| PageA-52

Overriding the Default Protocol

The hbx.protocol variable allows you to specify how the Web page with HBX page code is posted. The hbx.protocol variable has only two values:

http or https

If you have HBX page code implemented on a secure page (https://myexample.com) and wish to send the HBX information over a non-secure connection (to avoid client-side browser security errors, for example), you can set the value of the hbx.protocol thus:

hbx.protocol="http";

This instructs HBX to ignore the secure protocol associated with the page, and instead to pass the information as non-secure, that is, as if the page were http

Conversely, if you have HBX page code implemented on a non-secure page (http://myexample.com) and wish to send the HBX information over a secure connection (again, to avoid client-side browser security errors), you can set the value of the hbx.protocol thus:

hbx.protocol="https";

This instructs HBX to ignore the non-secure protocol associated with the page, and instead to pass the information as secure, that is, as if the page were https

Coding Custom Metrics Variables to Track RSS Feeds and Podcasts

You can track how often visitors download RSS feeds and podcasts. Both of these are pull methods of publishing files to the Internet. Users subscribed to the feed or podcast receive latest content automatically.

An RSS (Really Simple Syndication) feed is also known as Web feed. An RSS feed is used to deliver Web content, often for syndicating news or entertainment or for notifying of updates to a site. Your visitors receive an RSS feed via a newsreader or content aggregator. An RSS feed is formatted as an XML document with sections that list meta-data and links to the updated content.

A podcast is a digital recording of a radio broadcast, available on the Web as an audio file and downloadable to a digital music player.

To track RSS feeds and podcasts, use the HBX custom metrics variables, and the on-line method. For example, if you make an RSS feed (XML file) or podcast available on a page, you can see how visitors download the feed name.

Only the on-line method (URL query string method) is available for tracking visitor downloads of RSS feeds and podcasts. You cannot modify the HBX page code to track this information.

First define the name of the custom metric in the Site Tools and Reporting > Administration > Account Administration page. For example, you may name custom metric 1 as RSS Feeds.

Every time a visitor clicks on a link to download an RSS feed from your site, send the following request to track the download:

http://HGNAME/redirector?hb=ACCT&cv.c1=CUSTOM_VARIABLE&cd=1&hec=1&vjs=HBX0201R&hbx.sid=SESSION_ID&target=REDIRECT_HOST

Explanation of the fields in the URL

Tip

Page 257: Hitbox Installation Guide

| PageA-53

HGNAME This is the name of the machine associated with your HBX account. Look for this value in the HBX page code on any of your site pages. At the top of the Omniture section of code, you see hbx.gn="ehg-<mycompany>.hitbox.com"; HGNAME is the value of this variable.

If you are a first-party cookie customer, the value of the hbx.gn variable does not contain hitbox.

redirector is an Omniture script specifically for processing RSS feeds and podcasts.

ACCT This is your HBX account ID.

cv.c1 is the first of several custom metrics variables available to track information. cv.c1 is the form this variable takes in the URL, while hbx.hc1 is the form used in the HBX page code.

By default, HBX makes four custom variables available. For access to more custom variables, please contact your Omniture Accounts Manager.

CUSTOM_VARIABLE This is the value of the custom metrics variable. If you set custom metric 1 as RSS Feeds, the value of the custom variable is the name of the actual feed. For example, if the feed URL is http://www.eatoutalot.com/reviews/restaurants.xml then enter cv.c1=restaurants.xml This is the value that will be displayed in the custom metric when a visitor downloads the xml file. If you use more than one custom metric, each subsequent metric is numbered sequentially: cv.c2, cv.c3, and so forth. Note that you can also pass a second dimension in the custom variable. Review this section on coding custom dimensions if implementing this function.

&cd=1&hec=1&vjs=HBX0201R These are required elements of the string.

SESSION_ID This is a unique identifier for each request or grouped request based on your visitors that sign up to your RSS feed download service. The value must be a unique positive integer, 15 characters or less. It is optional. You must generate and insert the session ID if you wish to use this parameter.

REDIRECT_HOST This is the target host name that Omniture sends the visitor to after downloading the RSS feed. Typically, this will be a confirmation or thank you page that acknowledges the user's download of the feed or podcast. The field must be URL-encoded. That is, you cannot enter :// Instead, enter %3A%2F%2F

Example:

http://we103.hitbox.com/redirector?hb=DM100200300400&cv.c1=restaurants.xml&cd=1&hec=1&vjs=HBX0201R&hbx.sid=3425543213242&target=http%3A%2F%2Fwww.myspace.com%2Fthank_you.cfm

When this visitor downloads the restaurants.xml RSS feed, that feed is incremented by one visit in your custom metrics 1, RSS Feeds. In addition, this visitor is tied to session ID 3425543213242 and the visitor lands on the thank_you.cfm page following the download.

Tracking an HBX Variable via the Online Method

You can insert any HBX page code variable and its value in the URL as a quick alternative to changing existing variable definitions in the HBX page code. For a complete list of HBX variables refer to the Summary of HBX Page Code and Campaign Variables and the Summary of HBX commerce module variables.

This method applies equally to any variables defined by an _hbEvent. The syntax for the HBX variable in the URL is hbx.eventtype.attribute

Tip

Tip

Page 258: Hitbox Installation Guide

| PageA-54

For example, if you define a campaign event in the page code of your site and one attribute of the campaign event is attr1, thus:

var campaign = _hbEvent("cmp"); campaign.c1 = "downy";

you can now reference the attr1 attribute of the campaign event in the URL with this notation:

&hbx.cmp.c1=downy

This notation can be used also for search keywords. If you have defined search events in pages of your site with the following code:

var ev1 = _hbEvent("search"); ev1.keywords = "parka"; ev1.results = "1"; ev1.attr1 = "winter";

you can now send a URL in the following form to count matches for the term parka:

http://www.bigkinsite.com/internalsrch.html?hbx.search.keywords=parka&hbx.search.results=1&hbx.search.attr1=winter

Developers can use this powerful method to send customer ID, population group ID, and custom referrer information to HBX without changing page code. In addition, during testing of an HBX implementation, requests can be sent to production sites where hbx.acct=DEVELOPMENTACCOUNT.

For example, if you wish to define the hbx.hc1 (Custom Metric 1) variable without modifying the HBX page code, simply insert in a URL as a name-value pair hbx.hc1 and its value, where the name and the value are connected with the equal sign. Suppose that the Web site is www.overthetop.com. If the value of the variable

is parsnips, the URL would take the following form:

http://www.overthetop.com/view/index.html?hbx.hc1=parsnips

When clicked, the URL leads to the index page of the site's view folder.

Note that while you can in theory define every HBX page code variable via the URL, it is suggested that this feature be used only for certain commonly changed variables, such as variables connected with campaigns, search keywords, or customer IDs.

The online method should not be used for all editable page code variables for two reasons:

First, certain browsers have character length limitations for URLs. For example, Microsoft Internet Explorer is limited to 2048 characters.

Secondly, if information passed in URLs is not absolutely consistent, the chances are increased that HBX reports are skewed by spurious data.

Page 259: Hitbox Installation Guide

The Leader in On-Demand Web Analytics | PageB-1

Appendix B: hbx.asp

<% 'File: hitboxe.asp 'Description: This file is used to auto insert HBX code into ASP pages. 'Notes: You must define the AccountID variable in the pages that reference this file. IF ISEMPTY(PageName) THEN PageName = "PUT+PAGE+NAME+HERE" END IF IF ISEMPTY(ContentCategory) THEN ContentCategory = "CONTENT+CATEGORY" END IF IF ISEMPTY(AccountID) THEN Err.Raise 500, "HBX", "You must define the AccountID variable." END IF %> <!-- OMNITURE CODE HBX2.0--> <!--COPYRIGHT 1996 - 2008. OMNITURE, INC. ALL RIGHTS RESERVED. U.S.PATENT No. 6,393,479B1 and 6,766,370. MORE INFO: http://www.omniture.com/privacy/ --> <script language="javascript"> //REQUIRED, NON-EDITABLE SECTION var _hbEC=0,_hbE=new Array;function _hbEvent(a,b){b=_hbE[_hbEC++]=new Object();b._N=a;b._C=0;return b;}var hbx=_hbEvent("pv");hbx.vpc="HBX0200u";hbx.gn="hg123"; //BEGIN EDITABLE SECTION //CONFIGURATION VARIABLES hbx.acct="<%=AccountID%>";//ACCOUNT NUMBER(S) hbx.pn="<%=PageName%>";//PAGE NAME(S) hbx.mlc="<%=ContentCategory%>";//MULTI-LEVEL CONTENT CATEGORY hbx.pndef="title"; hbx.ctdef="full"; //REMAINING VARIABLES ARE ALL OPTIONAL //ACTION SETTINGS hbx.fv="";//FORM VALIDATION MINIMUM ELEMENTS OR SUBMIT FUNCTION NAME hbx.lt="manual";//LINK TRACKING hbx.dlf="n";//DOWNLOAD FILTER hbx.dft="n";//DOWNLOAD FILE NAMING hbx.elf="n";//EXIT LINK FILTER //POPULATION GROUPS AND FUNNELS hbx.seg="";//POPULATION GROUPS hbx.fnl="";//FUNNELS //CAMPAIGNS hbx.cmp="";//CAMPAIGN ID hbx.dcmp="";//DYNAMIC CAMPAIGN ID hbx.dcmpe="";//DYNAMIC CAMPAIGN EXPIRATION IN YYYY:MM:DD FORMAT QUERY OR VALUE hbx.dcmpre="";//DYNAMIC CAMPAIGN RESPONSE EXPIRATION IN YYYY:MM:DD FORMAT QUERY OR VALUE hbx.hra="";//RESPONSE ATTRIBUTE hbx.hlt="";//LEAD TRACKING hbx.hla="";//LEAD ATTRIBUTE hbx.gp="";//CAMPAIGN GOAL hbx.hcn="";//CONVERSION ATTRIBUTE hbx.hcv="";//CONVERSION VALUE hbx.cp="null";//LEGACY CAMPAIGN hbx.cpd="";//CAMPAIGN DOMAIN //CUSTOM VARIABLES hbx.ci="";//CUSTOMER ID

Page 260: Hitbox Installation Guide

The Leader in On-Demand Web Analytics | PageB-2

hbx.hc1="";//CUSTOM 1 hbx.hc2="";//CUSTOM 2 hbx.hc3="";//CUSTOM 3 hbx.hc4="";//CUSTOM 4 hbx.hrf="";//CUSTOM REFERRER hbx.pec="";//ERROR CODES //INSERT CUSTOM EVENTS //END EDITABLE SECTION //REQUIRED SECTION. CHANGE "YOURSERVER" TO VALID LOCATION ON YOUR WEB SERVER (HTTPS IF FROM SECURE SERVER) </script><script language="javascript1.1" src="http://YOURSERVER/hbx.js"></script> <!--END OMNITURE CODE-->

Page 261: Hitbox Installation Guide

| PageC-1

Appendix C: Simple ASP Example

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head> <title>Simple ASP HBX Example</title> </head> <body> This page is an example that demonstrates a simple method of incorporating HBX code into a dynamic environment using Active Server Pages. <P> This is the HTML or text of your page. </P> <!-- Use the code below to automatically insert HBX--> <% PageName = "Test Page" ContentCategory = "Test Content Category" AccountID = "YOUR ACCOUNT NUMBER" MachineName = "YOUR MACHINE NAME" %> <!--#include file = "hbx.asp"--> </body> </html>

Page 262: Hitbox Installation Guide

| PageD-1

Appendix D: Advanced ASP Example

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head> <title>Advanced ASP HBX Example</title> </head> <body> This page is an example that demonstrates a more advanced method of incorporating HBX code into a dynamic environment using Active Server Pages. Any variables that are available to your ASP page can be used to define the page name and content category. In this example, the page name and content category are passed in the URL of the document, such as: "http://www.yoursite.com/ASP_Example_Advanced.asp?pagename=testpage&content=testcontent"<br> If the page name and content categories are not defined the standard HBX defaults are used. <P> This is the HTML or text of your page. </P> <!-- Use the code below to automatically insert HBX--> <%PageName = Request.QueryString("pagename") ContentCategory = Request.QueryString("content") AccountID = "YOUR ACCOUNT NUMBER" MachineName = "YOUR MACHINE NAME" %> <!--#include file = "hbx.asp"--> </body> </html>

Page 263: Hitbox Installation Guide

| PageE-1

Appendix E: asp Example for Server-side Form Validation

This example assumes:

Page one (Form Submission) uses a table for entering a date via form

Page two test.asp, performs the form validation

The user has cookies enabled in the browser (in order to set session variables)

The Invalid_Date error code will be reported in the Error Pages statistic, triggered when the server-side validation script returns an error.

Form Submission page

<HTML> <HEAD> <!-- OMNITURE CODE HBX2.0--> <!--COPYRIGHT 1996 - 2008. OMNITURE, INC. ALL RIGHTS RESERVED. U.S.PATENT No. 6,393,479B1 and 6,766,370. MORE INFO: http://www.omniture.com/privacy/ --> <script language="javascript"> //REQUIRED, NON-EDITABLE SECTION var _hbEC=0,_hbE=new Array;function _hbEvent(a,b){b=_hbE[_hbEC++]=new Object();b._N=a;b._C=0;return b;}var hbx=_hbEvent("pv");hbx.vpc="HBX0200u";hbx.gn="hg123"; //BEGIN EDITABLE SECTION //CONFIGURATION VARIABLES hbx.acct="DM3000000EFGH";//ACCOUNT NUMBER(S) hbx.pn="Form+Submission";//PAGE NAME(S) hbx.mlc="CONTENT+CATEGORY";//MULTI-LEVEL CONTENT CATEGORY hbx.pndef="title"; hbx.ctdef="full"; //REMAINING VARIABLES ARE ALL OPTIONAL <!--snipped WSS Code --> //CUSTOM VARIABLES hbx.ci="";//CUSTOMER ID hbx.hc1="";//CUSTOM 1 hbx.hc2="";//CUSTOM 2 hbx.hc3="";//CUSTOM 3 hbx.hc4="";//CUSTOM 4 hbx.hrf="";//CUSTOM REFERRER hbx.pec="Invalid_Date";//ERROR CODES //END EDITABLE SECTION //REQUIRED SECTION. CHANGE "YOURSERVER" TO VALID LOCATION ON YOUR WEB SERVER (HTTPS IF FROM SECURE SERVER) </script><script language="javascript1.1" src="http://YOURSERVER/hbx.js"></script> <!--END OMNITURE CODE--> <TITLE>Form Submission</TITLE> </HEAD> <BODY> <TABLE border=0 width=500 > <TR><TD> <%

Page 264: Hitbox Installation Guide

| PageE-2

'ON THE FIRST TIME THAT THIS PAGE LOADS, SESSION("ERRORS") HAS NO VALUE AND SO 'EQUALS 0. ON SUBSEQUENT VISITS, SESSION("ERRORS WILL HAVE A VALUE OF 1 OR 'MORE IF ERRORS WERE MADE if Session("Errors")=0 then response.write "Please fill out the form" else 'ERRORS WERE MADE SO LIST THEM IN THE REST OF THE TABLE 'reset our error counter Session("Errors")="0" response.write "<BR>There are errors in your data. " & _ "Please make the following changes before " & _ "clicking the submit button:<br>" response.write"<TABLE border=0 width=' 400' align='center'>" 'THESE SESSION VARIABLES ARE SET IN THE SECOND PAGE ' IF THERE WERE ERRORS 'VALUE IS "F" If Session("badDate") = "T" then Response.write "<TR><TD><font color='red'>Date must be " & _ "in the format mm/dd/yyyy. </font>" Response.write "</TD></TR>" Session("badDate")="F" End If 'END THE ERRORS TABLE response.write "</TD></TR></TABLE>" End If %> <!--START THE FORM --> <FORM ACTION="test.asp" NAME="frmUser" METHOD="POST"> <!--FORM IS IN A TABLE TO ALIGN THE TEXTBOXES --> <TABLE ALIGN="" BORDER=0 ALIGN=""> <TR><TD align="right"> <B>Date </B></td><TD><INPUT TYPE="Text" NAME="SendDate" VALUE="<%=Session("CompletionDate") %>">&nbsp; <font color="blue">(mm/dd/yyyy)</font> </TD></TR> </TABLE> <!-- end table for data entry form --> <INPUT TYPE="Submit" VALUE="Submit">&nbsp;&nbsp;<INPUT TYPE="RESET"> </FORM> </TD></TR></TABLE> <!-- end table used for page alignment --> </BODY> </HTML>

test.asp

<% Session("CompletionDate")=Request("SendDate") if not IsDate(Request("SendDate")) then Session("badDate")="T" Session("Errors")=Session("Errors") + 1 end if if Session("Errors") > 0 then 'there were errors, so send back to form response.redirect "t1.asp"

Page 265: Hitbox Installation Guide

| PageE-3

else 'there were no errors, so do the update to the database and redirect to a thank you page response.redirect "thanks.asp" end if %>

Page 266: Hitbox Installation Guide

| PageF-1

Appendix F: ColdFusion Example for Server-side Form Validation

This example assumes:

The existence of a database "Zip Codes" of State Zip Codes associated with county names

The Invalid_Zip_Code error code will be reported in the Error Pages statistic, triggered when the server-side validation script returns an error.

<!-- OMNITURE CODE HBX2.0--> <!--COPYRIGHT 1996 - 2008. OMNITURE, INC. ALL RIGHTS RESERVED. U.S.PATENT No. 6,393,479B1 and 6,766,370. MORE INFO: http://www.omniture.com/privacy/ --> <script language="javascript"> //REQUIRED, NON-EDITABLE SECTION var _hbEC=0,_hbE=new Array;function _hbEvent(a,b){b=_hbE[_hbEC++]=new Object();b._N=a;b._C=0;return b;}var hbx=_hbEvent("pv");hbx.vpc="HBX0200u";hbx.gn="hg123"; //BEGIN EDITABLE SECTION //CONFIGURATION VARIABLES hbx.acct=" DM00000ABCDEF003";//ACCOUNT NUMBER(S) hbx.pn="PUT+PAGE+NAME+HERE";//PAGE NAME(S) hbx.mlc="CONTENT+CATEGORY";//MULTI-LEVEL CONTENT CATEGORY hbx.pndef="title"; hbx.ctdef="full"; //REMAINING VARIABLES ARE ALL OPTIONAL //ACTION SETTINGS hbx.fv="";//FORM VALIDATION MINIMUM ELEMENTS OR SUBMIT FUNCTION NAME hbx.lt="manual";//LINK TRACKING hbx.dlf="n";//DOWNLOAD FILTER hbx.dft="n";//DOWNLOAD FILE NAMING hbx.elf="n";//EXIT LINK FILTER //POPULATION GROUPS AND FUNNELS hbx.seg="";//POPULATION GROUPS hbx.fnl="";//FUNNELS //CAMPAIGNS hbx.cmp="";//CAMPAIGN ID hbx.dcmp="";//DYNAMIC CAMPAIGN ID hbx.dcmpe="";//DYNAMIC CAMPAIGN EXPIRATION IN YYYY:MM:DD FORMAT QUERY OR VALUE hbx.dcmpre="";//DYNAMIC CAMPAIGN RESPONSE EXPIRATION IN YYYY:MM:DD FORMAT QUERY OR VALUE hbx.hra="";//RESPONSE ATTRIBUTE hbx.hlt="";//LEAD TRACKING hbx.hla="";//LEAD ATTRIBUTE hbx.gp="";//CAMPAIGN GOAL hbx.hcn="";//CONVERSION ATTRIBUTE hbx.hcv="";//CONVERSION VALUE hbx.cp="null";//LEGACY CAMPAIGN hbx.cpd="";//CAMPAIGN DOMAIN //CUSTOM VARIABLES hbx.ci="";//CUSTOMER ID hbx.hc1="";//CUSTOM 1 hbx.hc2="";//CUSTOM 2 hbx.hc3="";//CUSTOM 3 hbx.hc4="";//CUSTOM 4

Page 267: Hitbox Installation Guide

| PageF-2

hbx.hrf="";//CUSTOM REFERRER hbx.pec="Invalid+Zip+Code";//ERROR CODES //INSERT CUSTOM EVENTS //END EDITABLE SECTION //REQUIRED SECTION. CHANGE "YOURSERVER" TO VALID LOCATION ON YOUR WEB SERVER (HTTPS IF FROM SECURE SERVER) </script><script language="javascript1.1" src="http://YOURSERVER/hbx.js"></script> <!--END OMNITURE CODE--> <CFQUERY name="GetCodes" datasource="Zip Codes"> SELECT DISTINCT Code FROM CountyCodes </CFQUERY> <FORM name="MyForm" action="zip.cfm" method="post"> <!---Choose a code:---> <SELECT name="Code"> <OPTION value="" SELECTED>(click down arrow) <OPTION value="#Code#">#Code# </SELECT> <INPUT type="submit" name="submit" value="Get County Name"> </FORM> <CFQUERY name="GetCodes" datasource="Zip Codes"> SELECT DISTINCT Code FROM CountyCodes </CFQUERY> <FORM name="MyForm" action="zip.cfm" method="post"> <!---Choose a code:---> <SELECT name="Code"> <OPTION value="" SELECTED>(click down arrow) <OPTION value="#Code#">#Code# </SELECT> <INPUT type="submit" name="submit" value="Get County Name"> </FORM>

Page 268: Hitbox Installation Guide

| PageG-1

Appendix G: VB.NET Example

The following examples written en VB.NET demonstrate methods for implementing HBX code in an ASP.NET environment.

This example uses four files:

The first file is a stand-alone file embedded with HBX page code. test1.aspx shows the most simple tagging of an asp.net page by dropping in the page code.

The second file hbxpagecode.ascx is the source for the user controls in the last two files. It wraps the HBX page code in the VB control language. In this example, the first five configurable variables are set to public properties. The other HBX variables can likewise be defined as public properties.

The last two files are user controls.

test2.aspx uses an asp.net user control that keeps the page code in a separate file (hbxpagecode.ascx). This example sets variables directly in the user control attributes

test3.aspx uses an asp.net user control like test2.aspx, but sets variables in the page_load event. It also references page code in the file hbxpagecode.ascx

test1.aspx

<%@ Page Language="VB" ContentType="text/html" ResponseEncoding="iso-8859-1" %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <title>Page Tag Example 1</title> </head> <body> <h1>Page Tag Example 1</h1> <p>This page is coded with simple drop in page tag. </p> <!-- OMNITURE CODE HBX2.0 (Universal)--> <!--COPYRIGHT 1996 - 2008. OMNITURE, INC. ALL RIGHTS RESERVED. U.S.PATENT No. 6,393,479B1 and 6,766,370. MORE INFO: http://www.omniture.com/privacy/--> <script language="javascript"> var _hbEC=0,_hbE=new Array;function _hbEvent(a,b){b=_hbE[_hbEC++]=new Object();b._N=a;b._C=0;return b;} var hbx=_hbEvent("pv");hbx.vpc="HBX0200u";hbx.gn="ehg.hitbox.com"; //BEGIN EDITABLE SECTION //CONFIGURATION VARIABLES hbx.acct="DM000111222333";//ACCOUNT NUMBER(S) hbx.pn="PUT+PAGE+NAME+HERE";//PAGE NAME(S) hbx.mlc="CONTENT+CATEGORY";//MULTI-LEVEL CONTENT CATEGORY hbx.pndef="title";//DEFAULT PAGE NAME hbx.ctdef="full";//DEFAULT CONTENT CATEGORY //OPTIONAL PAGE VARIABLES //ACTION SETTINGS hbx.fv="";//FORM VALIDATION MINIMUM ELEMENTS OR SUBMIT FUNCTION NAME hbx.lt="none";//LINK TRACKING hbx.dlf="n";//DOWNLOAD FILTER hbx.dft="n";//DOWNLOAD FILE NAMING hbx.elf="n";//EXIT LINK FILTER //SEGMENTS AND FUNNELS hbx.seg="";//VISITOR SEGMENTATION hbx.fnl="";//FUNNELS //CAMPAIGNS hbx.cmp="";//CAMPAIGN ID

Page 269: Hitbox Installation Guide

| PageG-2

hbx.dcmp="";//DYNAMIC CAMPAIGN ID hbx.dcmpe="";//DYNAMIC CAMPAIGN EXPIRATION hbx.dcmpre="";//DYNAMIC CAMPAIGN RESPONSE EXPIRATION hbx.hra="";//RESPONSE ATTRIBUTE hbx.hlt="";//LEAD TRACKING hbx.hla="";//LEAD ATTRIBUTE hbx.gp="";//CAMPAIGN GOAL hbx.hcn="";//CONVERSION ATTRIBUTE hbx.hcv="";//CONVERSION VALUE hbx.cp="null";//LEGACY CAMPAIGN hbx.cpd="";//CAMPAIGN DOMAIN //CUSTOM VARIABLES hbx.ci="";//CUSTOMER ID hbx.hc1="";//CUSTOM 1 hbx.hc2="";//CUSTOM 2 hbx.hc3="";//CUSTOM 3 hbx.hc4="";//CUSTOM 4 hbx.hrf="";//CUSTOM REFERRER hbx.pec="";//ERROR CODES //INSERT CUSTOM EVENTS //END EDITABLE SECTION //REQUIRED SECTION. CHANGE "YOURSERVER" TO VALID LOCATION ON YOUR WEB SERVER (HTTPS IF FROM SECURE SERVER) </script> <script language="javascript1.1" src="http://YOURSERVER/hbx.js"></script> <!--END OMNITURE CODE--> </body> </html>

hbxpagecode.ascx

<%@ Control Language="vb" %> <script language="VB" runat="server"> 'Add public properties and default settings here Public acct As String = "DM000111222333" Public pn As String = "PUT+PAGE+NAME+HERE" Public mlc As String = "CONTENT+CATEGORY" Public pndef AS String = "title" Public ctdef As String = "full" </script> <!-- OMNITURE CODE HBX2.0 (Universal)--> <!--COPYRIGHT 1996 - 2008. OMNITURE, INC. ALL RIGHTS RESERVED. U.S.PATENT No. 6,393,479B1 and 6,766,370. MORE INFO: http://www.omniture.com/privacy/--> <script language="javascript"> var _hbEC=0,_hbE=new Array;function _hbEvent(a,b){b=_hbE[_hbEC++]=new Object();b._N=a;b._C=0;return b;} var hbx=_hbEvent("pv");hbx.vpc="HBX0200u";hbx.gn="ehg.hitbox.com"; //BEGIN EDITABLE SECTION //CONFIGURATION VARIABLES hbx.acct="<%=acct%>";//ACCOUNT NUMBER(S) hbx.pn="<% =pn %>";//PAGE NAME(S) hbx.mlc="<% =mlc %>";//MULTI-LEVEL CONTENT CATEGORY hbx.pndef="<% =pndef %>";//DEFAULT PAGE NAME hbx.ctdef="<% =ctdef %>";//DEFAULT CONTENT CATEGORY //OPTIONAL PAGE VARIABLES //ACTION SETTINGS hbx.fv="";//FORM VALIDATION MINIMUM ELEMENTS OR SUBMIT FUNCTION NAME hbx.lt="none";//LINK TRACKING hbx.dlf="n";//DOWNLOAD FILTER hbx.dft="n";//DOWNLOAD FILE NAMING hbx.elf="n";//EXIT LINK FILTER //SEGMENTS AND FUNNELS hbx.seg="";//VISITOR SEGMENTATION hbx.fnl="";//FUNNELS

Page 270: Hitbox Installation Guide

| PageG-3

//CAMPAIGNS hbx.cmp="";//CAMPAIGN ID hbx.dcmp="";//DYNAMIC CAMPAIGN ID hbx.dcmpe="";//DYNAMIC CAMPAIGN EXPIRATION hbx.dcmpre="";//DYNAMIC CAMPAIGN RESPONSE EXPIRATION hbx.hra="";//RESPONSE ATTRIBUTE hbx.hlt="";//LEAD TRACKING hbx.hla="";//LEAD ATTRIBUTE hbx.gp="";//CAMPAIGN GOAL hbx.hcn="";//CONVERSION ATTRIBUTE hbx.hcv="";//CONVERSION VALUE hbx.cp="null";//LEGACY CAMPAIGN hbx.cpd="";//CAMPAIGN DOMAIN //CUSTOM VARIABLES hbx.ci="";//CUSTOMER ID hbx.hc1="";//CUSTOM 1 hbx.hc2="";//CUSTOM 2 hbx.hc3="";//CUSTOM 3 hbx.hc4="";//CUSTOM 4 hbx.hrf="";//CUSTOM REFERRER hbx.pec="";//ERROR CODES //INSERT CUSTOM EVENTS //END EDITABLE SECTION //REQUIRED SECTION. CHANGE "YOURSERVER" TO VALID LOCATION ON YOUR WEB SERVER (HTTPS IF FROM SECURE SERVER) </script><script language="javascript1.1" src="http://YOURSERVER/hbx.js"></script> <!--END OMNITURE CODE-->

test2.aspx

<%@ Page Language="VB" ContentType="text/html" ResponseEncoding="iso-8859-1" %> <%@ Register TagPrefix="hbx" TagName="pagecode" Src="hbxpagecode.ascx" %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <title>Page Tag Example 2</title> </head> <body> <h1>Page Tag Example2 </h1> <p>This page is coded using a basic user control, with variables set in the user control itself. </p> <hbx:pagecode id="hbxpagecode" acct="DM000111222333" pn="Page+Tag+Example+2+SetByUserControl" runat="server" /> </body> </html>

test3.aspx

<%@ Page Language="VB" ContentType="text/html" ResponseEncoding="iso-8859-1" %> <%@ Register TagPrefix="hbx" TagName="pagecode" Src="hbxpagecode.ascx" %> <script runat="server"> Sub Page_Load(Src As Object, E As EventArgs) 'set user control variables here. Make sure to reference id of your control hbxpagecode.acct = "DM000111222333" hbxpagecode.pn = "Page+Tag+Example3+SetByPageLoad" End Sub </script>

Page 271: Hitbox Installation Guide

| PageG-4

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <title>Page Tag Example 3</title> </head> <body> <h1>Page Tag Example 3 </h1> <p>This page is coded using a basic user control, with variables set in the page_load event. </p> <hbx:pagecode id="hbxpagecode" runat="server" /> </body> </html>

Page 272: Hitbox Installation Guide

| PageH-1 13 January 2008

Appendix H: HBX Page Coding Variables

Table formatted for printing landscape orientation with legal-size paper - 8.5 x 14 inches

VARIABLE IN

PAGE CODE

DESCRIPTION OF

VARIABLE

What purpose variable serves in page code

DEFAULT VALUE

Initial value assigned to variable in page code

EXAMPLES

DEPENDENCIES

What must exist before HBX can use this variable to track data

N/A = NO

DEPENDENCIES

VALUE LENGTH AND

CHARACTER TYPE

RESTRICTIONS

ILLEGAL PAGE CODE CHARACTERS

' " & ! # $ % ^ * : | \ / > < ~

;

CLASSIFICATION IN

HBX PAGE CODE

(EDITABLE / REQUIRED

/ OPTIONAL)

Refer to HBX Page Code section

WHEN ARE CHANGES

REQUIRED TO DEFAULT

VALUE IN PAGE CODE?

MULTIPLE ACCOUNTS BEHAVIOR

Refer to Advanced page coding section

Notes

hbx.pn

NAMES PAGE TO BE

DISPLAYED IN HBX

REPORTS

hbx.pn="PUT+PAGE+NAME+HERE";

hbx.pn="Gasket+Buyers+Goal+Page";

hbx.pn="Order+Confirmation";

N/A ALPHANUMERIC

CHARACTERS. PAGE

NAMES LONGER THAN

100 CHARACTERS

TRUNCATED (PER-

ACCOUNT).

EDITABLE

NOT REQUIRED, BUT

RECOMMENDED.

ONLY ONE PAGE NAME PER ACCOUNT PER

PAGE.

IN CERTAIN CASES, HBX LABELS THE

PAGE AS "UNKNOWN" IF

"PUT+PAGE+NAME+HERE" IS VALUE FOR

hbx.pn VARIABLE. SEE THE

<script></noscript> SECTION

IF HBX.PN NOT USED

TO (RE)NAME PAGES, THE HBX.PNDEF

VARIABLE HANDLES

PAGE NAMING. (SEE

HBX.PNDEF)

Page 273: Hitbox Installation Guide

| PageH-2 13 January 2008

VARIABLE IN

PAGE CODE

DESCRIPTION OF

VARIABLE

What purpose variable serves in page code

DEFAULT VALUE

Initial value assigned to variable in page code

EXAMPLES

DEPENDENCIES

What must exist before HBX can use this variable to track data

N/A = NO

DEPENDENCIES

VALUE LENGTH AND

CHARACTER TYPE

RESTRICTIONS

ILLEGAL PAGE CODE CHARACTERS

' " & ! # $ % ^ * : | \ / > < ~

;

CLASSIFICATION IN

HBX PAGE CODE

(EDITABLE / REQUIRED

/ OPTIONAL)

Refer to HBX Page Code section

WHEN ARE CHANGES

REQUIRED TO DEFAULT

VALUE IN PAGE CODE?

MULTIPLE ACCOUNTS BEHAVIOR

Refer to Advanced page coding section

Notes

hbx.mlc

IDENTIFIES THE MULTI-

LEVEL CONTENT

GROUP(S)

hbx.mlc ="CONTENT+CATEGORY";

hbx.mlc ="/French/Neon+Signs";

hbx.mlc ="/News/Columns/Editorial-01";

hbx.mlc = "ERROR";

hbx.mlc = "";

N/A ALPHANUMERIC

CHARACTERS.

CONTENT GROUPS

LONGER THAN 200

CHARACTERS

TRUNCATED (PER-

ACCOUNT).

EDITABLE

RECOMMENDED, BUT

NOT REQUIRED

WHEN TRACKING

MULTI-LEVEL CONTENT

GROUPS.

ONLY ONE CONTENT CATEGORY PER ACCOUNT

PER PAGE

CAN CREATE A HIERARCHY OF UP TO EIGHT

CONTENT LEVELS

IF DEFAULT TEXT "CONTENT+CATEGORY" IS

NOT CHANGED, HBX LABELS THE CONTENT

CATEGORY AS "/UNGROUPED"

SEE ERROR PAGE CODE IF HBX.MLC IS USED

TO TRACK MULTI-LEVEL

CONTENT, THE

HBX.CTDEF VARIABLE

ENABLES DISPLAY OF

FULL PATH OR CURRENT

DIRECTORY FOR

CONTENT GROUP

Page 274: Hitbox Installation Guide

| PageH-3 13 January 2008

VARIABLE IN

PAGE CODE

DESCRIPTION OF

VARIABLE

What purpose variable serves in page code

DEFAULT VALUE

Initial value assigned to variable in page code

EXAMPLES

DEPENDENCIES

What must exist before HBX can use this variable to track data

N/A = NO

DEPENDENCIES

VALUE LENGTH AND

CHARACTER TYPE

RESTRICTIONS

ILLEGAL PAGE CODE CHARACTERS

' " & ! # $ % ^ * : | \ / > < ~

;

CLASSIFICATION IN

HBX PAGE CODE

(EDITABLE / REQUIRED

/ OPTIONAL)

Refer to HBX Page Code section

WHEN ARE CHANGES

REQUIRED TO DEFAULT

VALUE IN PAGE CODE?

MULTIPLE ACCOUNTS BEHAVIOR

Refer to Advanced page coding section

Notes

hbx.seg

NAMES THE POPULATION

GROUP ID(S)

hbx.seg="";

hbx.seg="2";

hbx.seg="4,2";

hbx.seg="-2,4";

hbx.seg="++2,4";

hbx.seg="--2";

VALID POPULATION

GROUP ID(S)

CREATED IN THE

POPULATION GROUP

ADMINISTRATION

PAGE

USE ONLY NUMERIC

IDS ASSIGNED BY HBX

IN POPULATION GROUP

ADMINISTRATION

PAGE.

OPTIONAL

WHEN TRACKING

POPULATION GROUP.

MULTIPLE POPULATION GROUPS PER ACCOUNT

PER PAGE

MAXIMUM OF 20 POPULATION GROUPS PER

ACCOUNT

SEVERAL OPTIONS EXIST FOR ADDING,

REMOVING, EXCLUDING, AND REINITIALIZING

POPULATION GROUP LIST ON VISITOR'S

COOKIE. SEE POPULATION GROUP CODING

SECTION.

hbx.pndef

TOGGLES DEFAULT PAGE

NAME MODE

hbx.pndef="title";

hbx.pndef="title";

hbx.pndef="index.html"; (OR DEFAULT SERVER INDEX PAGE)

IF

<title>Order Confirmation</title>

...

hbx.pn="PUT+PAGE+NAME+HERE";

hbx.pndef="title";

HBX DISPLAYS PAGE AS

ORDER CONFIRMATION

N/A VALID VALUES FOR

THIS VARIABLE

INCLUDE

title

OR

DEFAULT NAME FOR A

SERVER PAGE FOR THE

INDEX

SUCH AS

index.html

home.html

EDITABLE

WHEN TRACKING PAGE

NAMES VIA THE HBX.PN

VARIABLE

ONLY ONE VALUE FOR HBX.PNDEF PER PAGE IS

POSSIBLE, REGARDLESS OF NUMBER OF

ACCOUNTS ON PAGE. IF MULTIPLE ACCOUNTS

DEFINED FOR PAGE, SAME DEFAULT PAGE

MODE IS APPLIED TO ALL PAGE NAMES

DEFINED IN HBX.PN

IF hbx.pndef SET TO "title" AND

hbx.pn IS "PUT+PAGE+NAME+HERE",

PAGE DISPLAYED IS THE NAME ENCODED

BETWEEN THE <title></title> TAGS.

IF hbx.pndef SET TO "title", hbx.pn

IS "PUT+PAGE+NAME+HERE", AND NO

NAME IS PUT IN <title></title>

Page 275: Hitbox Installation Guide

| PageH-4 13 January 2008

VARIABLE IN

PAGE CODE

DESCRIPTION OF

VARIABLE

What purpose variable serves in page code

DEFAULT VALUE

Initial value assigned to variable in page code

EXAMPLES

DEPENDENCIES

What must exist before HBX can use this variable to track data

N/A = NO

DEPENDENCIES

VALUE LENGTH AND

CHARACTER TYPE

RESTRICTIONS

ILLEGAL PAGE CODE CHARACTERS

' " & ! # $ % ^ * : | \ / > < ~

;

CLASSIFICATION IN

HBX PAGE CODE

(EDITABLE / REQUIRED

/ OPTIONAL)

Refer to HBX Page Code section

WHEN ARE CHANGES

REQUIRED TO DEFAULT

VALUE IN PAGE CODE?

MULTIPLE ACCOUNTS BEHAVIOR

Refer to Advanced page coding section

Notes

IF PUBLIC FILE NAME IS

/english/about/about.htm

AND

<title></title>

...

hbx.pn="PUT+PAGE+NAME+HERE";

hbx.pndef="title";

HBX DISPLAYS PAGE AS /ENGLISH/ABOUT/ABOUT.HTM

IF PUBLIC FILE NAME IS

/english/about

AND

<title></title>

...

hbx.pn="";

hbx.pndef="index.html";

HBX DISPLAYS PAGE AS

/english/about/index.html

HBX DISPLAYS PAGE AS /ENGLISH/ABOUT/INDEX.HTML

TAGS, PAGE DISPLAYED IS FILE NAME OF

SITE PAGE, ALONG WITH THE FULL

PUBLIC DIRECTORY PATH. IF hbx.pndef

IS SET TO "index.html" (FOR EXAMPLE)

AND hbx.pn IS "PUT+PAGE+NAME+HERE",

PAGE IS DISPLAYED "index.html",

ALONG WITH FILE NAME PATH

Page 276: Hitbox Installation Guide

| PageH-5 13 January 2008

VARIABLE IN

PAGE CODE

DESCRIPTION OF

VARIABLE

What purpose variable serves in page code

DEFAULT VALUE

Initial value assigned to variable in page code

EXAMPLES

DEPENDENCIES

What must exist before HBX can use this variable to track data

N/A = NO

DEPENDENCIES

VALUE LENGTH AND

CHARACTER TYPE

RESTRICTIONS

ILLEGAL PAGE CODE CHARACTERS

' " & ! # $ % ^ * : | \ / > < ~

;

CLASSIFICATION IN

HBX PAGE CODE

(EDITABLE / REQUIRED

/ OPTIONAL)

Refer to HBX Page Code section

WHEN ARE CHANGES

REQUIRED TO DEFAULT

VALUE IN PAGE CODE?

MULTIPLE ACCOUNTS BEHAVIOR

Refer to Advanced page coding section

Notes

hbx.ctdef

TOGGLES FULL DISPLAY

OF CONTENT CATEGORY

PATH

hbx.ctdef="full";

ONLY THESE TWO VALUES ARE VALID FOR THIS VARIABLE.

hbx.ctdef="full";

hbx.ctdef="current";

IF URL IS

http://abc.com/en/Neon/pic/open.htm

AND hbx.ctdef="full";

HBX DISPLAYS PAGE AS

/en/Neon/pic/open.htm

IF URL IS

http://abc.com/en/Neon/pic/open.htm

AND hbx.ctdef="current";

HBX DISPLAYS PAGE AS

/pic/open.htm

N/A ONLY TWO VALUES ARE

VALID FOR THIS

VARIABLE

full

current

EDITABLE

WHEN TRACKING

MULTILEVEL CONTENT

GROUPS

ONLY ONE VALUE FOR HBX.CTDEF PER PAGE

IS POSSIBLE, REGARDLESS OF NUMBER OF

ACCOUNTS ON PAGE. IF MULTIPLE ACCOUNTS

DEFINED FOR PAGE, SAME MODE IS APPLIED

TO URL FOR DISPLAYING PAGE NAME

Page 277: Hitbox Installation Guide

| PageH-6 13 January 2008

VARIABLE IN

PAGE CODE

DESCRIPTION OF

VARIABLE

What purpose variable serves in page code

DEFAULT VALUE

Initial value assigned to variable in page code

EXAMPLES

DEPENDENCIES

What must exist before HBX can use this variable to track data

N/A = NO

DEPENDENCIES

VALUE LENGTH AND

CHARACTER TYPE

RESTRICTIONS

ILLEGAL PAGE CODE CHARACTERS

' " & ! # $ % ^ * : | \ / > < ~

;

CLASSIFICATION IN

HBX PAGE CODE

(EDITABLE / REQUIRED

/ OPTIONAL)

Refer to HBX Page Code section

WHEN ARE CHANGES

REQUIRED TO DEFAULT

VALUE IN PAGE CODE?

MULTIPLE ACCOUNTS BEHAVIOR

Refer to Advanced page coding section

Notes

hbx.acct

IDENTIFIES YOUR HBX

ACCOUNT(S)

hbx.acct

="<DMyourAccountID>";

hbx.acct ="DM000111222";

hbx.acct ="DM000111222;DM0001123132";

N/A USE ONLY ACCOUNT

IDS ASSIGNED BY

HBX.

EDITABLE

DO NOT MODIFY

ACCOUNT NUMBER(S)

UP TO THREE ACCOUNTS PER PAGE,

SEPARATED BY SEMICOLON.

WHEN IMPLEMENTING HBX.MLC HBX.PN HBX.GP HBX.SEG HBX.FNL HBX.PEC HBX.FV VARIABLES ON ONE PAGE WITH

MULTIPLE ACCOUNTS, ACCOUNT LIST ORDER

IN HBX.ACCT MUST CORRESPOND TO ORDER

OF SEMI-COLON SEPARATED VALUES FOR

HBX.MLC HBX.PN HBX.GP HBX.SEG HBX.FNL HBX.PEC HBX.FV

hbx.pec

IDENTIFIES USER-

DEFINED ERROR

CODE(S)

hbx.pec="";

hbx.pec="Invalid+Zip+Code";

N/A UP TO 70

ALPHANUMERIC

CHARACTERS (PER-

ACCOUNT)

OPTIONAL

WHEN TRACKING PAGE

ERRORS.

ONLY ONE PAGE ERROR CODE PER ACCOUNT

PER PAGE.

VALUE OF HBX.PEC VARIABLE CAN BE SET TO

TRACK AN ESSENTIAL ATTRIBUTE/FEATURE OF

THE PAGE NOT COVERED BY HBX. SEE PAGE

ERROR CODING SECTION.

Page 278: Hitbox Installation Guide

| PageH-7 13 January 2008

VARIABLE IN

PAGE CODE

DESCRIPTION OF

VARIABLE

What purpose variable serves in page code

DEFAULT VALUE

Initial value assigned to variable in page code

EXAMPLES

DEPENDENCIES

What must exist before HBX can use this variable to track data

N/A = NO

DEPENDENCIES

VALUE LENGTH AND

CHARACTER TYPE

RESTRICTIONS

ILLEGAL PAGE CODE CHARACTERS

' " & ! # $ % ^ * : | \ / > < ~

;

CLASSIFICATION IN

HBX PAGE CODE

(EDITABLE / REQUIRED

/ OPTIONAL)

Refer to HBX Page Code section

WHEN ARE CHANGES

REQUIRED TO DEFAULT

VALUE IN PAGE CODE?

MULTIPLE ACCOUNTS BEHAVIOR

Refer to Advanced page coding section

Notes

hbx.fv

NAMES FORM

VALIDATION FUNCTION

hbx.fv="";

hbx.fv="myValidation";

AN INPUT FORM ON

THE PAGE

UP TO 70

ALPHANUMERIC

CHARACTERS (PER-

ACCOUNT)

OPTIONAL

WHEN TRACKING FORM

VALIDATION

ONE FORM PER ACCOUNT PER PAGE.

SEE FORM VALIDATION CODING SECTION.

IF VALUE IS SET TO N

OR N (HBX.FV="N"; OR HBX.FV="N";),

FORM ABANDONMENT

TRACKING CODE IS

DISABLED

IF NO VALUE IS

ASSIGNED TO HBX.FV,

HBX CAN STILL TRACK

SOME TYPES OF FORM

ABANDONMENT

Page 279: Hitbox Installation Guide

| PageH-8 13 January 2008

VARIABLE IN

PAGE CODE

DESCRIPTION OF

VARIABLE

What purpose variable serves in page code

DEFAULT VALUE

Initial value assigned to variable in page code

EXAMPLES

DEPENDENCIES

What must exist before HBX can use this variable to track data

N/A = NO

DEPENDENCIES

VALUE LENGTH AND

CHARACTER TYPE

RESTRICTIONS

ILLEGAL PAGE CODE CHARACTERS

' " & ! # $ % ^ * : | \ / > < ~

;

CLASSIFICATION IN

HBX PAGE CODE

(EDITABLE / REQUIRED

/ OPTIONAL)

Refer to HBX Page Code section

WHEN ARE CHANGES

REQUIRED TO DEFAULT

VALUE IN PAGE CODE?

MULTIPLE ACCOUNTS BEHAVIOR

Refer to Advanced page coding section

Notes

hbx.fnl

NAMES THE TAGGED

FUNNEL ID,FUNNEL

LEVEL PAIR(S)

hbx.fnl="";

hbx.fnl="(3,4)";

hbx.fnl="(3,5c)";

hbx.fnl="(3,4)|(2,2)";

VALID FUNNEL ID-

FUNNEL LEVEL PAIR(S)

CREATED IN THE

FUNNEL

ADMINISTRATION

PAGE

USE ONLY FUNNEL ID,

FUNNEL LEVEL, AND

CONVERSION MARKER

ASSIGNED BY HBX IN

FUNNEL

ADMINISTRATION

PAGE.

OPTIONAL

WHEN TRACKING

CUSTOMER

INTERACTION WITH

TAGGED FUNNELS.

NO MORE THAN THREE TAGGED FUNNEL ID-

FUNNEL LEVEL PAIRS PER PAGE PER ACCOUNT.

MAXIMUM OF 20 FUNNELS PER ACCOUNT.

UP TO 10 FUNNEL LEVELS PER FUNNEL.

SEE FUNNEL CODING SECTION.

hbx.hc1

hbx.hc2

hbx.hc3

hbx.hc4

IDENTIFIES VALUES FOR

CUSTOM METRIC

VARIABLES 1 THROUGH

4

hbx.hc1="";

hbx.hc2="";

hbx.hc3="";

hbx.hc4="";

hbx.hc1="Hummer";

hbx.hc2="H2";

hbx.hc3="4+door+open+top";

hbx.hc4="Winch";

hbx.hc1="Intel|50GHz";

hbx.hc2="Hummer,Jeep,Explorer";

hbx.hc1="Intel|50GHz,Athlon|45GHz";

N/A UP TO 100

ALPHANUMERIC

CHARACTERS TOTAL

FOR THE ENTIRE

STRING

THE COMMA ,

DELIMITS DIFFERENT

VALUES FOR THIS

VARIABLE

THE PIPE | IS A LEGAL

CHARACTER THAT

DELIMITS THE

ATTRIBUTE'S VALUE

FOR THIS VARIABLE

OPTIONAL

WHEN USING CUSTOM

METRIC TO TRACK PAGE

VIEWS OF SPECIFIC

ITEMS ON WEB PAGE

NOT COVERED BY HBX

ONLY ONE CUSTOM METRIC PER ACCOUNT PER

PAGE.

SPECIFY NAME ASSIGNED TO CUSTOM METRIC

IN THE HBX DOWNLOADS AND

ADMINISTRATION > EDIT ACCOUNT PAGE. SEE

CODING CUSTOM METRIC SECTION.

Page 280: Hitbox Installation Guide

| PageH-9 13 January 2008

VARIABLE IN

PAGE CODE

DESCRIPTION OF

VARIABLE

What purpose variable serves in page code

DEFAULT VALUE

Initial value assigned to variable in page code

EXAMPLES

DEPENDENCIES

What must exist before HBX can use this variable to track data

N/A = NO

DEPENDENCIES

VALUE LENGTH AND

CHARACTER TYPE

RESTRICTIONS

ILLEGAL PAGE CODE CHARACTERS

' " & ! # $ % ^ * : | \ / > < ~

;

CLASSIFICATION IN

HBX PAGE CODE

(EDITABLE / REQUIRED

/ OPTIONAL)

Refer to HBX Page Code section

WHEN ARE CHANGES

REQUIRED TO DEFAULT

VALUE IN PAGE CODE?

MULTIPLE ACCOUNTS BEHAVIOR

Refer to Advanced page coding section

Notes

hbx.ci

IDENTIFIES THE

CUSTOMER ID BASED ON

PAGE TRANSACTIONS

hbx.ci="";

hbx.ci="Z2093932A";

HBX DATAFEED PLUS

ACCOUNT HOLDER

UP TO 70

ALPHANUMERIC

CHARACTERS

OPTIONAL

FOR USE BY HBX

DATAFEED PLUS

CUSTOMERS ONLY

(THIS VARIABLE IS

IDENTICAL TO THE HBX

COMMERCE VARIABLE

_CI)

ONLY ONE CUSTOMER ID PER ACCOUNT PER

PAGE

hbx.cpd

IDENTIFIES THE BASE

DOMAIN OF THE SITE

hbx.cpd="";

hbx.cpd="backdoor.com";

HBX COMMERCE

MODULE HBX.CP

CAMPAIGNS

UP TO 256

ALPHANUMERIC

CHARACTERS, INCLUDING THE DOT .

OPTIONAL

FOR USE WHEN

CONDUCTING HBX

COMMERCE LEGACY

CAMPAIGNS

ONLY ONE DOMAIN PER PAGE, REGARDLESS OF

NUMBER OF ACCOUNTS ON PAGE.

Page 281: Hitbox Installation Guide

| PageH-10 13 January 2008

VARIABLE IN

PAGE CODE

DESCRIPTION OF

VARIABLE

What purpose variable serves in page code

DEFAULT VALUE

Initial value assigned to variable in page code

EXAMPLES

DEPENDENCIES

What must exist before HBX can use this variable to track data

N/A = NO

DEPENDENCIES

VALUE LENGTH AND

CHARACTER TYPE

RESTRICTIONS

ILLEGAL PAGE CODE CHARACTERS

' " & ! # $ % ^ * : | \ / > < ~

;

CLASSIFICATION IN

HBX PAGE CODE

(EDITABLE / REQUIRED

/ OPTIONAL)

Refer to HBX Page Code section

WHEN ARE CHANGES

REQUIRED TO DEFAULT

VALUE IN PAGE CODE?

MULTIPLE ACCOUNTS BEHAVIOR

Refer to Advanced page coding section

Notes

hbx.dft

ENABLES/DISABLES

ALERNATIVE DISPLAY OF

DOWNLOADED FILE NAME

hbx.dft="n";

ONLY THESE THREE CASE-SENSITIVE VALUES ARE VALID FOR THIS

VARIABLE.

hbx.dft="n";

hbx.dft="y";

hbx.dft="full";

DOWNLOAD FILES

TRACKING

VALID CASE-

SENSITIVE VALUES

FOR THIS VARIABLE

INCLUDE

n

OR

Y

OR

full

OPTIONAL

WHEN TRACKING

DOWNLOADED FILES

ONLY ONE VALUE FOR THIS VARIABLE PER

PAGE, REGARDLESS OF NUMBER OF ACCOUNTS

ON PAGE.

IF THE VALUE IS N

OR ELSE

THE VALUE IS Y AND NO VALUE IS ASSIGNED

TO THE NAME ATTRIBUTE WITHIN THE <A HREF=> TAG, HBX DISPLAYS THE VALUE

ASSIGNED TO THE HREF ATTRIBUTE OF THE

ANCHOR TAG AS THE NAME OF THE DOWNLOAD

IF THE VALUE IS Y HBX DISPLAYS THE VALUE

ASSIGNED TO THE NAME ATTRIBUTE OF THE

ANCHOR TAG WHEN IDENTIFYING THE

DOWNLOADED FILE

Page 282: Hitbox Installation Guide

| PageH-11 13 January 2008

VARIABLE IN

PAGE CODE

DESCRIPTION OF

VARIABLE

What purpose variable serves in page code

DEFAULT VALUE

Initial value assigned to variable in page code

EXAMPLES

DEPENDENCIES

What must exist before HBX can use this variable to track data

N/A = NO

DEPENDENCIES

VALUE LENGTH AND

CHARACTER TYPE

RESTRICTIONS

ILLEGAL PAGE CODE CHARACTERS

' " & ! # $ % ^ * : | \ / > < ~

;

CLASSIFICATION IN

HBX PAGE CODE

(EDITABLE / REQUIRED

/ OPTIONAL)

Refer to HBX Page Code section

WHEN ARE CHANGES

REQUIRED TO DEFAULT

VALUE IN PAGE CODE?

MULTIPLE ACCOUNTS BEHAVIOR

Refer to Advanced page coding section

Notes

hbx.lt

LINK TRACKING

hbx.lt="none";

hbx.lt="auto_pos";

ONLY THESE VALUES ARE VALID FOR THIS VARIABLE:

none

manual

auto

auto_pos

PAGES CONTAINING

HYPERLINKS

ONLY FOUR VALUES

ARE VALID FOR THIS

VARIABLE

none

manual

auto

AUTO_POS

OPTIONAL

WHEN TRACKING LINKS

ON PAGES

ONLY ONE VALUE FOR THIS VARIABLE PER

PAGE, REGARDLESS OF NUMBER OF ACCOUNTS

ON PAGE.

READ DETAILED INFORMATION ABOUT CODING

THIS VARIABLE

hbx.hrf

REFERRING URL

OVERRIDE

hbx.hrf="";

hbx.hrf="http://www.bigbox.com/redir/";

ALTERNATE DEFAULT

REFERRING PAGE

TRACKED BY HBX

VALID URL OPTIONAL

ALLOWS CUSTOM NAME

/ URL INSTEAD OF

"BOOKMARKS OR

DIRECTLY REFERRED

URLS" IN TABLE OF

REFERRING URLS FOR A

SPECIFIC PAGE

ONLY ONE VALUE FOR THIS VARIABLE PER

PAGE, REGARDLESS OF NUMBER OF ACCOUNTS

ON PAGE.

Page 283: Hitbox Installation Guide

| PageH-12 13 January 2008

VARIABLE IN

PAGE CODE

DESCRIPTION OF

VARIABLE

What purpose variable serves in page code

DEFAULT VALUE

Initial value assigned to variable in page code

EXAMPLES

DEPENDENCIES

What must exist before HBX can use this variable to track data

N/A = NO

DEPENDENCIES

VALUE LENGTH AND

CHARACTER TYPE

RESTRICTIONS

ILLEGAL PAGE CODE CHARACTERS

' " & ! # $ % ^ * : | \ / > < ~

;

CLASSIFICATION IN

HBX PAGE CODE

(EDITABLE / REQUIRED

/ OPTIONAL)

Refer to HBX Page Code section

WHEN ARE CHANGES

REQUIRED TO DEFAULT

VALUE IN PAGE CODE?

MULTIPLE ACCOUNTS BEHAVIOR

Refer to Advanced page coding section

Notes

hbx.elf

EXIT LINK FILTER

hbx.elf="";

hbx.elf="abattoir.wholehog.com";

EXIT LINKS TO A

SUBDOMAIN

VALID DOTTED

SUBDOMAIN NAME

OPTIONAL

WHEN TRACKING EXIT

LINKS TO A

SUBDOMAIN OF YOUR

DOMAIN

hbx.dlf

DOWNLOAD FILTER

hbx.dlf="";

hbx.dlf=".pl,bang.cgi!bigsquash.pl";

A PARTICULAR TYPE OF

FILE (FILE

EXTENSION) OR A

PARTICULAR FILE TO

INCLUDE OR EXCLUDE

FROM THE LIST OF

DOWNLOADS

DOWNLOADABLE FILES

ON YOUR SITE

OPTIONAL

WHEN YOU NEED TO

INCLUDE OR EXCLUDE

SPECIFIC FILES OR FILE

TYPES

ONLY ONE VALUE FOR THIS VARIABLE PER

PAGE, REGARDLESS OF NUMBER OF ACCOUNTS

ON PAGE.

hbx.protocol

PROTOCOL OVERRIDE

hbx.protocol="";

hbx.protocol="https";

N/A http

OR https

OPTIONAL

OVERRIDES THE

DEFAULT PROTOCOL

ASSOCIATED WITH THE

HBX PAGE CODE;

TOGGLES BETWEEN

SECURE OR NON-

SECURE

ONLY ONE VALUE FOR THIS VARIABLE PER

PAGE, REGARDLESS OF NUMBER OF ACCOUNTS

ON PAGE.

Page 284: Hitbox Installation Guide

| PageH-13 13 January 2008

VARIABLE IN

PAGE CODE

DESCRIPTION OF

VARIABLE

What purpose variable serves in page code

DEFAULT VALUE

Initial value assigned to variable in page code

EXAMPLES

DEPENDENCIES

What must exist before HBX can use this variable to track data

N/A = NO

DEPENDENCIES

VALUE LENGTH AND

CHARACTER TYPE

RESTRICTIONS

ILLEGAL PAGE CODE CHARACTERS

' " & ! # $ % ^ * : | \ / > < ~

;

CLASSIFICATION IN

HBX PAGE CODE

(EDITABLE / REQUIRED

/ OPTIONAL)

Refer to HBX Page Code section

WHEN ARE CHANGES

REQUIRED TO DEFAULT

VALUE IN PAGE CODE?

MULTIPLE ACCOUNTS BEHAVIOR

Refer to Advanced page coding section

Notes

hbx.media

MEDIA OBJECT

IDENTIFIER

hbx.media="";

hbx.media="my_movie.wmv";

A MEDIA OBJECT

DEFINED IN THE WEB

PAGE

ALPHANUMERIC

CHARACTERS

OPTIONAL

WHEN CLIENT-SIDE

TRACKING A MEDIA

FILE EMBEDDED IN THE

WEB PAGE

ONLY ONE VALUE FOR THIS VARIABLE PER

PAGE, REGARDLESS OF NUMBER OF ACCOUNTS

ON PAGE.

hbx.vpc

PAGE CODE VERSION

hbx.vpc="090002s";

FOR INTERNAL USE

ONLY

DO NOT MODIFY THE

VALUE OF THIS

VARIABLE

NON-EDITABLE

hbx.vjs

JAVASCRIPT VERSION

hbx.vjs="090002s.06s";

FOR INTERNAL USE

ONLY

DO NOT MODIFY THE

VALUE OF THIS

VARIABLE

NON-EDITABLE

hbx.gn

GATEWAY NAME

hbx.gn="hg5001.hitbox.com"; FOR INTERNAL USE

ONLY

DO NOT MODIFY THE

VALUE OF THIS

VARIABLE

NON-EDITABLE

hbx.epg

EVENT PAGE IDENTIFIER

- BOOLEAN VALUE OF

EVENT PAGE

hbx.epg="n"; FOR INTERNAL USE

ONLY

DO NOT MODIFY THE

VALUE OF THIS

VARIABLE

NON-EDITABLE

THE VARIABLES BELOW MUST BE ADDED TO HBX PAGE CODE. THEY ARE NOT PART OF THE DEFAULT SET OF TAGS.

Page 285: Hitbox Installation Guide

| PageH-14 13 January 2008

VARIABLE IN

PAGE CODE

DESCRIPTION OF

VARIABLE

What purpose variable serves in page code

DEFAULT VALUE

Initial value assigned to variable in page code

EXAMPLES

DEPENDENCIES

What must exist before HBX can use this variable to track data

N/A = NO

DEPENDENCIES

VALUE LENGTH AND

CHARACTER TYPE

RESTRICTIONS

ILLEGAL PAGE CODE CHARACTERS

' " & ! # $ % ^ * : | \ / > < ~

;

CLASSIFICATION IN

HBX PAGE CODE

(EDITABLE / REQUIRED

/ OPTIONAL)

Refer to HBX Page Code section

WHEN ARE CHANGES

REQUIRED TO DEFAULT

VALUE IN PAGE CODE?

MULTIPLE ACCOUNTS BEHAVIOR

Refer to Advanced page coding section

Notes

CUSTOM EVENT -

SEARCH

VALUES OF CUSTOM EVENT - SEARCH VARIABLES ARE ADDED BY

SERVER-SIDE SCRIPTS. <SNAME> IS ANY VALID JAVASCRIPT ID.

<SNAME> MUST BE USED TO PREFIX THE CUSTOM SEARCH EVENT

PAGE TAGS.

SEARCH EVENT OR

SEARCH-RELATED

LINK CLICK

ALPHANUMERIC

CHARACTERS

N/A IF CUSTOM SEARCH EVENT PRODUCES

RESULTS ON PAGE WITH MULTIPLE ACCOUNTS,

CONVERSION IS APPLIED TO ALL ACCOUNTS

<sname>.keywords

CUSTOM EVENT -

SEARCH KEYWORDS

ev1.keywords="parka"; SEARCH EVENT OR

SEARCH-RELATED

LINK CLICK

ALPHANUMERIC

CHARACTERS

REQUIRED

WHEN TRACKING

INTERNAL SEARCH

RESULTS

<sname>.results

CUSTOM EVENT -

NUMBER OF SEARCH

RESULTS

ev1.results="500"; ev1.results="0";

SEARCH EVENT OR

SEARCH-RELATED

LINK CLICK

INTEGER REQUIRED

WHEN TRACKING

INTERNAL SEARCH

RESULTS

IF EV1.RESULTS = "0"; HBX DISPLAYS THE

KEYWORD SUBMITTED IN FAILED KEYWORDS

REPORT.

<sname>.attr1

CUSTOM EVENT -

SEARCH ATTRIBUTE1

ev1.attr1="winterwear"; SEARCH EVENT OR

SEARCH-RELATED

LINK CLICK

ALPHANUMERIC

CHARACTERS

N/A

<sname>.attr2

CUSTOM EVENT -

SEARCH ATTRIBUTE1

ev1.attr2="landsend"; SEARCH EVENT OR

SEARCH-RELATED

LINK CLICK

ALPHANUMERIC

CHARACTERS

N/A

<sname>.attr3

CUSTOM EVENT -

SEARCH ATTRIBUTE1

ev1.attr3="site"; SEARCH EVENT OR

SEARCH-RELATED

LINK CLICK

ALPHANUMERIC

CHARACTERS

N/A

Page 286: Hitbox Installation Guide

| PageH-15 13 January 2008

VARIABLE IN

PAGE CODE

DESCRIPTION OF

VARIABLE

What purpose variable serves in page code

DEFAULT VALUE

Initial value assigned to variable in page code

EXAMPLES

DEPENDENCIES

What must exist before HBX can use this variable to track data

N/A = NO

DEPENDENCIES

VALUE LENGTH AND

CHARACTER TYPE

RESTRICTIONS

ILLEGAL PAGE CODE CHARACTERS

' " & ! # $ % ^ * : | \ / > < ~

;

CLASSIFICATION IN

HBX PAGE CODE

(EDITABLE / REQUIRED

/ OPTIONAL)

Refer to HBX Page Code section

WHEN ARE CHANGES

REQUIRED TO DEFAULT

VALUE IN PAGE CODE?

MULTIPLE ACCOUNTS BEHAVIOR

Refer to Advanced page coding section

Notes

<sname>.attr4

CUSTOM EVENT -

SEARCH ATTRIBUTE1

ev1.attr4="map"; SEARCH EVENT OR

SEARCH-RELATED

LINK CLICK

ALPHANUMERIC

CHARACTERS

N/A

CUSTOM EVENT -

CONVERSION CUSTOM EVENT - CONVERSION VARIABLES ARE DEFINED BY

DEFINING A CUSTOM CONVERSION IN CONVERSION

ADMINISTRATION PAGE. <CNAME> IS ANY VALID JAVASCRIPT ID.

<CNAME> MUST BE USED TO PREFIX THE CUSTOM CONVERSION

EVENT PAGE TAGS.

<cname>.id

CONVERSION ID

cnv.id="cnv-101"; SEARCH EVENT OR

SEARCH-RELATED

LINK CLICK

DO NOT MODIFY THE

VALUE OF THIS

VARIABLE

N/A

<cname>.value

CONVERSION VALUE

cnv.value="15.00"; SEARCH EVENT OR

SEARCH-RELATED

LINK CLICK

INTEGER OR FLOAT

(PRECISE TO TWO

DIGITS AFTER

DECIMAL POINT)

N/A

Page 287: Hitbox Installation Guide

| PageI-1 13 January 2008

Appendix I: HBX Campaign Coding Variables

Table formatted for printing with legal-size paper - 8.5 x 14 inches

VARIABLE IN PAGE CODE

DESCRIPTION OF VARIABLE

What purpose variable serves in page code

DEFAULT VALUE

Initial value assigned to variable in page code

EXAMPLES IN PAGE CODING

NOTE: SOME PAGE CODE VARIABLES

(INDICATED BELOW) MUST BE USED

ALONG WITH ON-LINE CAMPAIGN

METHOD

EXAMPLES FOR ON-LINE PAGE CODING

Campaign information that can alternatively be passed via on-line method

DEPENDENCIES

What must exist before HBX can use this variable to track data

N/A = NO

DEPENDENCIES

VALUE LENGTH AND

CHARACTER TYPE

RESTRICTIONS

ILLEGAL PAGE CODE CHARACTERS

' " & ! # $ % ^ * : | \ / > < ~ ;

CLASSIFICATION IN HBX PAGE CODE

(EDITABLE / REQUIRED / OPTIONAL)

Refer to HBX Page Code section

WHEN ARE CHANGES REQUIRED TO DEFAULT

VALUE IN PAGE CODE?

MULTIPLE ACCOUNTS BEHAVIOR

Refer to the Multiple Accounts: Coding Campaigns section

NOTES

hbx.cmp

IDENTIFIES CAMPAIGN TRIGGERING

RESPONSE

hbx.cmp="";

RESPONSE LANDING PAGE EXAMPLE

hbx.cmp="EMC-24670";

A VALID

CAMPAIGN ID

VALUE AS

CREATED VIA

CAMPAIGN

ADMINISTRATION

PAGE OR BY BULK

UPLOADING

UP TO 28

ALPHANUMERIC

CHARACTERS (SEE

CAMPAIGN ID CHART)

OPTIONAL

WHEN TRACKING CONVENTIONAL CAMPAIGN

RESPONSE OR RESPONSE TO LEAD

CAMPAIGN

ONLY ONE CAMPAIGN PER ACCOUNT PER PAGE.

1000 CAMPAIGNS PERMISSIBLE PER ACCOUNT

(COMBINED TOTAL OF STATIC AND DYNAMIC

CAMPAIGNS)

TOTAL OF 120 TOTAL CHARACTERS PERMISSIBLE

FOR ALL ACCOUNTS AS VALUE OF HBX.CMP

FOR URL-QUERY TRACKING, USE ANY NAME FOR

NAME-VALUE PAIR EXCEPT CP GP CMP LAST DCMP

ON-LINE CAMPAIGN RESPONSE EXAMPLE

&CMP=EMC-24670

Page 288: Hitbox Installation Guide

| PageI-2 13 January 2008

VARIABLE IN PAGE CODE

DESCRIPTION OF VARIABLE

What purpose variable serves in page code

DEFAULT VALUE

Initial value assigned to variable in page code

EXAMPLES IN PAGE CODING

NOTE: SOME PAGE CODE VARIABLES

(INDICATED BELOW) MUST BE USED

ALONG WITH ON-LINE CAMPAIGN

METHOD

EXAMPLES FOR ON-LINE PAGE CODING

Campaign information that can alternatively be passed via on-line method

DEPENDENCIES

What must exist before HBX can use this variable to track data

N/A = NO

DEPENDENCIES

VALUE LENGTH AND

CHARACTER TYPE

RESTRICTIONS

ILLEGAL PAGE CODE CHARACTERS

' " & ! # $ % ^ * : | \ / > < ~ ;

CLASSIFICATION IN HBX PAGE CODE

(EDITABLE / REQUIRED / OPTIONAL)

Refer to HBX Page Code section

WHEN ARE CHANGES REQUIRED TO DEFAULT

VALUE IN PAGE CODE?

MULTIPLE ACCOUNTS BEHAVIOR

Refer to the Multiple Accounts: Coding Campaigns section

NOTES

hbx.gp

IDENTIFIES CAMPAIGN(S) TRIGGERING

CONVERSION(S)

hbx.gp="";

GOAL PAGE EXAMPLES

hbx.gp="EMC-24670";

hbx.gp="EMC-24670,BAC-66803";

hbx.gp="LAST";

ON-LINE EXAMPLES

&GP=EMC-24670

&GP=EMC-24670,BAC-66803

&GP=LAST

A MATCHING

CAMPAIGN ID

VALUE ON

RESPONDENT'S

COOKIE

UP TO 28

ALPHANUMERIC

CHARACTERS (SEE

CAMPAIGN ID CHART)

OPTIONAL

WHEN TRACKING CONVENTIONAL CAMPAIGN

OR LEAD CAMPAIGN CONVERSION(S)

MULTIPLE CAMPAIGNS IDS PER ACCOUNT PER

PAGE. ONE CAMPAIGN CAN HAVE UP TO 20

DISTINCT GOAL PAGES.

TOTAL OF 120 TOTAL CHARACTERS PERMISSIBLE

FOR ALL ACCOUNTS AS VALUE OF HBX.GP

ONE OR MORE CAMPAIGNS CAN TRIGGER A

CONVERSION PER PAGE.

USE LAST AS VALUE TO TRIGGER A CONVERSION

FOR THE MOST RECENTLY RESPONDED-TO

CAMPAIGN ON RESPONDENT'S COOKIE

FOR URL-QUERY TRACKING, USE ANY NAME FOR

NAME-VALUE PAIR EXCEPT CP CMP LAST DCMP

NOTE THAT HBX LOOKS FOR GP AS THE DEFAULT

QUERY TRACKING NAME, UNLESS OVERRIDDEN BY A

VALUE OF THE HBX.GP VARIABLE IN THE FORM

hbx.gp= "_P::<query_string_parameter>";

hbx.dcmp

IDENTIFIES A DYNAMIC CAMPAIGN

TRIGGERING RESPONSE

hbx.dcmp="";

RESPONSE LANDING PAGE EXAMPLE

hbx.dcmp="EMC-24670DY";

N/A UP TO 28

ALPHANUMERIC

CHARACTERS (SEE

CAMPAIGN ID CHART)

OPTIONAL

WHEN TRACKING DYNAMIC CAMPAIGN

RESPONSE OR DYNAMIC LEAD CAMPAIGN

RESPONSE

ONLY ONE DYNAMIC CAMPAIGN PER ACCOUNT PER

PAGE.

1000 CAMPAIGNS PERMISSIBLE PER ACCOUNT

(COMBINED TOTAL OF STATIC AND DYNAMIC

CAMPAIGNS)

TOTAL OF 120 TOTAL CHARACTERS PERMISSIBLE

Page 289: Hitbox Installation Guide

| PageI-3 13 January 2008

VARIABLE IN PAGE CODE

DESCRIPTION OF VARIABLE

What purpose variable serves in page code

DEFAULT VALUE

Initial value assigned to variable in page code

EXAMPLES IN PAGE CODING

NOTE: SOME PAGE CODE VARIABLES

(INDICATED BELOW) MUST BE USED

ALONG WITH ON-LINE CAMPAIGN

METHOD

EXAMPLES FOR ON-LINE PAGE CODING

Campaign information that can alternatively be passed via on-line method

DEPENDENCIES

What must exist before HBX can use this variable to track data

N/A = NO

DEPENDENCIES

VALUE LENGTH AND

CHARACTER TYPE

RESTRICTIONS

ILLEGAL PAGE CODE CHARACTERS

' " & ! # $ % ^ * : | \ / > < ~ ;

CLASSIFICATION IN HBX PAGE CODE

(EDITABLE / REQUIRED / OPTIONAL)

Refer to HBX Page Code section

WHEN ARE CHANGES REQUIRED TO DEFAULT

VALUE IN PAGE CODE?

MULTIPLE ACCOUNTS BEHAVIOR

Refer to the Multiple Accounts: Coding Campaigns section

NOTES

ON-LINE CAMPAIGN RESPONSE EXAMPLE

&DCMP=EMC-24670DY

FOR ALL ACCOUNTS AS VALUE OF HBX.DCMP

HBX ASSIGNS DYNAMIC CAMPAIGNS WITH OTC-

PREFIX UNLESS A THREE LETTER CAMPAIGN PREFIX

IS USED.(SEE DYNAMIC CAMPAIGNS SECTION)

URL QUERY-STRING SYNTAX FOR ON-LINE METHOD

OF LAUNCHING DYNAMIC CAMPAIGN IS IDENTICAL

TO THAT FOR LAUNCHING STATIC CAMPAIGNS

(EXCEPT NAME OF NAME-VALUE PAIR IS DCMP).

hbx.hra

NAMES ATTRIBUTE TO ASSOCIATE WITH A

CONVENTIONAL CAMPAIGN RESPONSE

hbx.hra="";

FOR LANDING PAGE CAMPAIGNS

HBX.HRA="DEEP-DISCOUNT";

A VALID

CONVENTIONAL

CAMPAIGN ID

VALUE ON

RESPONSE PAGE

OR PASSED VIA

ON-LINE METHOD

UP TO 70

ALPHANUMERIC

CHARACTERS

OPTIONAL

WHEN TRACKING ATTRIBUTES ASSOCIATED

WITH STATIC CAMPAIGN RESPONSE.

ONLY ONE STATIC RESPONSE ATTRIBUTE PER PAGE

IS POSSIBLE, REGARDLESS OF NUMBER OF

ACCOUNTS ON PAGE.

IF MULTIPLE ACCOUNTS DEFINED FOR PAGE, VALUE

OF HBX.HRA IS APPLIED TO ALL CAMPAIGN

RESPONSES.

IN THE CASE OF REPEAT RESPONSES, WHERE

VISITOR RESPONDS MORE THAN ONCE TO THE

SAME CAMPAIGN, ONLY THE LAST VALUE OF THE

CAMPAIGN RESPONSE ATTRIBUTE IS SAVED.

Page 290: Hitbox Installation Guide

| PageI-4 13 January 2008

VARIABLE IN PAGE CODE

DESCRIPTION OF VARIABLE

What purpose variable serves in page code

DEFAULT VALUE

Initial value assigned to variable in page code

EXAMPLES IN PAGE CODING

NOTE: SOME PAGE CODE VARIABLES

(INDICATED BELOW) MUST BE USED

ALONG WITH ON-LINE CAMPAIGN

METHOD

EXAMPLES FOR ON-LINE PAGE CODING

Campaign information that can alternatively be passed via on-line method

DEPENDENCIES

What must exist before HBX can use this variable to track data

N/A = NO

DEPENDENCIES

VALUE LENGTH AND

CHARACTER TYPE

RESTRICTIONS

ILLEGAL PAGE CODE CHARACTERS

' " & ! # $ % ^ * : | \ / > < ~ ;

CLASSIFICATION IN HBX PAGE CODE

(EDITABLE / REQUIRED / OPTIONAL)

Refer to HBX Page Code section

WHEN ARE CHANGES REQUIRED TO DEFAULT

VALUE IN PAGE CODE?

MULTIPLE ACCOUNTS BEHAVIOR

Refer to the Multiple Accounts: Coding Campaigns section

NOTES

hbx.hra= "_R::<query_string_parameter>";

ATTRIBUTE QUERY PARAMETER FOR

REFERRING PAGE - IDENTIFIES NAME IN

NAME-VALUE PAIR USED TO SEARCH

CAMPAIGN RESPONSE ATTRIBUTE IN

REFERRER PAGE QUERY STRING

NEED TO CHANGE PAGE CODE OF

LANDING PAGE AND TO BE ABLE TO

PREDICT ELEMENTS OCCURRING IN

REFERRING URL

RESPONSE LANDING PAGE

hbx.hra="_R::q";

AND

ATTRIBUTE QUERY PARAMETER AND

ATTRIBUTE QUERY PARAMETER VALUE IN

REFERRING PAGE QUERY STRING

&q=charcoal

A VALID

CONVENTIONAL

CAMPAIGN ID

VALUE ON

RESPONSE PAGE

OR PASSED VIA

ON-LINE METHOD

UP TO 70

ALPHANUMERIC

CHARACTERS

CASE-SENSITIVE

DON'T USE ANY OF THE GATEWAY VARIABLES

OPTIONAL

WHEN TRACKING SPECIFIC VALUES FROM

URL QUERY STRING OF REFERRING PAGES.

ONLY ONE RESPONSE ATTRIBUTE PER REFERRING

PAGE IS POSSIBLE, REGARDLESS OF NUMBER OF

ACCOUNTS ON PAGE. IF MULTIPLE ACCOUNTS

DEFINED FOR PAGE, VALUE OF

QUERY_STRING_PARAMETER IN HBX.HRA IS USED

WHEN PARSING ATTRIBUTES FOR THE URL QUERY

STRING OF REFERRING PAGES FOR ALL CAMPAIGN

RESPONSES.

UNLESS A KEYWORD NETWORK CAMPAIGN, (1)

HBX CHECKS IN THE URL QUERY-STRING OF THE

REFERRING URL FOR A NAME (OF A NAME-VALUE

PAIR) WHICH MATCHES THE VALUE ASSIGNED TO

THE QUERY_STRING_PARAMETER

HBX.HRA="_R::<QUERY_STRING_PARAMETER>";

(1A) IF VALUES MATCH, THE RESPONSE ATTRIBUTE

PASSED IN THE QUERY FROM THE REFERRING PAGE

IS RECORDED ON THE COOKIE ALONG WITH THE

CAMPAIGN RESPONSE.

(1B) IF NO MATCH, HBX CHECKS VALUE ASSIGNED

TO HBX.HRA VARIABLE IN PAGE CODE WITHOUT THE

_R:: NOTATION

(1C) IF VALUE OF HBX.HRA EXISTS, AND CAMPAIGN

ID IS VALID, THE RESPONSE ATTRIBUTE IS

RECORDED ON THE COOKIE FOR THE CAMPAIGN ID

(1D)IF NOT A VALID CAMPAIGN ID, NO RESPONSE

ATTRIBUTE RECORDED.

IF A KEYWORD NETWORK CAMPAIGN, HBX

IGNORES VALUES OF HBX.HRA

Page 291: Hitbox Installation Guide

| PageI-5 13 January 2008

VARIABLE IN PAGE CODE

DESCRIPTION OF VARIABLE

What purpose variable serves in page code

DEFAULT VALUE

Initial value assigned to variable in page code

EXAMPLES IN PAGE CODING

NOTE: SOME PAGE CODE VARIABLES

(INDICATED BELOW) MUST BE USED

ALONG WITH ON-LINE CAMPAIGN

METHOD

EXAMPLES FOR ON-LINE PAGE CODING

Campaign information that can alternatively be passed via on-line method

DEPENDENCIES

What must exist before HBX can use this variable to track data

N/A = NO

DEPENDENCIES

VALUE LENGTH AND

CHARACTER TYPE

RESTRICTIONS

ILLEGAL PAGE CODE CHARACTERS

' " & ! # $ % ^ * : | \ / > < ~ ;

CLASSIFICATION IN HBX PAGE CODE

(EDITABLE / REQUIRED / OPTIONAL)

Refer to HBX Page Code section

WHEN ARE CHANGES REQUIRED TO DEFAULT

VALUE IN PAGE CODE?

MULTIPLE ACCOUNTS BEHAVIOR

Refer to the Multiple Accounts: Coding Campaigns section

NOTES

hbx.hra= "_P::<query_string_parameter>";

ATTRIBUTE QUERY PARAMETER FOR

CURRENT PAGE - IDENTIFIES NAME IN

NAME-VALUE PAIR USED TO SEARCH

CAMPAIGN RESPONSE ATTRIBUTE IN

CURRENT PAGE'S QUERY STRING

NEED TO CHANGE PAGE CODE OF

LANDING PAGE AND TO BE ABLE TO

PREDICT ELEMENTS OCCURRING IN

CURRENT PAGE URL

RESPONSE LANDING PAGE

hbx.hra="_P::zoom";

AND

ATTRIBUTE QUERY PARAMETER AND

ATTRIBUTE QUERY PARAMETER VALUE IN

CURRENT PAGE QUERY STRING

&zoom=level2

A VALID

CONVENTIONAL

CAMPAIGN ID

VALUE ON

RESPONSE PAGE

OR PASSED VIA

ON-LINE METHOD

UP TO 70

ALPHANUMERIC

CHARACTERS

CASE-SENSITIVE

DON'T USE ANY OF THE GATEWAY VARIABLES

OPTIONAL

WHEN TRACKING SPECIFIC VALUES FROM

URL OF LANDING PAGES.

ONLY ONE RESPONSE ATTRIBUTE PER LANDING

PAGE IS POSSIBLE, REGARDLESS OF NUMBER OF

ACCOUNTS ON PAGE. IF MULTIPLE ACCOUNTS

DEFINED FOR PAGE, VALUE OF

QUERY_STRING_PARAMETER IN HBX.HRA IS USED

WHEN PARSING ATTRIBUTES FOR THE URL QUERY

STRING OF THE LANDING PAGE FOR ALL CAMPAIGN

RESPONSES. UNLESS A KEYWORD NETWORK

CAMPAIGN, (1) HBX CHECKS IN THE URL QUERY-

STRING OF THE LANDING PAGE URL FOR A NAME

(OF A NAME-VALUE PAIR) WHICH MATCHES THE

VALUE ASSIGNED TO

HBX.HRA="_P::<QUERY_STRING_PARAMETER>";

(1A) IF VALUES MATCH, THE RESPONSE ATTRIBUTE

OF THE LANDING PAGE IS RECORDED ON THE

COOKIE ALONG WITH THE CAMPAIGN RESPONSE.

(1B) IF NO MATCH, HBX CHECKS VALUE ASSIGNED

TO HBX.HRA VARIABLE IN PAGE CODE WITHOUT THE

_R:: NOTATION.

(1C) IF VALUE OF HBX.HRA EXISTS, AND CAMPAIGN

ID IS VALID, THE RESPONSE ATTRIBUTE IS

RECORDED ON THE COOKIE FOR THE CAMPAIGN ID

(1D) IF NOT A VALID CAMPAIGN ID, NO RESPONSE

ATTRIBUTE RECORDED.

IF A KEYWORD NETWORK CAMPAIGN, HBX

IGNORES VALUES OF HBX.HRA

Page 292: Hitbox Installation Guide

| PageI-6 13 January 2008

VARIABLE IN PAGE CODE

DESCRIPTION OF VARIABLE

What purpose variable serves in page code

DEFAULT VALUE

Initial value assigned to variable in page code

EXAMPLES IN PAGE CODING

NOTE: SOME PAGE CODE VARIABLES

(INDICATED BELOW) MUST BE USED

ALONG WITH ON-LINE CAMPAIGN

METHOD

EXAMPLES FOR ON-LINE PAGE CODING

Campaign information that can alternatively be passed via on-line method

DEPENDENCIES

What must exist before HBX can use this variable to track data

N/A = NO

DEPENDENCIES

VALUE LENGTH AND

CHARACTER TYPE

RESTRICTIONS

ILLEGAL PAGE CODE CHARACTERS

' " & ! # $ % ^ * : | \ / > < ~ ;

CLASSIFICATION IN HBX PAGE CODE

(EDITABLE / REQUIRED / OPTIONAL)

Refer to HBX Page Code section

WHEN ARE CHANGES REQUIRED TO DEFAULT

VALUE IN PAGE CODE?

MULTIPLE ACCOUNTS BEHAVIOR

Refer to the Multiple Accounts: Coding Campaigns section

NOTES

hbx.hcn

NAMES CONVERSION (GOAL) ATTRIBUTE

FOR CAMPAIGN

hbx.hcn="";

hbx.hcn="Via+survey+01"; VALID CAMPAIGN

ID VALUE(S) ON

GOAL PAGE OR

PASSED VIA ON-

LINE METHOD

UP TO 70

ALPHANUMERIC

CHARACTERS

OPTIONAL

WHEN TRACKING CONVERSION

ATTRIBUTES.

ONLY ONE CONVERSION ATTRIBUTE IS POSSIBLE

PER GOAL PAGE, REGARDLESS OF NUMBER OF

ACCOUNTS ON PAGE. IF MULTIPLE ACCOUNTS

DEFINED FOR PAGE, CONVERSION ATTRIBUTE IS

APPLIED TO ALL CAMPAIGN CONVERSIONS.

NO ON-LINE METHOD AVAILABLE FOR TRACKING

CAMPAIGN CONVERSION ATTRIBUTE.

hbx.hcv

IDENTIFIES CONVERSION (GOAL) VALUE

FOR A CAMPAIGN

hbx.hcv="";

hbx.hcv="150";

hbx.hcv="21.85"; VALID CAMPAIGN

ID VALUE(S) ON

GOAL PAGE OR

PASSED VIA ON-

LINE METHOD

1 -70 NUMERIC

CHARACTERS,

INCLUDING THE

DECIMAL POINT AND

TWO DIGITS TO THE

RIGHT OF THE DECIMAL

POINT

[0 - 9]

VALUE MUST BE LESS

THAN

10,000,000,000.00

OPTIONAL

WHEN TRACKING CONVERSION VALUES.

ONLY ONE CONVERSION VALUE IS POSSIBLE,

REGARDLESS OF NUMBER OF ACCOUNTS ON PAGE.

BUT, ONE CAMPAIGN CAN HAVE MULTIPLE

CONVERSION VALUES, EACH ON DIFFERENT GOAL

PAGES. IF MULTIPLE ACCOUNTS DEFINED FOR

PAGE, CONVERSION VALUE IS APPLIED TO ALL

CAMPAIGN CONVERSIONS.

CONVERSION VALUE IS INCREMENTED FOR ALL

CAMPAIGN CONVERSION ATTRIBUTES, AS WELL AS

FOR RESPONSE ATTRIBUTES, REFERRING DOMAINS,

AND RESPONSE/GOAL ATTRIBUTS, IF CODED IN

CAMPAIGN, AND EXISTING ON COOKIE.

Page 293: Hitbox Installation Guide

| PageI-7 13 January 2008

VARIABLE IN PAGE CODE

DESCRIPTION OF VARIABLE

What purpose variable serves in page code

DEFAULT VALUE

Initial value assigned to variable in page code

EXAMPLES IN PAGE CODING

NOTE: SOME PAGE CODE VARIABLES

(INDICATED BELOW) MUST BE USED

ALONG WITH ON-LINE CAMPAIGN

METHOD

EXAMPLES FOR ON-LINE PAGE CODING

Campaign information that can alternatively be passed via on-line method

DEPENDENCIES

What must exist before HBX can use this variable to track data

N/A = NO

DEPENDENCIES

VALUE LENGTH AND

CHARACTER TYPE

RESTRICTIONS

ILLEGAL PAGE CODE CHARACTERS

' " & ! # $ % ^ * : | \ / > < ~ ;

CLASSIFICATION IN HBX PAGE CODE

(EDITABLE / REQUIRED / OPTIONAL)

Refer to HBX Page Code section

WHEN ARE CHANGES REQUIRED TO DEFAULT

VALUE IN PAGE CODE?

MULTIPLE ACCOUNTS BEHAVIOR

Refer to the Multiple Accounts: Coding Campaigns section

NOTES

hbx.hlt

IDENTIFIES LEAD CAMPAIGN ID(S) OR

SALESFORCE.COM CAMPAIGN ID

hbx.hlt="";

hbx.hlt="EML-70246";

hbx.hlt=

"AFL-70246,EML-70246";

hbx.hlt="LAST";

VALID LEAD

CAMPAIGN ID

VALUE(S) AS

CREATED VIA

CAMPAIGN

ADMINISTRATION

PAGE, BY BULK

UPLOADING, OR

DYNAMICALLY;

VALID

SALESFORCE.COM

CAMPAIGN ID AS

CREATED VIA

CAMPAIGN

ADMINISTRATION

PAGE

UP TO 28

ALPHANUMERIC

CHARACTERS (SEE

CAMPAIGN ID CHART)

THIRD PREFIX LETTER IS

ALWAYS L

THE VALUE OF

HBX.HLT FOR A

SALESFORCE.COM

CAMPAIGN IS ALWAYS

LAST

OPTIONAL

WHEN TRACKING LEAD OR

SALESFORCE.COM CAMPAIGNS

A RESPONDENT TO MANY LEAD CAMPAIGNS CAN BE

DESIGNATED AS A LEAD ON ONE PAGE. MULTIPLE

LEAD CAMPAIGNS PER PAGE PER ACCOUNT.

TOTAL OF 120 TOTAL CHARACTERS PERMISSIBLE

FOR ALL ACCOUNTS AS VALUE OF HBX.HLT. FOR

TRACKING ONLY THE LAST LEAD CAMPAIGN ON THE

RESPONDENT'S COOKIE, USE LAST.

SYNTAX FOR DEFINING VALUE OF LEAD CAMPAIGN

ID FOR LEAD DESIGNATION PAGE IS IDENTICAL TO

THAT FOR USED FOR THE GOAL PAGE VARIABLE

HBX.GP

A RESPONDENT TO ONE OR MORE

SALESFORCE.COM CAMPAIGNS IS DESIGNATED AS

CONVERSION TO LAST CAMPAIGN RESPONDED TO

ON THE THANK YOU PAGE.

ONLY ONE SALESFORCE.COM CAMPAIGN PER PAGE,

REGARDLESS OF NUMBER OF ACCOUNTS ON PAGE.

Page 294: Hitbox Installation Guide

| PageI-8 13 January 2008

VARIABLE IN PAGE CODE

DESCRIPTION OF VARIABLE

What purpose variable serves in page code

DEFAULT VALUE

Initial value assigned to variable in page code

EXAMPLES IN PAGE CODING

NOTE: SOME PAGE CODE VARIABLES

(INDICATED BELOW) MUST BE USED

ALONG WITH ON-LINE CAMPAIGN

METHOD

EXAMPLES FOR ON-LINE PAGE CODING

Campaign information that can alternatively be passed via on-line method

DEPENDENCIES

What must exist before HBX can use this variable to track data

N/A = NO

DEPENDENCIES

VALUE LENGTH AND

CHARACTER TYPE

RESTRICTIONS

ILLEGAL PAGE CODE CHARACTERS

' " & ! # $ % ^ * : | \ / > < ~ ;

CLASSIFICATION IN HBX PAGE CODE

(EDITABLE / REQUIRED / OPTIONAL)

Refer to HBX Page Code section

WHEN ARE CHANGES REQUIRED TO DEFAULT

VALUE IN PAGE CODE?

MULTIPLE ACCOUNTS BEHAVIOR

Refer to the Multiple Accounts: Coding Campaigns section

NOTES

hbx.hla

NAMES ATTRIBUTE FOR LEAD CAMPAIGN OR

CONVERSION ATTRIBUTE FOR

SALESFORCE.COM CAMPAIGNS

hbx.hla="";

hbx.hla="411+services"; VALID LEAD

CAMPAIGN ID

VALUE(S)

ASSIGNED TO

HBX.HLT ON

LEAD

DESIGNATION

PAGE (OR VALID

SALESFORCE.COM

CAMPAIGN ID

ASSIGNED TO

HBX.HLT ON

SALESFORCE.COM

THANK YOU

CONVERSION

PAGE)

UP TO 70

ALPHANUMERIC

CHARACTERS (PER

ACCOUNT)

OPTIONAL

IF TRACKING LEAD CAMPAIGNS AND

HBX.HLT IS ASSIGNED VALID LEAD

CAMPAIGN ID; OR IF TRACKING

SALESFORCE.COM CAMPAIGNS

ONLY ONE LEAD ATTRIBUTE VALUE IS POSSIBLE,

REGARDLESS OF NUMBER OF ACCOUNTS ON PAGE,

OR NUMBER OF CAMPAIGNS. IF MULTIPLE

ACCOUNTS DEFINED FOR PAGE, LEAD ATTRIBUTE

VALUE IS APPLIED TO ALL LEAD CONVERSIONS.

ONLY ONE SALESFORCE.COM CONVERSION

ATTRIBUTE VALUE IS POSSIBLE, REGARDLESS OF

NUMBER OF ACCOUNTS ON PAGE, OR NUMBER OF

CAMPAIGNS. IF MULTIPLE ACCOUNTS DEFINED FOR

PAGE, CONVERSION ATTRIBUTE VALUE IS APPLIED

ONLY TO THE SALESFORCE.COM CONVERSION.

hbx.cp

HBX.CP CAMPAIGN (LEGACY HBX

COMMERCE CAMPAIGN)

hbx.cp="null";

RESPONSE LANDING PAGE

hbx.cp="Spring+Blowout+Sale";

AN HBX

COMMERCE

ACCOUNT

UP TO70

ALPHANUMERIC

CHARACTERS (PER

ACCOUNT)

CASE-SENSITIVE

OPTIONAL

IF YOU ALSO CONDUCT LANDING PAGE AND

ON-LINE HBX CAMPAIGNS IN THE HBX

COMMERCE MODULE, YOU MAY NEED TO USE

HBX.CMP=

SEE THE CAMPAIGN CODING SECTION OF THE HBX

COMMERCE MODULE INSTALLATION GUIDE.

Page 295: Hitbox Installation Guide

| PageI-9 13 January 2008

VARIABLE IN PAGE CODE

DESCRIPTION OF VARIABLE

What purpose variable serves in page code

DEFAULT VALUE

Initial value assigned to variable in page code

EXAMPLES IN PAGE CODING

NOTE: SOME PAGE CODE VARIABLES

(INDICATED BELOW) MUST BE USED

ALONG WITH ON-LINE CAMPAIGN

METHOD

EXAMPLES FOR ON-LINE PAGE CODING

Campaign information that can alternatively be passed via on-line method

DEPENDENCIES

What must exist before HBX can use this variable to track data

N/A = NO

DEPENDENCIES

VALUE LENGTH AND

CHARACTER TYPE

RESTRICTIONS

ILLEGAL PAGE CODE CHARACTERS

' " & ! # $ % ^ * : | \ / > < ~ ;

CLASSIFICATION IN HBX PAGE CODE

(EDITABLE / REQUIRED / OPTIONAL)

Refer to HBX Page Code section

WHEN ARE CHANGES REQUIRED TO DEFAULT

VALUE IN PAGE CODE?

MULTIPLE ACCOUNTS BEHAVIOR

Refer to the Multiple Accounts: Coding Campaigns section

NOTES

ON-LINE CAMPAIGN RESPONSE QUERY

STRING

&CP=Spring+Blowout+Sale

DON'T USE THE

FOLLOWING AS QUERY

PARAMETERS

GP LAST DCMP CMP

"_P::<QUERY_STRING_PARAMETER>"; VERSION OF THE HBX.CMP VARIABLE.

hbx.cmp= "_P::<query_string_parameter>;

ALTERNATE CAMPAIGN QUERY PARAMETER -

ALTERNATIVE TO DEFAULT CMP NAME FOR

PARSING NAME-VALUE PAIRS IN QUERY-

STRINGS SENT TO TRIGGER RESPONSE TO

CAMPAIGNS

BOTH LANDING PAGE & ON-LINE

METHODS MUST BE USED:

RESPONSE LANDING PAGE

hbx.cmp="_P::FallCamp";

AND

ON-LINE CAMPAIGN RESPONSE QUERY

STRING

&FallCamp=EMC-24670

A VALID

CAMPAIGN ID

VALUE CREATED

IN THE CAMPAIGN

ADMINISTRATION

PAGE OR BY BULK

UPLOADING

UP TO 70

ALPHANUMERIC

CHARACTERS

CASE-SENSITIVE

DON'T USE ANY OF THE GATEWAY VARIABLES

OPTIONAL

ONLY IF YOU USE THE HBX.CP CAMPAIGNS

IN THE HBX COMMERCE MODULE AND A

PAGE ON YOUR SITE ALSO SETS A VALUE

FOR THE HBX.CP VARIABLE; OR IF A

TYPICAL QUERY STRING (CONTAINING GP

OR DCMP FOR EXAMPLE) IN YOUR WEB

PROGRAMMING CONFLICTS WITH THE

RECORDING OF HBX CAMPAIGN RESPONSES

ONLY ONE ALTERNATE NAME VALUE IS POSSIBLE,

REGARDLESS OF NUMBER OF ACCOUNTS ON PAGE.

IF MULTIPLE ACCOUNTS DEFINED FOR PAGE, SAME

ALTERNATE NAME CHECKING IS APPLIED TO ALL

CAMPAIGN RESPONSES SENT IN URL

(1) HBX CHECKS IN THE URL QUERY-STRING FOR

A NAME (OF A NAME-VALUE PAIR) WHICH MATCHES

THE VALUE ASSIGNED TO

HBX.HRA="_P::<QUERY_STRING_PARAMETER>";

(1A) IF VALUES MATCH, AND THE CAMPAIGN ID IS

VALID, THE CAMPAIGN ID PASSED AS THE VALUE

(OF A NAME-VALUE PAIR) IN THE QUERY STRING IS

RECORDED ON THE COOKIE AS A RESPONSE.

(1B) IF NO MATCH, HBX CHECKS VALUE ASSIGNED

TO HBX.CMP VARIABLE IN PAGE CODE.

(1C) IF VALUE OF HBX.CMP IS A VALID CAMPAIGN

ID, A RESPONSE IS RECORDED ON THE COOKIE

(1D) IF NOT A VALID CAMPAIGN ID, NO

RESPONSE.

Page 296: Hitbox Installation Guide

| PageI-10 13 January 2008

VARIABLE IN PAGE CODE

DESCRIPTION OF VARIABLE

What purpose variable serves in page code

DEFAULT VALUE

Initial value assigned to variable in page code

EXAMPLES IN PAGE CODING

NOTE: SOME PAGE CODE VARIABLES

(INDICATED BELOW) MUST BE USED

ALONG WITH ON-LINE CAMPAIGN

METHOD

EXAMPLES FOR ON-LINE PAGE CODING

Campaign information that can alternatively be passed via on-line method

DEPENDENCIES

What must exist before HBX can use this variable to track data

N/A = NO

DEPENDENCIES

VALUE LENGTH AND

CHARACTER TYPE

RESTRICTIONS

ILLEGAL PAGE CODE CHARACTERS

' " & ! # $ % ^ * : | \ / > < ~ ;

CLASSIFICATION IN HBX PAGE CODE

(EDITABLE / REQUIRED / OPTIONAL)

Refer to HBX Page Code section

WHEN ARE CHANGES REQUIRED TO DEFAULT

VALUE IN PAGE CODE?

MULTIPLE ACCOUNTS BEHAVIOR

Refer to the Multiple Accounts: Coding Campaigns section

NOTES

hbx.gp= "_P::<query_string_parameter>";

ALTERNATE GOAL PAGE QUERY PARAMETER -ALTERNATIVE TO DEFAULT GP NAME FOR

PARSING NAME-VALUE PAIRS IN QUERY-

STRINGS SENT TO CONVERT CAMPAIGNS

BOTH LANDING PAGE & ON-LINE

METHODS MUST BE USED:

GOAL PAGE

hbx.gp="_P::altConv01";

AND

ON-LINE CAMPAIGN CONVERSION QUERY

STRING

&altConv01=EMC-24670

or

&altConv01=LAST

MATCHING

CAMPAIGN ID

VALUE(S) ON

RESPONDENT'S

COOKIE

UP TO 70

ALPHANUMERIC

CHARACTERS

CASE-SENSITIVE

DON'T USE ANY OF THE GATEWAY VARIABLES

OPTIONAL

ONLY IF A TYPICAL QUERY STRING

(CONTAINING GP OR DCMP FOR EXAMPLE)

IN YOUR WEB PROGRAMMING CONFLICTS

WITH THE RECORDING OF HBX CAMPAIGN

CONVERSIONS

ONLY ONE ALTERNATE NAME VALUE PER PAGE IS

POSSIBLE, REGARDLESS OF NUMBER OF ACCOUNTS

ON PAGE. IF MULTIPLE ACCOUNTS DEFINED FOR

PAGE, SAME ALTERNATE NAME CHECKING IS

APPLIED TO ALL POTENTIAL STATIC CAMPAIGN

CONVERSIONS SENT IN URL

(1) HBX CHECKS IN THE URL QUERY-STRING FOR

A NAME (OF A NAME-VALUE PAIR) WHICH MATCHES

THE VALUE ASSIGNED TO

HBX.GP="_P::<QUERY_STRING_PARAMETER>";(1A)

IF VALUES MATCH, AND THE CAMPAIGN ID(S)

VALID, THE CAMPAIGN ID(S) PASSED IN THE

QUERY STRING AS VALUE(S) (OF

QUERY_STRING_PARAMETER) IS/ARE RECORDED ON

THE COOKIE AS CONVERSION(S).

(1B) IF NO MATCH, HBX CHECKS VALUE(S)

ASSIGNED TO HBX.GP VARIABLE IN PAGE CODE.

(1C) IF VALUE(S) OF HBX.GP IS/ARE VALID

CAMPAIGN ID(S), CONVERSION(S) IS/ARE

RECORDED ON THE COOKIE

(1D) IF NOT VALID CAMPAIGN ID(S), NO

CONVERSION(S).

Page 297: Hitbox Installation Guide

| PageI-11 13 January 2008

VARIABLE IN PAGE CODE

DESCRIPTION OF VARIABLE

What purpose variable serves in page code

DEFAULT VALUE

Initial value assigned to variable in page code

EXAMPLES IN PAGE CODING

NOTE: SOME PAGE CODE VARIABLES

(INDICATED BELOW) MUST BE USED

ALONG WITH ON-LINE CAMPAIGN

METHOD

EXAMPLES FOR ON-LINE PAGE CODING

Campaign information that can alternatively be passed via on-line method

DEPENDENCIES

What must exist before HBX can use this variable to track data

N/A = NO

DEPENDENCIES

VALUE LENGTH AND

CHARACTER TYPE

RESTRICTIONS

ILLEGAL PAGE CODE CHARACTERS

' " & ! # $ % ^ * : | \ / > < ~ ;

CLASSIFICATION IN HBX PAGE CODE

(EDITABLE / REQUIRED / OPTIONAL)

Refer to HBX Page Code section

WHEN ARE CHANGES REQUIRED TO DEFAULT

VALUE IN PAGE CODE?

MULTIPLE ACCOUNTS BEHAVIOR

Refer to the Multiple Accounts: Coding Campaigns section

NOTES

hbx.dcmp= "_P::<query_string_parameter>";

ALTERNATE DYNAMIC CAMPAIGN QUERY

PARAMETER - ALTERNATIVE TO DEFAULT

DCMP NAME FOR PARSING NAME-VALUE

PAIRS IN QUERY-STRINGS SENT TO

TRIGGER RESPONSE TO DYNAMIC

CAMPAIGNS

BOTH LANDING PAGE & ON-LINE

METHODS MUST BE USED:

RESPONSE LANDING PAGE

hbx.dcmp="_P::altDynCamp01";

AND

ON-LINE CAMPAIGN RESPONSE QUERY

STRING

&altDynCamp01=EMC-24670

N/A UP TO 70

ALPHANUMERIC

CHARACTERS

CASE-SENSITIVE

DON'T USE ANY OF THE GATEWAY VARIABLES

OPTIONAL

ONLY IF A TYPICAL QUERY PARAMETER

(CONTAINING GP OR CMP FOR EXAMPLE) IN

YOUR WEB PROGRAMMING CONFLICTS WITH

THE RECORDING OF HBX CAMPAIGN

CONVERSIONS

ONLY ONE ALTERNATE NAME VALUE PER PAGE IS

POSSIBLE, REGARDLESS OF NUMBER OF ACCOUNTS

ON PAGE. IF MULTIPLE ACCOUNTS DEFINED FOR

PAGE, SAME ALTERNATE NAME CHECKING IS

APPLIED TO ALL POTENTIAL DYNAMIC CAMPAIGN

RESPONSES SENT IN URL

(1) HBX CHECKS IN THE URL QUERY-STRING FOR

A NAME (OF A NAME-VALUE PAIR) WHICH MATCH

THE VALUE ASSIGNED TO

HBX.DCMP="_P::<QUERY_STRING_PARAMETER>";.

(1A) IF VALUES MATCH, AND THE CAMPAIGN ID IS

VALID, THE CAMPAIGN ID PASSED IN THE QUERY

STRING IS RECORDED ON THE COOKIE AS A

DYNAMIC CAMPAIGN RESPONSE.

(1B) IF NO MATCH, HBX CHECKS VALUE ASSIGNED

TO HBX.DCMP VARIABLE IN PAGE CODE.

(1C) IF VALUE OF HBX.DCMP IS VALID FOR A

DYNAMIC CAMPAIGN ID, A DYNAMIC CAMPAIGN

RESPONSE IS RECORDED ON THE COOKIE

(1D) IF NOT A VALID CAMPAIGN ID, NO

RESPONSE.

hbx.dcmpe

dynamic campaign expiration date

RESPONSE LANDING PAGE EXAMPLE

hbx.dcmpe="2005:02:09";

A DYNAMIC

CAMPAIGN

PREVIOUSLY

DEFINED

A VALID DATE IN THE

FORMAT YYYY:MM:DD

YYYY - FOUR-DIGIT

OPTIONAL

WHEN SPECIFYING AN END DATE FOR A

DEFAULT VALUE OF THIS VARIABLE IS NO END DATE

FOR DYNAMIC CAMPAIGNS

Page 298: Hitbox Installation Guide

| PageI-12 13 January 2008

VARIABLE IN PAGE CODE

DESCRIPTION OF VARIABLE

What purpose variable serves in page code

DEFAULT VALUE

Initial value assigned to variable in page code

EXAMPLES IN PAGE CODING

NOTE: SOME PAGE CODE VARIABLES

(INDICATED BELOW) MUST BE USED

ALONG WITH ON-LINE CAMPAIGN

METHOD

EXAMPLES FOR ON-LINE PAGE CODING

Campaign information that can alternatively be passed via on-line method

DEPENDENCIES

What must exist before HBX can use this variable to track data

N/A = NO

DEPENDENCIES

VALUE LENGTH AND

CHARACTER TYPE

RESTRICTIONS

ILLEGAL PAGE CODE CHARACTERS

' " & ! # $ % ^ * : | \ / > < ~ ;

CLASSIFICATION IN HBX PAGE CODE

(EDITABLE / REQUIRED / OPTIONAL)

Refer to HBX Page Code section

WHEN ARE CHANGES REQUIRED TO DEFAULT

VALUE IN PAGE CODE?

MULTIPLE ACCOUNTS BEHAVIOR

Refer to the Multiple Accounts: Coding Campaigns section

NOTES

hbx.dcmpe""; ON-LINE CAMPAIGN RESPONSE EXAMPLE

&DCMPE=2005:02:09

YEAR

MM - ZERO-

PADDED TWO-

DIGIT MONTH

DD - ZERO-PADDED

TWO-DIGIT DAY

DYNAMIC CAMPAIGN

hbx.dcmpre

dynamic campaign response expiration date

hbx.dcmpre="";

RESPONSE LANDING PAGE EXAMPLE

hbx.dcmpre="2005:02:09"; hbx.dcmpre="10d";

A DYNAMIC

CAMPAIGN

PREVIOUSLY

DEFINED

A VALID DATE IN THE

FORMAT

xd

X - ANY INTEGER

ABOVE 1

d - number of days

or

OPTIONAL

WHEN SPECIFYING AN END DATE FOR

RESPONSES TO A DYNAMIC CAMPAIGN

DEFAULT VALUE OF THIS VARIABLE IS NO END DATE

FOR DYNAMIC CAMPAIGN RESPONSES

ON-LINE CAMPAIGN RESPONSE EXAMPLE

&DCMPE=2005:02:09 &DCMPE=10D

Page 299: Hitbox Installation Guide

| PageI-13 13 January 2008

VARIABLE IN PAGE CODE

DESCRIPTION OF VARIABLE

What purpose variable serves in page code

DEFAULT VALUE

Initial value assigned to variable in page code

EXAMPLES IN PAGE CODING

NOTE: SOME PAGE CODE VARIABLES

(INDICATED BELOW) MUST BE USED

ALONG WITH ON-LINE CAMPAIGN

METHOD

EXAMPLES FOR ON-LINE PAGE CODING

Campaign information that can alternatively be passed via on-line method

DEPENDENCIES

What must exist before HBX can use this variable to track data

N/A = NO

DEPENDENCIES

VALUE LENGTH AND

CHARACTER TYPE

RESTRICTIONS

ILLEGAL PAGE CODE CHARACTERS

' " & ! # $ % ^ * : | \ / > < ~ ;

CLASSIFICATION IN HBX PAGE CODE

(EDITABLE / REQUIRED / OPTIONAL)

Refer to HBX Page Code section

WHEN ARE CHANGES REQUIRED TO DEFAULT

VALUE IN PAGE CODE?

MULTIPLE ACCOUNTS BEHAVIOR

Refer to the Multiple Accounts: Coding Campaigns section

NOTES

ON-LINE CAMPAIGN RESPONSE EXAMPLE

&DCMPE=2005:02:09

A VALID DATE IN THE

FORMAT

YYYY:MM:DD

YYYY- FOUR-DIGIT

YEAR

MM - Two-digit zero-padded month

DD - TWO-DIGIT

ZERO-PADDED DAY

Page 300: Hitbox Installation Guide

| PageJ-1

Appendix J: searchform.pl and Search Form - Internal Search Tracking

The following code sample implements a simple perl script to feed keyword and search attribute values passed in from an input form of your Web page. The driver (index.html) portion of the Web page containing the <FORM> element is listed below the script. The perl script assumes that you wish to track keywords as well as ev1.attr1 ev1.attr2 and ev3.attr3.

While this example does not demonstrate how to populate the value of ev1.results dynamically, one approach is to query the database used for searches for the number of matches for the keyword. Assign the returned value to the ev1.results variable. Note that if ev1.results = "0"; in the custom event section defined for the search results page, HBX will display the keyword submitted by the visitor in the Failed Keywords report.

## searchform.pl #!/usr/bin/perl use CGI; use strict; my $cgi = new CGI; my $keyword = $cgi->param('keyword') or 'default'; my $numberofresults = $cgi->param('numberofresults') or 'default'; ## assumes that value of attribute1 corresponds to value of hbx.attr1, used for searches by category. my $attribute1 = $cgi->param('attribute1') or 'default'; ## assumes that value of attribute2 corresponds to value of hbx.attr2, used for searches by brand. my $attribute2 = $cgi->param('attribute2') or 'default'; ## assumes that value of attribute3 corresponds to value of hbx.attr3, used for search location ("this site" vs "the Web"). my $attribute3 = $cgi->param('attribute3') or 'default'; ## your choice of attribute my $attribute4 = $cgi->param('attribute4') or 'default'; my $attribute_blank; if ($attribute1 eq '') { $attribute1 = "attribute1-$keyword"; } if ($attribute2 eq '') { $attribute2 = "attribute2-$keyword"; } if ($attribute3 eq '') { $attribute3 = "attribute3-$keyword"; } if ($attribute4 eq '') { $attribute4 = "attribute4-$keyword"; } print "Content-type:text/html\n\n\n"; my $content; $content =qq( <title>Search Results Page</title> You searched for "$keyword." Here are your search results in the category "$attribute1." <br>

Page 301: Hitbox Installation Guide

| PageJ-2

You searched for "$keyword." Here are your search results by the "$attribute2" brand. <br> Here are your search results for "$keyword" based on matches found on "$attribute3." <br> You have $numberofresults results. <br> Here are your search results for "$keyword" filtered by "$attribute4." <br> <!-- OMNITURE CODE HBX2.0 (Universal)--> <!--COPYRIGHT 1996 - 2008. OMNITURE, INC. ALL RIGHTS RESERVED. U.S.PATENT No. 6,393,479B1 and 6,766,370. MORE INFO: http://www.omniture.com/privacy/ --> <script language="javascript"> var _hbEC=0,_hbE=new Array;function _hbEvent(a,b){b=_hbE[_hbEC++]=new Object();b._N=a;b._C=0;return b;}var hbx=_hbEvent("pv");hbx.vpc="HBX0200u"; //BEGIN EDITABLE SECTION //CONFIGURATION VARIABLES hbx.acct="DM111222333444";//ACCOUNT NUMBER(S) hbx.gn="hg123.hitbox.com";//GATEWAY NAME hbx.pn="PUT+PAGE+NAME+HERE";//PAGE NAME(S) hbx.mlc="CONTENT+CATEGORY";//MULTI-LEVEL CONTENT CATEGORY //REMAINING PAGE VARIABLES ARE ALL OPTIONAL //ACTION SETTINGS hbx.fv="";//FORM VALIDATION MINIMUM ELEMENTS OR SUBMIT FUNCTION NAME hbx.lt="manual";//LINK TRACKING hbx.dlf="n";//DOWNLOAD FILTER hbx.dft="n";//DOWNLOAD FILE NAMING hbx.elf="n";//EXIT LINK FILTER //POPULATION GROUPS AND FUNNELS hbx.seg="";//POPULATION GROUPS hbx.fnl="";//FUNNELS //CAMPAIGNS hbx.cmp="";//CAMPAIGN ID hbx.dcmp="";//DYNAMIC CAMPAIGN ID hbx.dcmpe="";//DYNAMIC CAMPAIGN EXPIRATION IN YYYY:MM:DD FORMAT QUERY OR VALUE hbx.dcmpre="";//DYNAMIC CAMPAIGN RESPONSE EXPIRATION IN YYYY:MM:DD FORMAT QUERY OR VALUE hbx.hra="";//RESPONSE ATTRIBUTE hbx.hlt="";//LEAD TRACKING hbx.hla="";//LEAD ATTRIBUTE hbx.gp="";//CAMPAIGN GOAL hbx.hcn="";//CONVERSION ATTRIBUTE hbx.hcv="";//CONVERSION VALUE hbx.cp="null";//LEGACY CAMPAIGN hbx.cpd="";//CAMPAIGN DOMAIN //CUSTOM VARIABLES hbx.ci="";//CUSTOMER ID hbx.hc1="";//CUSTOM 1 hbx.hc2="";//CUSTOM 2 hbx.hc3="";//CUSTOM 3 hbx.hc4="";//CUSTOM 4 hbx.hrf="";//CUSTOM REFERRER hbx.pec="";//ERROR CODES //INSERT CUSTOM EVENTS var ev1 = _hbEvent("search"); ev1.keywords = "$keyword";

Page 302: Hitbox Installation Guide

| PageJ-3

ev1.results = "$numberofresults"; ev1.attr1 = "$attribute1"; ev1.attr2 = "$attribute2"; ev1.attr3 = "$attribute3"; ev1.attr4 = "$attribute4"; //END EDITABLE SECTION </script><script language="javascript1.1" src="http://YOURSERVER/hbx.js"></script> <!--END OMNITURE CODE-->); print $content; ==================== index.html // search form code for a Web page. <!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN"> <HTML> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <!-- Other header information --> </HEAD> <BODY> <!-- Other page content --> <FORM action="http://YOURSERVER/cgi-bin/searchform.pl" method="post" enctype="multipart/form-data"> <TABLE> <TD>&nbsp;</TD> </TR> <TR> <TD> What are you looking for? &nbsp; </TD> <TD> <INPUT type="text" name="keyword"> </TD> </TR> <!--<TR> <TD> Number of search results:&nbsp; </TD> <TD> <INPUT type="text" name="numberofresults"> </TD> </TR>--> <TR> <TD> What category of product are you searching for? &nbsp; </TD> <TD> <SELECT NAME="attribute1"> <OPTION VALUE="Winter_wear">Winter wear <OPTION VALUE="Sports_attire">Sports attire <OPTION VALUE="Lingerie">Lingerie <OPTION SELECTED>select a category </SELECT> </TD> </TR> <TR> <TD> Choose from a variety of name brands:&nbsp; </TD> <TD> <SELECT NAME="attribute2">

Page 303: Hitbox Installation Guide

| PageJ-4

<OPTION VALUE="NinoCerutti">Nino Cerutti <OPTION VALUE="Fredericks_hwood">Fredericks <OPTION VALUE="Nike">Lingerie <OPTION SELECTED>select a brand </SELECT> </TD> </TR> <TR> <TD> Search this site or our entire catalog?&nbsp; </TD> <TD> <SELECT NAME="attribute3"> <OPTION VALUE="this">This site <OPTION VALUE="global">The entire catalog <OPTION SELECTED>select a location </SELECT> </TD> </TR> <!--<TR> <TD> Attribute 4:&nbsp; </TD> <TD> <INPUT type="text" name="attribute4"> </TD> </TR>--> </TABLE> </TD> </TR> </TR> <TABLE> <TR> <TD>&nbsp;</TD> <TD> <BR><INPUT type="submit" VALUE="I'm feeling confident!"> </TD> </TR> </TABLE> </FORM> </BODY> </HTML>