How does the UTM Tracking Method for Urchin 5 work?
Urchin 5 has five different ways to track visitor data:
- Session ID
- Urchin Traffic Monitor (UTM)
- IP Only
While all methods will do a good job of correlating hits into user visits, there are a number of visitor loyalty and client reports that are only available when using the UTM system. This system was specifically designed to negate the effects of caching and proxying and allow the server to see every unique click from every visitor without significantly increasing the load on the server.
When a profile is set to run as UTM, the only hits that Urchin reports are those that are logged as a request to for the __utm.gif file. Urchin (for the most part) ignores most other hits that aren’t for the __utm.gif. The __utm.gif includes a long list of parameters, including screen color, page requested, title of the page, etc. These parameters are pulled into Urchin and become the foundation for many reports.
To give you a better understanding of how UTM works, here is an overview of the steps that is used with UTM:
- Visitor accesses a UTM enabled site
- __utm.js gets called, which writes 3 (or up to 5) cookies that contain unique visitor information, domain hashes (numerical representation of the domain), date/time of visit, and referring source (Google PPC, overture PPC, direct, organic search, email campaign, etc)
- __utm.js calls the __utm.gif hit and appends a query with the list of variables collected: (i.e. __utm.gif?utmn=3250303161&utmp=/StaticPage.php)
During processing for a UTM enabled profile,
- Urchin ‘finds’ the __utm.gif hits and only counts these as pageviews. Any page that did not have the __utm.js would not be able to call the __utm.gif and consequently not be counted in pageviews [*NOTE that only browsers can call the __utm.js script, so any bots, spiders, etc are automatically stripped from any results from the start]
- Subsequent hits that are not the __utm.js are used by Urchin to determine a visitors session time by the cookies and visitor returns.
One very important thing to keep in mind, Urchin will only look at the records in the log file that are are for the __utm.gif. If these records do not contain certain pieces of information, like the host name, you will not be able to create filters based on the missing information.