One of SiteCatalyst’s most basic yet pow­er­ful fea­tures is the abil­ity to use the page­Name vari­able to help give more mean­ing and con­text to your page view, visit, and pathing met­rics.  With a good page nam­ing sys­tem in place, any­body in your com­pany from the web ana­lyst novice to the high-powered exec­u­tive will be able to tell exactly which real-life web page is being referred to in each row of the Site­Cat­a­lyst pages report.  With­out a good page nam­ing sys­tem in place, how­ever, the poten­tial lies for con­fu­sion, ambi­gu­ity, and sor­row when your users work with Site­Cat­a­lyst.   And sor­row is some­thing we don’t want you to expe­ri­ence when work­ing with SiteCatalyst.

Every page needs a page name

When you run your pages report today, you will (hope­fully) see val­ues that are under­stand­able and “friendly” to some degree or another (e.g. “home page”, “cat­e­gory: women’s dresses”, “check­out: pur­chase com­plete”, etc.).  How­ever, you might also notice a few URLs in your pages report, which is a good sign that some­thing in your imple­men­ta­tion needs to be improved.  Wait, you say you haven’t seen any URLs in your pages report before?  Well, then do this:

  1. Log into SiteCatalyst
  2. Run the Site Con­tent > Pages Report
  3. In the fil­ter data box, type in “http” (with­out quotes, as seen above) then click on Go
  4. Wait for it… wait for it…

Voila!  You’ve now most likely pro­duced a list of URLs for pages on your site that have Site­Cat­a­lyst code but do not have the page­Name vari­able set within the Site­Cat­a­lyst code.   Hor­ri­ble, right?   Wrong!  This is excit­ing because you have an imme­di­ate oppor­tu­nity to improve your Site­Cat­a­lyst imple­men­ta­tion!  Go ahead and deliver this report to your devel­op­ment team and ask them to insert a value into the page­Name vari­able within each URL’s page code.    Remem­ber that if the page­Name vari­able is not set within the page code, then Site­Cat­a­lyst will auto­mat­i­cally assign the URL as the page name at the time of data collection/report processing.

As a backup solu­tion – but one that might not be fea­si­ble depend­ing on the amount of work – you can setup a series of Site­Cat­a­lyst (v15) pro­cess­ing rules to fill in the page­Name vari­able for these untagged pages.   The value of the page­Name vari­able can be set to what­ever you want depend­ing on the value of the URL passed in via the Site­Cat­a­lyst server call.

Now, if noth­ing was returned from your fil­tered search for “http”, then con­grat­u­la­tions, you are one of the very lucky few that have every sin­gle page tagged with a legit­i­mate page­Name value!   Give your­self a well-deserved pat on the back!

Every Page Name Needs a Page Type

Besides a few URLs, you might have also seen in your pages report some ambigu­ous val­ues like “Men’s”, “Check­out”, “13 inch Lawn Mower”, and so forth.  From these brief descrip­tions, you could prob­a­bly guess the spe­cific page each value is point­ing to, but with­out more detail and con­text in each value, you most likely will be off on your guess.  For exam­ple, the “13 inch Lawn Mower” value could either refer to a category/browse page that shows a list of 13 inch lawn mow­ers or it could refer to a prod­uct detail page that fea­tures a prod­uct with the lit­eral name of “13 inch Lawn Mower”.   Who knows?  Unless the page­Name value con­tains under­stand­able, orga­nized, and detailed infor­ma­tion, then you and your col­leagues will never know for cer­tain what pages are being viewed when you look at the Pages report.

So when it comes to a page nam­ing strat­egy, we in Adobe Con­sult­ing rec­om­mend that every page­Name value begins with at least the page type.   Record­ing the type of page being viewed is essen­tial both for orga­ni­za­tional pur­poses and so that you can know from a “hor­i­zon­tal” per­spec­tive how peo­ple move across your site as they progress through­out their visit.   Usu­ally, the most com­mon page types that we at Adobe Con­sult­ing have seen on every retail site include the following:

  • Home Page
  • Key­word Search Results
  • Browse
  • Prod­uct Detail
  • Shop­ping Cart
  • Check­out
  • Check­out: Pur­chase Complete
  • My Account
  • Infor­ma­tional Con­tent (e.g. pro­mo­tional infor­ma­tion, instruc­tional videos, etc.)
  • Com­pany Information

From these basic val­ues, you might be able to derive even more smaller and gran­u­lar page types.  For exam­ple, the “Browse” page type might be divided into the “Depart­ment Browse”, “Cat­e­gory Browse”, and “Sub­Cat­e­gory Browse” page types;  “Prod­uct Detail” pages might need to be sep­a­rated out from your “Prod­uct Quick View” lay­ers; the “Check­out” page types could be split out into each indi­vid­ual step of the check­out process (e.g. “Check­out: Ship­ping”, “Check­out: Billing”); etc.

The end goal is to ensure that every web page tem­plate that your devel­op­ers have used to build up your site matches up with a spe­cific page type.   Once the devel­op­ers match a page tem­plate with a page type, the remain­der of their work for set­ting the page­Name vari­able should be rel­a­tively easy to complete.

Here is an exam­ple of an awe­some imple­men­ta­tion of the Site­Cat­a­lyst page­Name vari­able, cour­tesy of beats​by​dre​.com (FYI — num­bers have been changed).  Notice how each value begins with a page type and that the con­text after the page type leaves no ques­tion as to what page each value is refer­ring to, specif­i­cally.  In cases where no more con­text is needed after the page type (e.g. the home page), the page­Name sim­ply remains equal to the value of the page type only.

With a page type at the begin­ning of the page­Name vari­able value, the Pages report is infi­nitely eas­ier to read and analyze.

Every Page Name Needs Context

beats​by​dre​.com is a rel­a­tively straight­for­ward site and thus, its Site­Cat­a­lyst users don’t require a lot of con­text to the page­Name val­ues in order to under­stand and inter­pret the data.   This serves the company’s pur­poses per­fectly but for sites that have a large num­ber of depart­ments, cat­e­gories, and sub­cat­e­gories, the page­Name val­ues will need to become more com­plex and var­ied in cor­re­la­tion with the site’s grow­ing complexity.

Regard­less of your site’s com­plex­ity, your goal is to ensure that every sin­gle page your site has a unique page­Name value asso­ci­ated with it.  To accom­plish this for large sites, your devel­op­ers shouldn’t have to hard code a value on each page; that approach could be way too time con­sum­ing.  Rather, they should be able to set the value of the page­Name vari­able dynam­i­cally based off of server-side code that they gen­er­ate within each of your sites’ page templates.

Or in other words, the devel­op­ers should make sure the page­Name is set equal to:

  • The type of page being seen (usu­ally derived from the page template)
  • Fol­lowed by a colon-space
  • Fol­lowed by the bread­crumb trail of the page (if applic­a­ble) or any other con­tex­tual infor­ma­tion that would help uniquely iden­tify that spe­cific page in con­trast to other pages on the site (usu­ally derived from the server-side code)

The colon-space that sep­a­rates the page type from the rest of the page con­text might seem like a triv­ial addi­tion, but it goes a long way in help­ing to orga­nize the report struc­ture and will allow your Site­Cat­a­lyst users to eas­ily “eye­ball” the pages report when they first open it.

She​p​lers​.com has done a fan­tas­tic job fol­low­ing these page nam­ing prin­ci­ples and, as a result, has been able to scale their page­Name val­ues to cover every page on their site (num­bers have been changed here as well):

Isn’t that so much eas­ier to read than what you (prob­a­bly) have right now?

On a side note, you’ll notice that the “search results” value in this exam­ple report is some­what of an “out­lier”.  In this case, the value is meant to cover every page view of Shepler’s inter­nal key­word search results page regard­less of the key­word used in the search.    As a best prac­tice, the key­word search results page should be the one excep­tion to the rule that every page on the site with unique con­tent needs a unique page­Name value.

In the end, the way you imple­ment the page­Name vari­able could be con­sid­ered a micro­cosm of your entire Site­Cat­a­lyst imple­men­ta­tion.  If you can get the page nam­ing right, then most likely you will get the rest of your imple­men­ta­tion done right as well.

Do you have any ideas that have worked for you? Feel free to post your comments/questions below!


Good post. Loved the simplicity yet the power of "http" search approach.