Travel Distance Calculator

Friday, April 6, 2012

The Case for Client-Side Omniture Implementations for Mobile

Any client-side data (details you cannot discern from the HTTP headers of the request to gateway) that you want to capture in the future, like the device’s screen size, color depth, image support, etc. requires development and testing. Any tracking of your own page features, like popup layers or JavaScript controls on a custom video player, require development and testing. There comes a point of diminishing returns where it becomes more cost-effective to switch to the AppMeasurement library because the logic has already been thoroughly thought-through, developed, and tested across devices.

The decision to make that switch depends on your business requirements. Right now your requirements maybe simple and your apps consist of simple pages. If either get more complex you may require client-side code.


Server-side tracking gateway pros:

1) One central code base to upgrade or fix to correct all mweb and mobile app tracking issues at once.
2) Client-side code is minimized to avoid technical differences and limitations across thousands of mobile devices. If you do enhance the client-side code you’ll have to test that it works on all devices.
3) Client-side code is minimized, which reduces page load time.

Server-side tracking gateway cons:
1) Any user interactivity that does not result in them loading the next page is not tracked without installing client-side code to handle that interaction and make a call to the gateway. This means developing server-side logic that has to be tested across all mobile devices.
2) Server-side tracking typically doesn’t account for cookie concepts, like persisting values for use on later pages, or counting the page number of the user’s visit.
3) Testing the data of sever-to-server calls is difficult. Drew and Ajay are discussing exposing details of log files already dedicated to the SiteCatalyst calls. Adam needs this to validate installations and troubleshoot defects.


Data points/features that cannot be obtained/achieved without client-side code:
* You do not need the AppMeasurement libraries for these but the library does handle them out-of-the-box

Device details:
- screen size
- color depth
- audio/video support
- image support

App usage details:
- Installs
- Upgrades
- Launches
- Crashes
- App ID

User interactivity:
- Click map / heat map
- Any clicks that don’t go to a full page, including file downloads and exit links
- Form error details, such as which field contained an error (assuming that you don’t handle form validation server-side).
- Custom video or audio player controls
- Slideshow controls, carousel scrolling
- Cookie-based tracking, like counting the page number (useful for identifying entry pages), or persisting values for later pages.

Wednesday, March 14, 2012

Omniture ClickMap and Mobile Sites

ClickMap will not function without the JS library (the s_code.js file) running on the page. ClickMap relies on the click detection built into that file and sets and retrieves cookies as the user goes from page to page. Some mweb sites do not include the s_code.js file, but instead rely on the mobile gateway to send calls from the web servers to Adobe's tracking servers.

You may come across other features that don't work with server-side tracking. Some features you can replicate to some degree by recreating the logic in your server-side code. But, some will require JavaScript to capture user interactions. If you are interested in recreating the logic within the mobile gateway, clearly define your business requirements. You may find that you don't need to replicate the visual overlay ClickMap provides. You might just need to know which links are clicked the most.

The AppMeasurement library is the way to go, be it JS, Flash, or for mobile apps. Server-side calls are limited and force you to recreate a lot of functionality.

Thanks to Adobe Consulting for this information!
Adam Berlinger

Monday, May 4, 2009

Site Visitors and Marketing Campaigns

I was talking to a friend of mine who happens to be a program director for a very large advertising agency here in Chicago. We were swapping notes on Web analytics vs. TV advertising when she made a very important statement: “I can’t stand it when I’m on a site on all these banner ad’s keep popping up on my screen.” Let’s think about that for a moment. How can we get the right message to the right people without annoying them? Have marketing campaigns turned into white noise that our end-users are starting to ignore? You bet they are! We can compare this to the phenomenon of a car alarm going off. Since no one pays attention, the alarm serves no purpose. This article attempts to overcome that.
In order to executing a successful Web campaign, we need to break things into some high-level components: (this is by no means an exhaustive list, just some high level items to get us on the right track!)
1. What is the goal of the campaign?
2. Who are we targeting?
3. How are we going to measure success vs. failure?
What do we want the campaign to accomplish? Driving more traffic to our site vs. selling off products on sale poses two completely different concepts and will require different types of campaigns. Perhaps an email marketing initiative would be more appropriate for driving closeout sales vs. an aggressive paid search on Google to drive more traffic to the site. See the difference? The important take-away here is to have a well thought out goal with baselines/benchmarks to compare the incoming data to.
Who are the end-users that you are trying to target? Are they Male runners? Fire arm owners? Teenagers? Visitor segmentation seems to be the most often ignored aspect of online marketing campaigns. Either that or it’s just not done correctly. The more we know about our intended audience, the more successful our campaign will be. Once you have defined your segment, research where your targeted audience “lives” and, thus, where best to launch your campaign. With me so far? Great!
How are you going to measure the click-throughs from your campaign? Your Web analytics package will need to be configured so that you can track each visit session from your campaign. In other words, are your visitors doing what you intended them to do once they landed on your site and is the content relevant they are looking for? Bringing visitors to your home page where they’ll have to hunt for the product/theme of your campaign is not strategically sound. Also Remember, that a landing page has a unique query parameter that identifies it as the “front door” to your site via your marketing campaign. Below is an example when I Googled “Hotels” and clicked on the paid search ad.

/App/ViewHotelSearchgcid=S11287x431&keyword=hotels_e&WT.mc_id=e2530&WT.mc_ev=click&WT.srch=1&DCSext.mc_kw=hotels
Lastly, some business analysis needs to be conducted before the campaign is pushed live that will determine the ROI of the campaign. In other words, constitute success or failure from a business perspective, not a technical one. Then start to tie in those that have converted to your backend systems so you can show your company how your campaigns are making money for your organization...not just driving traffic to the Web site. All of my points will need to be answered in an on-going manner. As such, make sure you have data that is easily accessible to you and your business stakeholders.

Thanks

Wednesday, December 17, 2008

Online Visitor Behavior, Offline Purchases and the Brand

Hello everyone, it's been a while since my last posting. Today I want to talk about online behavior towards offline purchases for the luxury watch maker, Rolex. Check it out, it's one of the most beautifully branded experiences on the Web. Please note that I'm not trying to promote the site as I no longer with for the agency that manages it.

Every month or so there would be a new watch promoted on the home page. For instance, today you'll see the Date Just 31 MM. We could not understand why women's watches weren't generating significant traffic...even when those that where promoted on the home page. My 1st conclusion was that not a lot of women were buying Rolex watches for themselves or that men weren't buying them as gifts. Was it the brand? Rolex is worn by successful BUSINESSMEN and men seem to covet their Rolex watches more than women. Or do they?

What we discovered via some due diligence with the Rolex dealers and social media was that women love Rolex watches and buy plenty of them. But they're purchasing the men's models for THEMSELVES! It turned out that women liked the larger dials on the men's watches and therefore did not purchase the watches meant made for them. See how the brand can sometimes poison/determine our conclusions? Thus, the visitor behavior (in this case) accurately represented offline purchases. Please share your experience and input to this article!

Tuesday, November 27, 2007

The Most Expensive Search Keywords

Mesothelioma. Law firms pay hundreds of dollars, as in Benjamins, per click for the hopes of landing cases that pay millions in compensatory damages. The context here is demand. The stronger the pull on specific key words, the more the customer is going to have to pay for them. Never forget that the time of day/night is a very factor as well. Google has a great tool to help you search for CPC for Keywords. Check out this site for a more complete list of the most expensive search terms and Xendant for the most profitable. There are many other sites and blogs that discuss this very interesting topic in detail.

"It's cost/day (keyword price X clicks/day) that makes you rich, not keyword price itself," Xendant.

Thursday, November 15, 2007

108 lbs of Gasoline??? Applying visits to pages...

...is like gaging gas consumption by pounds. Would you fill your car up with 100 LBS of gasoline? I bet you're scratching your head or clicking over to Google to find out how much a gallon of gasoline weighs, 6 - 7 LBS depending on the tempurature when you weigh it and if its deisel or not. Lots of different factors can effect the weight of gasoline; similar to the multi-faceted aspects that determine an actual visit. Not to mention our frame of reference, we're supposed to deal with liquids in terms of volume. And we're supposed to compute page usage via page views.

Let's not get confused with "Single Page Visits," visit sessions where visitors only view one page. Just my thought on a Thursday night.

Friday, November 9, 2007

Measuring Internal Search

Hello again everyone, it's been a while since my last post. Today I'd like to talk about internal search and how best to approach measuring it. Almost any analytics solution will allow you to track raw instances of each term entered into a site's internal search engine. In fact, many search applications will provide analytics reporting to the business users. But the key here, along with anything else in this space, is how to act on this information.

OK, so you've tagged your site to track each search term and you know what you're visitors are searching for, great! Now what? First and foremost, DO NOT ASSUME that visitors are searching from just your "home page." For some reason, many analysts (including myself) think of search in terms of landing on an unfamiliar site. Is search enabled/persistent across every page within your site? I hope so! If that is the case, then you need to pass the page the visitor was on when they executed a search, the term they entered and the content they viewed as a result of their search. How? By appending unique parameter strings to your URLs and pass that information to your reporting tool.

Let's take a look at what I mean via amazon.com. The screen shot below illustrates what content I'm viewing, found their via their navigational links. In this case, it a Samsung HDTV that' I'm trying to talk my wife into buying so we can watch the Super Bowl, er, I mean cuddle up and watch a nice movie together.




Take a good look at the Page title and URL. It contains the actual model number of the product I'm looking at and the site section that I'm in. (This is a great example as to the power of parameter strings and relevant page titles towards SEO.)

Let's see what happens when I search for Invicta watches:




The page title and URL indicates what page/section I was on when I searched for "Invicta!" Let's look close at the query parameter string.
  • ?url=search-alias%3Daudio-video&field-keywords=Invicta&x=16&y=16

"url=Search-alias" tells us that a search was executed and "field-keywords=Invicta" gives us what I entered. You could pass these entities to separate reports depending on what analytics package you are using. Navigational analysis will tell us what I clicked on within the "Search Results" page. If you cannot track this kind of information and aggregate into something actionable, then get your analytics vendor in to make it work or dump them!

So now what do we do? Strategize on how you're going to act on this information. What business problems can I solve? If I cannot get to certain content easily while I'm deep within the bowels of your site, perhaps you'll need to evaluate your navigational design. Another great idea is to create a frame that provides a "Top 10 or 20 Items Searched For" and have it persist throughout the site. I hope you enjoyed this post and welcome replies to it!

Thanks,
Adam


Wednesday, May 23, 2007

Authenticated UserID vs. Unique Visitor

Many applications require end-users to login in order to access there content. As such, we decided to pass the Authenticated UserID, e.g. aberlinger, of each visitor via sProp1 in Omniture. EVERY (yes every) user must login to access these sites. We started to notice a significant difference between unique visitors and authenticated userID's. Check out the stats below for March 2007:

  • 30,710 unique visitors
  • 19,708 authenticated userID's

How is this possible? What are the reasons driving the discrepancies in the data? We first need to understand how our analytics solution determines unique visitors as each package has its own proprietary method to calculate unique visitors:

SiteCatalyst determines unique visitor information using several technologies. The primary method of calculating unique visitors is by setting a persistent cookie on the visitor’s browser to uniquely identify the visitor. Cookie technology helps to avoid common pitfalls, for example, IP Pooling, caching, or tracking visitors behind a firewall, when counting unique visitors. If the visitor has disabled cookies on their browser, or if the visitor’s browser does not support persistent cookies, Omniture uses a combination of the IP address and the user agent string to determine if a visitor is unique or not. SiteCatalyst reports a small percentage (usually 1-2%) of visitors who do not support cookies.

Did you notice "cookies" in Omniture's definition above? Perhaps we should research cookies and their impact on analytics data. ComScore and many industry experts have found that cookie deletion can be as high as 40%! Have I totally ruined your day? Are you questioning the sanctity of your reports, especially the ones that end up on your CEO's desk? Wait, it gets worse. I ran some reports which illustrated users logging into our sites from multiple machines, IP addresses and with different browsers, yikes!!! Not to worry, there is a solution!

What we did was implement what Omniture refers to as "Visitor Optimization" where Omniture's proprietary/cookie-dependent visitor ID is replaced with our unique authenticated UserID. Once a visitor logs into the site, their authenticated userID gets recorded as a unique visitor. This takes IP addresses, cookies, and user-agent strings out of the equation, woo-hoo! The trick is to make sure that the authenticated UserID's are passed to each page viewed by each visitor. Guess what? It's working! The numbers match!

Ask your analytics vendor if they can implement the same type of solution. However, the fact that your tool might indicate that your site attracted 1,000,000 visitors when it was actually 750,000 should not matter. Why? Because the percentages of your KPI's will not change. Remember, KPI's are a ratio of visitors to success events/conversion rates over a period of time. In other words, if 3% of your visitors purchase a product, generate a lead or apply for a job...the 3% is what you should be focused on improving in context of the total visitors. While 3% of 750,000 is obviously less than 3% of 1,000,000...the patterns you notice on your site remain the same. I hope this helps, Adam.

Monday, May 7, 2007

Key Performance Indicators

Someone on the Yahoo! forum asked is there where any good articles or opinions on what the KPI's should be for their B2B site. What I found interesting is why someone would go to external resources for help in determining KPI's for their site. Is that what he was really asking for? A simple list? I hope not!

In my humble opinion, the definition of and the process for determining KPI's are what really matter when approaching what to measure on your site: B2B, B2C or B2E. Eric Peterson does a great job of defining KPI's in his book, "The Book of Key Performance Indicators." Once you are comfortable with the terminology, start peeling the onion of your site by asking questions.

  1. What is the business purpose behind the site?
  2. What do I want my visitors to do while they are on the site?
  3. What are the success events on my site?
  4. What are the goals of the site over a specified period of time?

Now you'll start to give some context behind the purpose of your Web site and what you need to measure for continued success. Remember, each site is different...it's goals and business drivers will change over time as things evolve.

Of course, business stakeholders almost always gut hung up on the raws numbers and freak out when the exact totals don't look right. This is when you need to hold your stakeholders accountable by asking how their "traditional" metrics have helped them in the past. What actions have they been able to take by knowing the total of unique and repeat visitors? Then watch their eyes glaze over or stump that their management demands those numbers. Please remember folks that analytics solutions are not calculators nor were they meant to be. Get comfortable with the terminology and create a process for solving business problems by asking the right questions.

Tuesday, April 3, 2007

W3C Extended Log File Format (IIS 6.0)

For those of us that work with IIS log files, enjoy the table below. The challenge is to know which fields within the logs will provide you with actionable data. For instance, will knowing the User-Agent string of each visitor to your site help your business? Eric Peterson covers this topic very well in his book, "Web Analytics Demystified." It would also be helpful to understand how to enable/disable specific fields within IIS manager along with the status codes for each server call.

The W3C Extended log file format is the default log file format for IIS. It is a customizable ASCII text-based format. You can use IIS Manager to select which fields to include in the log file, which allows you to keep log files as small as possible. Because HTTP.sys handles the W3C Extended log file format, this format records HTTP.sys kernel-mode cache hits.

FieldAppears AsDescription Default Y/N

Date

date

The date on which the activity occurred.

Y

Time

time

The time, in coordinated universal time (UTC), at which the activity occurred.

Y

Client IP Address

c-ip

The IP address of the client that made the request.

Y

User Name

cs-username

The name of the authenticated user who accessed your server. Anonymous users are indicated by a hyphen.

Y

Service Name and Instance Number

s-sitename

The Internet service name and instance number that was running on the client.

N

Server Name

s-computername

The name of the server on which the log file entry was generated.

N

Server IP Address

s-ip

The IP address of the server on which the log file entry was generated.

Y

Server Port

s-port

The server port number that is configured for the service.

Y

Method

cs-method

The requested action, for example, a GET method.

Y

URI Stem

cs-uri-stem

The target of the action, for example, Default.htm.

Y

URI Query

cs-uri-query

The query, if any, that the client was trying to perform. A Universal Resource Identifier (URI) query is necessary only for dynamic pages.

Y

HTTP Status

sc-status

The HTTP status code.

Y

Win32 Status

sc-win32-status

The Windows status code.

N

Bytes Sent

sc-bytes

The number of bytes that the server sent.

N

Bytes Received

cs-bytes

The number of bytes that the server received.

N

Time Taken

time-taken

The length of time that the action took, in milliseconds.

N

Protocol Version

cs-version

The protocol version —HTTP or FTP —that the client used.

N

Host

cs-host

The host header name, if any.

N

User Agent

cs(User-Agent)

The browser type that the client used.

Y

Cookie

cs(Cookie)

The content of the cookie sent or received, if any.

N

Referrer

cs(Referrer)

The site that the user last visited. This site provided a link to the current site.

N

Protocol Substatus

sc-substatus

The substatus error code.

Y

Saturday, March 31, 2007

Google Search Terms

I was talking with a Google Account Manager when he asked me: "If you had a web site that sold shoes, which search key word would be more important...shoes or Nike Pegasus?" Interesting question, isn't it? While shoes is a more general term, Nike Pegasus focuses on a specific product a seasoned Googler (Yahoo'er, MSN'er) would enter. While Internet shoppers become more sophisticated and technology continues to evolve...the answer will most always depend on the ROI of each Ad word across a specified period of time, e.g. December 2006.

For our fictitious web site, let's assume we averaged 850,000 unique visitors per month. Out of those 850,000 visitors, 3% convert by buying purchasing shoes for at least $50 per pair, $1,275,000. Now let's apply the statistics for the key word "Shoes" during December 2006:

  • Drove 1,000,000 unique visitors to the site during 12/2006.
  • 45% of those visitors where 1st time visitors = 450,000
  • 5% purchase conversion rate at $75 each = $3,750,000
  • Cost per click = $.60 > $3,750,000 - $600,000 = $3,150,000 profit.
  • 30% conversion rate for registering new accounts = 300,000

Results for "Nike Pegasus:"

  • Drove 200,000 unique visitors to the site during 12/2006
  • 55% of those visitors where new to the site = 110,000
  • 8% purchase conversion rate at $120 each = $1,920,000
  • Cost per click = $.50 > $1,920,000 - $100,000 = $1,820,000
  • 40% converted by registering for new accounts = 80,000

Although "shoes" is a more generic keyword that "Nike Pegasus," its PPC is 20% greater due to its popular demand by the marketplace. "Shoes" drove more monthly unique visitors to our site than any other month for all of 2006 and earned $1,330,000 more in profit than "Nike Pegasus." Not bad, right? But check this out...The overall KPI conversion rates for Nike Pegasus is actually greater than the conversion rates for shoes. In other words, while "Nike Pegasus" drove less traffic and profit to our site than "shoes," its conversion rates as a percentage were actually higher! A greater amount of visitors per keyword spent more money per purchase and registered for new accounts.

I'd appreciate your feedback. What action can we take with this data? What should we tell our fictitious client to do next? Spend more on specific terms or generic terms? I know this depends on the business goals. I'm actually dealing with this in my real life job...generic terms driving more traffic but generating less conversion rates as a percentage. When I brought this up with my client, they mentioned that driving a visitor to the site was considered a KPI, not just converting. I hope I inspired creative thought.

Monday, March 26, 2007

Web Analytics Solutions

For my 1st official post (woo-hoo!), I thought I would discuss what I have learned from working with some of the analytics solutions out there. I've implemented and worked with WebTrends, Omniture, Google Analytics and IBM's SurfAid, (now owned by Coremetrics)...log file analysis tools as well as JavaScript driven ASP solutions. I have built great relationships with these firms and had to disappoint them when it was time to move on. OK, enough of my rambling on. What's my point? Never, and I mean NEVER, fall in love with a particular solution or firm. No need to wave a flag or become emotionally attached to what is just a business solution. Take all of your emotions out of the equation and make decisions that will help you best achieve the results you demand. Partner with a vendor that understands your business goals and can demonstrate how to bend their technology to your business requirements over time. I imagine I am not the first to fall into this irrational pit-fall. If you begin to experience any of the symptoms below, seek help immediately:

  • Wearing only vendor labeled clothing at work and on Saturday nights
  • Clouded judgement and tunnel vision
  • Vendor specific bigotry
  • Encouraging your sales rep to run for president
  • Rage attacks on the Web Analytics Forum

The first step to recovery is to conduct group therapy sessions with your stakeholders/clients where you openly discuss the limitations of your current/perspective solution. There isn't an Analytics provider out there that can deliver 100% against your requirements. Over the past few years, Analytics software has become much faster, powerful and cheaper. The "commoditization" of this technology has driven our beloved vendors to merge and grow by acquisition at break-neck speed. It's a great time to be in the analytics industry! We have access to very powerful tools that can provide insight into our businesses like never before. By understanding your business goals and documenting their continual evolution, you will be able to mak sound business decisions.