The SiteCatalyst Attribute Importing and Naming Tool (SAINT) can be a remarkable resource in the right hands, particularly for campaign tracking. No matter your skill level, tracking can be complex business, especially when it comes to classifying inbound traffic correctly. With this tool, you have the ability to retroactively apply and edit metadata, adding considerable value to your analytics program without the complexity and level of effort required for tagging. As long as a unique key is captured, dozens of additional attributes can be uploaded, synchronized, and used for reporting, just like any other variable in Adobe Analytics.

However, the manual nature of the upload process can quickly become unwieldy and inefficient in the absence of best practice principles and processes. As an implementation specialist, I’ve worked with numerous clients to combat and manage this problem, helping them take the following steps when building campaign tracking implementation around SAINT classifications in Adobe Analytics.

Creating a proper campaign tracking code taxonomy

Most digital campaigns are tracked using a query string parameter (usually a variant of “cmpid”) that uniquely identifies the campaign in reporting. Theoretically, this could take the form of a unique string of random characters; for the purposes of SAINT, uniqueness is all that is required to differentiate between campaigns. However, classification rules and marketing channel processing rules allow you to categorize traffic based on the content of the campaign tracking code. Building a precise taxonomy for the format of the campaign tracking code can greatly simplify the process of keeping campaign data up to date.

Here’s an example:

cmpid=<Channel Type>_<Channel>_<Vendor>_<Unique ID>

ex., cmpid=PM_SM_Twitter_1a2b3c4567891230

In this scenario, “PM” (paid media) and “SM” (social media) allow the traffic to be categorized as paid social media in the marketing channels report, as well as any classification of the campaign variable that captures the channel. The inclusion of the vendor (Twitter) can also be passed to a classification using a rule. Additional attributes could hypothetically be added and other rules could be written. However, as I noted previously, these attributes may become hard to maintain depending on the volume of different campaigns being trafficked and the granularity of reporting desired. Generally speaking, the most important attributes for reporting purposes should be included in the taxonomy, as any attributes uploaded manually via SAINT will not be available in real time.

Once the taxonomy is established, it’s important that media teams understand how to construct and place the query string parameter properly in their posts/creatives; improperly constructed query strings can break tracking – or worse, break the page. One option to mitigate this risk is to distribute an Excel document with macros in place to automatically construct the query string based on inputted values of channel, channel type, and vendor. This can streamline the risk process if issues arise.

Simplifying the manual upload process

Any classification metadata that is not included in the taxonomy must be maintained via manual upload of classification data to Adobe. Keep in mind that SAINT only accepts data in a specific format. The columns must be in the correct order and only .txt or .tab file types are accepted. Gathering, collating, and formatting the data for upload can be a tedious process, especially when your organization has multiple independent media teams with different buying processes and schedules.

In order to minimize the level of effort required for manual uploads, make sure your media teams are able to keep a record of all campaigns they create, along with all required metadata. Distributing a template for this data can also simplify the process. For instance, have your media teams distribute an updated list of new campaigns and metadata on a weekly basis. If the spreadsheet you receive is formatted correctly, it won’t take much time to convert the data into a SAINT template and upload it. Eventually, you could have a tech resource write a script that automates this process altogether, thereby removing the ever-present specter of human error from the equation.

Navigating through one major drawback

One major drawback with SAINT classifications is that they cannot be easily uploaded to multiple report suites at once. The browser import tool only allows a single report suite at a time, and FTP import only allows up to five. This presents a problem if you need to make frequent uploads of campaign metadata, and keep the data synchronized across a large number of suites. As previously discussed, classification rules can help with this; a classification rule set can be created to identify and automatically classify any number of attributes based on identifiers in the query string parameter. However, it’s unlikely that you’ll be able to create a tracking code taxonomy that can successfully map to all of your classifications.

One way around this: if your implementation allows it, maintain a roll-up suite of data from different domains, and upload campaign data only to this suite. If your implementation doesn’t allow for this, it probably wasn’t built well in the first place.

Using SAINT with additional variables and integration with other systems

These principles can be applied to other variables and contexts, as well. While campaign tracking is an obvious example (as campaign data usually changes frequently over time), SAINT can also be used to classify any number of other variables, such as uploading user data tied to a unique user ID (no PII, of course).

In addition, the versatility of the campaign tracking taxonomy can allow for integration with other media trafficking systems, such as DoubleClick, CID, PID, AID, etc., which can all be concatenated into a single campaign string and synchronized later using SAINT upload. Ultimately though, SAINT can be a useful tool for classification and marketing channel rules, allowing your team to classify inbound traffic correctly.