A campaign is a marketing effort that is used to accomplish the following objectives.

  • Drive more traffic to the site.
  • Improve campaign effectiveness.
  • Track campaigns by revenue at product level.
  • Track ROI on all paid advertising.
  • Track natural search for Search Engine Optimization.
  • Track all referrals contributing to a sale.
  • Evenly distribute revenue from sale across all referrals.

The first step in campaign management is to identify and capture each unique campaign ID, also called a tracking code. There are two basic ways to capture the tracking codes. The first ( and less common) way is to hard-code the tracking code to a specific landing page as shown in the following example.

    s.campaign = “tracking code”
    s.campaign = “radio_spot_xyz”

In this case, the tracking code “radio_spot_xyz” is set directly into the s.campaign variable. In this case, any time a visitor accesses the radio_spot_xyz campaign landing page, a click-through will be reported by Site Catalyst. However, this method is not the recommended one.

The most common way to know what someone click on is to include a “tacking code” in the query string of the URL, which is assigned to the destination page of the campaign’s link. The following two examples show how that could be set.

    - The destination URL of the Search Engine text ad includes the unique tracking code:
    - The destination URL of the banner includes the unique tracking code:

When someone lands on your site with this “tacking code” in the URL, you can dynamically extract it and place it into s.campaign variable. You can create a script to do this yourself if you want to, but Site Catalyst provides a JavaScript functions referred to as “plug-ins”. These plug-ins will be discussed more in the next section.

For now, is suffices to show the basic syntax that will be used to pull a value from the query string of the URL and populate the s.campaign variable. As you or your Marketing group decides on the schema that you will use for your tracking codes and the parameter name, it is nice to know that you can use ANY value for the parameter name of the tracking code, but it will obviously then need to be referenced in the JavaScript plug-in.

Assume that you have decided to use “cid” as the parameter name. Your campaign link to your site the might look like this:

If that is the case, then the call to the JavaScript plug-in would look for the “cid” parameter and populate the s.campaign variable with its value, as follows:


This line of code will exist in the Plug-ins are of global JavaScript file. This global reference will prevent you from having to have any specific code on several landing pages. This one line of code will cover situations where people land on any page of you site.

s.campaign Limitation
The s.campaign variable is a pre-named version of the custom conversion variables that will be discussed in the next section. Thus, they will have the same limitations. There are two main ones to know about:

1. They are limited to 100 bytes
2. The are “first time case sensitive.” This means that they store the initial case, but are then case insensitive. (Initially, you send in “aBc”, and afterward it is credited for any versions of abc, ABC, Abc, aBc, etc.)