VibeTalk by Vibe Technology
Just another WordPress.com weblog

Oct
01
[cache folder]

Improve PHP Performance

Last week I beefed up our blog server with gzip (Triple Website Performance With GZIP).  One reader – Radz – suggested I also investigate something called If-Modified-Since (IMS) for dynamic content.

Compressing script output is great, but what if you could frequently circumvent the need to run scripts altogether?

So, this week we’ll talk about another misunderstood and underused web technology – the IMS header.

Part I: Understanding IMS

Implementing IMS for WordPress-generated pages on VibeTalk proved to be more than a small task, so I’m going to break this tutorial into several parts:

  • Part I: Understanding IMS
  • Part II: Watching IMS In Action
  • Part III: Using IMS For Optimized RSS Feeds
  • Part IV: Implementing IMS On WordPress

As of this moment, I have a pretty good outline of these parts, but since I haven’t completed the other steps, this information may evolve as I learn more.  Our frustrations about this topic will evolve together!

First, let me take a stab at a simple explanation of IMS…

How Does It Work?

IMS is part of the HTTP specification designed to improve performance for scripts like PHP and ASP.  IMS is part of the overall concept of caching and is especially important for scripts that generate web pages “on-the-fly”.

Static HTML files have a built-in “last modified” timestamp, but because dynamic content is generated at the time of request, it is “last modified” for each request.  How can you determine if a page will be different than a previously-requested version?

Requests that include an IMS date allow the web server to determine if the content has changed since last requested.

Request / Response Overview

By requesting a web page with an IMS date, a browser is saying to the server, “I would like a web page that I previously received from you on this date. Has it changed since then?”

If there has been no change, rather than perform expensive database queries, the server replies with a 304 header, or “Not Modified”.

If the content has changed since last requested, then the server generates the content (executes the script or PHP file) and returns the data with a standard 200 header (“OK”).

[server illustration] (illustration: Server Interaction on 304 “Not Modified”)

By not re-running the script code, servers should be able to respond within a fraction of the time it would otherwise take.

IMS versus The Last-Modified Header

You may ask as I did, ”What’s the difference between IMS and the similar header value called Last-Modified?”  As it turns out, they are essentially two sides of the same coin.

A browser sends an IMS date to the server; a server returns a LM date to the browser.  The two work together along with another bit of information called an Entity Tag (ETag) to accurately identify a unique bit of content.

Entity Tags

An ETag is a unique content identifier generated by the server.  It can be “weak” or “strong” and is what’s called an “opaque tag”.  This just means that the value is entirely up to the server (and you), but it must be unique or your caching method may fail.

When a browser gets an ETag, it is required to save it and resend it with the next request as an If-None-Match header (more on the If-None-Match later).

Caching Affects More Than Your Browser

The big lesson so far is that caching is a large concept affecting more than one browser’s performance.  Mechanisms for caching were built to allow proxy servers, content aggregators and indexing robots (a.k.a. ”bots”)  to share the burden of distributing information and intelligently collect data.  This wide-ranging goal is part of why a simple IMS “switch” is more complicated than it seems.

Summary

If-Modified-Since is one of several caching headers designed to allow servers to circumvent the need to re-run scripts if content hasn’t changed since last requested.

Automated indexing tools and content aggregators can severely burden ALL servers by uneccesarily hogging internet bandwith.  Because of it’s general-purpose design, not only can IMS improve your server performance, it can potentially reduce overall Internet usage for RSS/ATOM feeds and indexing robots by orders of magnitude.

The browser/server responsibility for IMS are as follows:

Browser

  • If this page is in the local cache, the browser sends an IMS date when requesting the same page again
  • If the server provided one, the browser sends an ETag (unique identifier previously provided by the server for this document/web page)

Server

  • If requested content has not been modified since IMS date, the server skips page creation and sends a 304 Not Modified response
  • If requested content is updated, the server sends a page with new Last-Modified date
  • The server generates and sends an ETag

I, for one, want to do my part to make the Internet more efficient for all.

Stay tuned for more on how we can help make this happen…

Next » Part II: Watching IMS In Action

Sep
22
[blowfish]

Has Broadband Spoiled Us?

Do you know some of the most well-designed website home pages are approaching 400k???

More Automation Means More Code

Since discovering the power of WordPress themes and plug-ins, I’ve battled with growing page size and slowdowns from script complexity. With some of our pages approaching 150k, I felt guilty that I was getting sloppy.

After a day’s work, we now have the holy grail of performance boosts: GZIP compression. Scripts, CSS and HTML files are compressed around 3:1.

As of right now VibeTalk has more features than ever and the homepage is down to 70k!

My question is: why aren’t more people using this?

MyBlogLog Proves Themselves Again

Having compressed everything on our site with GZIP, I began to notice that external scripts (particularly usage analysis code) were now the largest files.  Happily, Google is on the bandwagon and GZIP’s their code, but others were not, so I went a’calling on one…

MyBlogLog Communities has got to be the most responsive startup I’ve seen.  I sent an enhancement request to earlier this week asking if they’d mind enabling GZIP for their tracking scripts. While I expected promptness, I was amazed that they enabled it in a matter of hours!

The script went from 7k to 2.5k. Sweet.

However, aside from Google, they seem to be the only ones doing it.  WebTrends, Site Meter and Performancing do not compress their tracking script files.

Uh Oh. What Happened To Web Design 101?

I got curious who else wasn’t using GZIP and guess what else I found? Compressed scripts were the least problem on most of these sites.  It is SHOCKING how many bloated sites there are out there.

The suprising part is that some of these sites are leaders in the blogging space.

Whereas MyBlogLog’s site is an excellent example of a clean, no frills interface, others seem to have forgotten the fundamentals of good web design. As I looked for GZIP usage I found some sites had huge graphics and CSS files.  

How Big Is Too Big?

Large pages (particularly your homepage) are *bad*. According to Web Site Optimization, one of Andy King’s many developer tool incarnations, webmasters should target a 30k overall page size. Some header graphics are larger than that!

At 30k, users on a 56k modem should be able to get the full page in about 8 seconds.

Historically, I’ve targeted a 50k home page, but in these days of fancy websites, even getting under 100k seems difficult.  That doesn’t take into account the server impact of dynamically-generated content (which taxes servers and can delay the start of content delivery).

The Best And Worst Sites

I picked these sites somewhat randomly but mostly because I frequent them.  They also tend to represent key “constituencies” in the web world.

Google, Yahoo and Microsoft are defacto leaders in web design, while the blogging sites are similar in purpose to VibeTalk.

I added a few design- and media-oriented sites because I look to them for ideas (the current and last theme here on VibeTalk are largely based on work from Solostream, one of many excellent WordPress-based sites you’ll find).

Tubetorial is interesting because they just came on the scene as a site that teaches you how to make websites and configure a WordPress blog. Ouch.  Very pretty, but an ironically bad example, IMHO.

Site Images Script CSS Total
Google 8641 0 0 10675 bytes
Photo Matt 15791 5313 6556 32426 bytes
WordPress 29609 5313 3563 40848 bytes
MyBlogLog 18218 4193 7687 49550 bytes
The Undersigned 23226 83094 11267 134567 bytes
Blogging Pro 59274 16230 10115 154496 bytes
Microsoft 63659 63062 11327 171812 bytes
Yahoo 97280 59392 2048 186368 bytes
Solostream 236543 11571 23184 327048 bytes
Tubetorial 329843 1011 16570 363887 bytes

 

GZIP To The Rescue

I originally started by using Dean Edward’s JavaScript Compressor/Obfuscator program with our biggest scripts. It compresses mightily (around 2:1), but unfortunately, if your function definitions aren’t terminated with semi-colons, the compressed code won’t decompress correctly.  I wasn’t about to go through every line of prototype.js to fix this!

This did allow me a careful review of several uneccesary plug-ins.  For example, I wouldn’t recommend using Edit N Place – handy as it is, it puts way too much unneeded admin code into your general UI.

Then I wanted to compress our CSS files and I found it’s way too difficult to maintain several color versions plus a compressed and uncompressed version for each.

After more searching, I stumbled across a few articles on enabling GZIP through .htaccess rules or through a two-step trick php.  Too difficult.

Finally, I found a great article that said IIS already has GZIP ability. Built in!

How To Enable GZIP

[tougher blowfish]

Once you’ve got the basics covered, GZIP can make your site lean and mean again.

The beauty of GZIP is that when enabled on your web server, *every* file can be compressed.  In addition to squashing javascript, html and css files, you can even zip the output of dynamic content provided by PHP and ASP.

Enabling GZIP on your server varies.  We use IIS6, and I found an excellent step-by-step guide by Scott Forsython on wwwcoder: IIS Compression in IIS6.0.  (BTW, I usually put these kind of links on the VibeTalk account at del.icio.us. If you subscribe by email or RSS, you’ll be notified when I post a new one).

Because IIS does not provide an interface for adding GZIP, you will have to edit the metabase.xml file directly. It is very VERY important to back up your metabase.xml file before starting. I spent an hour fixing the site after I mucked it up. Bad Joe.

The gist of what Scott shows you how to do is

  • Enable compression at the site level
  • Load the GZIP web service extension
  • Edit the metabase.xml file to indicate that you want to compress .php files on-demand at level 9 (0-10 scale)

For VibeTalk I have also added .css and .js files to the static file list.

What Not To GZIP

The one thing you probably don’t want to compress are graphics files – they’re already compressed. The same holds true for zip and other archive formats, obviously.

Summary

OK, so what’s the lesson here?

  • Be sure to regularly review your site for overly-large graphics and unecessary code
  • Turn on GZIP compression for everything except graphic and archive files on your web server
  • Make sure external script providers have GZIP turned on too

I hope each and every one of you gets your site home page below 100k. Good luck!

Sep
13
[video icon]

Turn Your Site Into a Video Blog

One of the many features in the works at Vibe Technology involves streaming video. A good part of last year was spent building a media operations center and discovering that delivering online video is not a trivial task.

How Much Server Horsepower Does It Take?

In addition to racks of powerful servers to transcode video for various connections and formats, you also need an enormous amount of storage capacity. An unconverted, full-length movie typically requires 4 Gigabytes per DVD disc. Converting that to a full-quality streaming format can take at least that much space.

Usually, you’ll want to pre-convert each movie into multiple formats for streaming to other devices over lower-bandwidth connections, so that means several versions of the same file to support each format.

The tiny movie used in the example below (decidedly low quality) requires approximately 3.75 megabytes per minute. A 90 minute movie at that size and quality would be 383 Megabytes!

Surprisingly, the storage capacity is the easy part. Learning about those various formats and delivery mechanisms… that’s the hard part.

Example: Hosting Video on Your Website

Let’s take a simple example that doesn’t require special server software. The following video clip is a Flash Video file (FLV) placed in a directory on our storage server. The file is relatively small and the FLV format allows a client to stream the video (simply put: streaming allows playing the file before it has entirely downloaded).

The file was originally encoded as a 30 fps, 320×260, 7 Meg Windows Media Video file then converted using Flash Professional. The result is a little larger, but FLV files stream a bit better:

Video: SarahPalooza2006.flv
Length: 2min 40sec
Format: 320×260 Medium Quality Flash Video (FLV)
File Size: Approx. 10 Megabytes

To display the file as an embedded video, we use an excellent free WordPress plug-in called Anarchy Media Player. This customizable plugin adds about 15k of script code to the site page and automatically plays FLV, WMV and MP3 files without launching a seperate program.

(VibeTalk video clip: Sarah Palooza 2006)

This works well and is nearly automatic, once you have everything setup. However, even without considering disk space, processing power and setup, it still takes time and costly software to perform conversions. And the problem gets trickier if you want something more robust, such as an actual streaming video server like Windows Media or Helix Server.

[logo]

YouTube Servers Are Better Than Yours

What if you could avoid the whole mess and let someone else do the work? As it turns out, the folks at YouTube have put quite a bit of money into virtually unlimited transcoding and storage servers. The best part is that it’s free!

Every video on the YouTube site has a small, almost unnoticable edit box that contains the script code to embed that video in a web page. To show an embedded video on your site, all you have to do is paste this code from any video page into a post or page on your blog:

12478
(screenshot: Video page at YouTube includes code for your site)

Example: Embedding an object from YouTube

First, you need create an account and upload your video file. YouTube doesn’t like our FLV file, so I uploaded the original, high-quality WMV file and allowed the site to convert it for me.

The dimensions were modified to stretch the video to 450×350, so the result is a somewhat grainy version of the video above. You can change the values to the original size of 320×264 or resize the video to YouTube default – your call.

Then paste your script code directly into a blog entry and you will get the following video display (if you want to try this without creating an account, feel free to copy/past from our code below)

(YouTube video clip: Sarah Palooza 2006)

One neat feature is the thumbnail that got created from a frame in the middle of the clip.

As you can see, the embedded player also includes a “share” button to allow viewers to easily share your video.

So what’s the catch?

There’s always a catch to free, right? As it turns out, there’s one here too:

  • the resulting video is not (easily) downloadable
  • the conversion process overlays a “YouTube” logo in the bottom right corner

12498
(screenshot: End of video page promotes related videos)

Having your video on their server also means that If you wanted to do your own advertizing, you’re out of luck there too.

How To Get All YouTube Options?

So you like the YouTube interface and are OK with the advertizing issue – how can you get the rest of YouTube’s functionality? As it turns out, there are a couple of handy plug-ins for that too!

MyTube by Vaam Yob

Vaam Yob recently created a WordPress plug-in called MyTube that allows bloggers to list their entire list of videos as a gallery of thumbnails with customizable CSS layout.

For an idea of what this does, check out the screenshot (I don’t have enough videos on YouTube to make testing interesting at the moment).

12493
(screenshot: YouTube gallery using MyBlog plug-in)

Video Blogger by Chad Lancour

Chad Lancour created an even more flexible plug-in called Video Blogger that not only allows easy YouTube integration, but Google Video, vSocial, and Dailymotion. The best part of this plug-in is that each video can be cached.

Caching means that you won’t need to depend on someone else’s servers for reliable delivery (but let’s face it, it’s their reliability that makes this whole project worthwhile, right? :-) ).

12495
(screenshot: YouTube video using WordPress plug-in)

Video Blogger doesn’t do anything automatic for displaying whole galleries, and the big the downside of this plug-in is that you’ll need to configure the CURL library (something I couldn’t do after 30 minutes of tinkering).

Summary

While professional video services will want to keep their whole shop in-house, the casual user can easily set up video blogging using WordPress, YouTube and one or more handy plug-ins like MyTube and Video Blogger. Surprisingly, the more you do this, the more you may want to rely on external services – their servers are faster and space is currently unlimited.

Who knows? Maybe your video will make the front page!

Sep
09

New Default Theme Selected

Uh oh, the site layout has changed again! I think you’ll like this new look, based on another Solostream Global Media WordPress theme called Torn.

We’ve modified the layout a bit and renamed it slightly to reflect the pattern of our color-based themes. This one allows you to switch basic color schemes, on-the-fly!

More Than Just a Pretty Face

Besides being a cleaner layout, you will notice a few more features for the site:

  • de.lico.us Links
    For those of you not in “the know”, this is an excellent service that allows sharing of bookmarks.
  • Polling Functionality
    A few sample polls will randomly show in the rightmost sidebar. Look for another post on how we plan to use polling.
  • Control Panel in Header
    When moving between major areas of the site, you lose the ability to login/logout. This will be more of a problem as we add more functionality (hint: we have something major coming soon!). I think this new login layout is a bit less obtrusive too.

12463
(screenshot: Torn Rainbow Theme)

Let’s Call It “BETA”

Hey, it works for Google! Seriously, the theme will still be undergoing much work, so please bear with little oddities. Call it progress.

NOTE: If you don’t see this new look, you need to delete your “cookies”. Firefox Users: press CTRL+SHIFT+Del
Internet Explorer: go to Tools/Options/Delete Cookies….

Sep
08
[Links image]

New feature of VibeTalk Posts

When viewing a single post (as opposed to a list of several posts like you get on the main VibeTalk page), you will now see a section called “Possibly Related Posts”.

This feature comes courtesy of Alexander Malov & Mike Lu.’s Related Posts WordPress plug-in.

This highly-configurable plugin automatically searches for the words in a post’s title and displays the top 5 matches at the bottom of a post. It is possible to change the

  • number of related posts listed
  • keywords used in the search (uses title by default)
  • format of the results (e.g. include the first NN words of the content vs. title only)

Let us know what changes you’d like made, if any.

To see an example, view the screenshot below or… go to the bottom of this post!

12471
(screenshot: Example post with related information)

Hopefully, this is just the beginning of automated research features yet to come for the site.

A Peek at the Future

If you really want to see where this is going, take a look at the latest Yahoo Messenger: they’ve implemented something called LiveWords to allow you to instantly search Yahoo for the words in your sentence.

12468
(screenshot: Yahoo IM version 9 features “LiveWords”)

Some words have prebuilt definitions, so you’ll see a seperate lookup link for these.

Now imagine being able to search any source by highlight words on this site…

Sep
04

[ratings]

Logo

Google Analytics Overview

In adding the Analytics service, Google provides a comprehensive product that can be used to complement Ad Sense or any other tracking a web owner might want.

Google has long been the number crunching titan in the web world and prove themselves yet again with this FREE service. They have more reports than you can shake an IP address at (I counted over 80 reports) and allow multiple sites with up to 10 unique administrators.

Setting Up the Service

Despite the sophistocation, the setup was just as easy as any other service. By adding a few lines to your template code, you can begin tracking web visitors immediately:

Users can manage websites from a top-level settings page. Each site can then be individually configured for filters and goals.
12286
(screenshot: Analytics Home)

What, exactly are your goals?
One of the more interesting features is the ability to track a visitor’s conversion to a defined goal. Goals can comprise a destination URL with several required or optional interim steps and/or specific commerce objectives. Many reports are cross-referenced with these goals.

We plan to test this neat feature by seeing how many users register a login on VibeTalk when viewing these reviews!
12351
(screenshot: Goal Setup)

The first reporting screen provides dashboards for three types of users: Executive, Marketer and Webmaster. The overview dashboards are identical between each, but as you move to Webmaster, you are offered dashboards of the more technical sort.
12290
(screenshot: Executive Overview Dashboard)

Marketers can see top keywords from search engines (you can even drill down and see which search engine).
12293
(screenshot: Marketing Summary Dashboard)

It is easy to see relative click activity and goal conversions with their page overlay (sadly, lots of clicks but NO goal conversion on the MyVibe Media Gallery!)
12345
(screenshot: Activity Overlay Report)

Other Reports
Many more reports are accessible in the sidebar that help administrators understand visitor behavior. Each report includes a handy help section at the bottom and related links along the right.

Unique Visitor Tracking
- Daily Visitors
- Visits & Pageview Tracking
- Goal Conversion Tracking
- Absolute Unique Visitors
- Visitor Loyalty
- Visitor Recency

Visitor Segment Performance
- New vs Returning
- Referring Source
- Geo Location
- Geo Map Overlay
- Network Location
- Language
- User-defined
- Domains

Web Design Parameters
- Browser Versions
- Platform Versions
- Browser & Platform Combos
- Screen Resolutions
- Screen Colors
- Languages
- Java Enabled
- Flash Version
- Connection Speed
- Hostnames

Marketing Campaign Results
- Campaign Conversion
- Source Conversion
- Medium Conversion
- Referral Conversion
- Campaign ROI
- Source ROI
- Medium ROI

Search Engine Marketing
- All CPC Analysis
- AdWords Analysis
- AdWords Keyword Positions
- Overall Keyword Conversion
- CPC vs Organic Conversion
- Keyword Considerations

Ad Version Testing
- Overall Ad A/B Testing
- Source Specific Testing
- Keyword Specific Testing

Content Performance
- Top Content
- Content Drilldown
- Content by Titles
- Dynamic Content
- Depth of Visit
- Length of Visit

Navigational Analysis
- Entrance Bounce Rates
- Top Exit Points
- Site Overlay
- Initial Navigation
- All Navigation

Goals & Funnel Process
- Goal Tracking
- Goal Conversion
- Defined Funnel Navigation
- Defined Funnel Abandonment
- Reverse Goal Path
- Goal Verification

Some of my Favorite Reports

It’s good to know that Firefox / Windows are the top combinations of browser and platform – that’s what we do most of our testing on.
12360
(screenshot: Browser and Platform Report)

Although visitors come from all over the world, most of my visitors come from California – Menlo Park, to be specific. Could there be a few VC firms keeping track of investments and potential competitors? :)
12363
(screenshot: Geo Location Report)

Of course, you can get a birds-eye view of geopraphic location!
12366
(screenshot: Geo Overlay Report)

As more users find Vibe Technology through search engines, I can see which of those result in useful conversions.
12354
(screenshot: Overall Keyword Conversions Report)

Summary

What can I say, except WOW! Before this review, I had no idea such a service existed. In previous companies, I’ve used WebTrends and created many custom reports, but they were never this easy to use (and certainly not free). And it seems we’ve only scratched the surface of Google’s capabilities.

If you are not tracking visitors, I recommend you drop what you are doing and start with Google Analytics. It may well be the only service you’ll need.

Sep
03
[graph image]

Measuring Web Success

You’ve built your website, promoted it and now you’re getting some real traffic.

How will you know the site is successful?

The next logical step is to figure out what visitors are viewing and whether they make it to the right destinations.

By analyzing mouse clicks, website owners can better understand a visitor’s interests.

Enter Web Analytics

Web analysis products work by quietly intercepting page requests and collecting simple facts about what gets clicked as users leave the page. Some services even monitor clicks that are not links (they treat the whole page as ‘clickable’ and remember the x,y coordinates of where you clicked).

Surprisingly, these monitoring techniques have almost no performance impact and can be combined offline with libraries of data to produce remarkable results.

Some of the basic questions you can answer include:

  • Are visitors new or returning ones?
  • Do they “bounce” away from the homepage or are they signing up for your services?
  • Which sites do they come from?
  • If they came from a search site, what were they looking for?

These are some of the very questions I was asking when I found Crazy Egg, a turnkey click analysis service. I quickly developed more questions and a new appreciation for how the Analytics industry could transform the focus of my efforts.

Available Products

While looking at Crazy Egg, I discovered several competing packages. Google, MyBlogLog, clickdensity and mapsurface were added to the list of prospects.  I ultimately dropped clickdensity and mapsurface, because I couldn’t get clickdensity to work and was denied an account on mapsurface.

Results Summary

Apples and Oranges?
After a few minutes of evaluating these products, I came to the conclusion that there is almost no comparison between them – each product tends to do something different. However, since I set out to find a usage analysis product, Google came out the clear winner.

While Crazy Egg is barely more than a feature of a web analytics package, Google provides a dizzying array of reporting options. MyBlogLog redeems itself here by offering a community service (in fact, makes no claim to replace standard analysis products, but rather to enhance them).

Viewing the Reviews
To read the detailed reviews and rate the services, you must first create an account (only a unique email is required). We hope you do not find this too invasive, but a unique user is required to track your votes. Also, we plan to track the conversion from reader to subscriber using these very same products!

We will post the results of user rating for all. Registered users will be able to view the details of our own tracking analysis for this post.

Crazy Egg
[Crazy Egg image]
VibeTalk Rating: [rate 1]

The clever heatmap overlay and interactive click counters are neat, but amount to little more than a flashy feature.

» Read the Crazy Egg Review

Google Analytics
[Google Analytics image]
VibeTalk Rating: [rate 5]

Google proves the titan of data crunching and emerges the clear choice for truly understanding your users. I can’t believe this service is free!

» Read the Google Analytics Review

MyBlogLog Communities
[MyBlogLog Dashboard]
VibeTalk Rating: [rate 3]
While not nearly as full-featured as Google Analytics, MyBlogLog achieves a happy medium between simplicity and effectiveness.

» Read the MyBlogLog Communities Review

Sep
02

[ratings]

MyBlogLog Overview

[MyBlogLog Logo]

MyBlogLog Communities aim to do much more than track clicks – they hope to facilitate relationships through their service.

By hosting a community of blog owners, they essentially categorize information for readers by linking similar sites through common usage over time.

The standard service is free and includes a 3-day trial of the “professional” package (which still seems to be working for me long after 3 days).

The professional package costs $3 per month or $25 per year and provides real-time versus periodically-updated statistics. It also includes more entries in the daily listing on the dashboard of top links.

Clicks do not a relationship make
As an interesting side note, earlier this week I accidentally posted a draft review summary that reached one interested reader within hours – an employee of MyBlogLog.

Read the rest of this entry »

Sep
02

[ratings]

 

Logo

Crazy Egg Overview

As a regular reader of WordPress and related site posts, I watched with anticipation the Crazy Egg groundswell over the past several weeks (the WordPress dashboard keeps me pretty up-to-date with related info on the ‘net).

Because VibeTalk is still new and gets low circulation, we didn’t have much at stake in our selection. Crazy Egg seemed as good a place as any to start our search for a solid usage analysis product.

We took a first look at Crazy Egg last week as they rolled out their offering. The service provides an easy-to-use overlay that shows click counts or a “heatmap” on top of your actual web page. Subscription plans start at free and go up to $99 per month with site volume. The free service allows 5,000 visits per month for two web pages.

Setting Up the Service

As promised, Crazy Egg was easy to set up, and configured in minutes. Like nearly all of these services, setup requires that you insert a reference to a small bit of scripting provided by the company’s website.

Your site activity is viewed via the nicely designed dashboard.
12234
(screenshot: Dashboard)

 

Once a test begins, only simple changes can be made via the Edit Site screen. There is no way to filter traffic to reduce testing noise.
12232
(screenshot: Edit Site Screen)

 

When viewing the overlays and click reports, I encountered some sort of unbound script error. I suspect it could be related to the many automatic header scripts through WordPress plugins. While I did receive a quick initial response from support, they only promised to get back to me and I still have the problem. It didn’t appear to prevent me from getting reports.
12223
(screenshot: Script Error)

 

Through the three available reporting mechanisms, it is a no-brainer to view where users are clicking. Unfortunately, there are no other useful views available.
12236
(screenshot: Activity Overlay)

 

12229
(screenshot: List Report)

 

12227
(screenshot: Heatmap)

 

Summary

Sadly, this product turned out to be a total dud. It provides almost none of the basics of useful analysis. While you can compare test versions, there’s no way to view timing or relationship of entry to exit clicks. There’s no report for incoming links or any sense of unique visitors versus multiple clicks from the same visitor. You can’t even filter out your own clicks!

I really like the appearance of the overlays, but I have to wonder why these guys think this is a pay service. It’s more like a feature that would be included on a service.

We will continue to follow their progress, and I certainly hope to hear more good things. For now, I’m done with testing and removing their scripts. If you’re looking for more horsepower, read on to learn about MyBlogLog or Google Analytics.

Aug
22
[Crazy Egg Logo]

They may not know what you’re talking about, but now website owners can more easily know how you’re clicking about.

Crazy Egg is a monthly subscription service from ACS designed to help website designers tune pages toward better interaction. Subscription plans start at free and go up with site volume. The free service allows 5,000 visits per month for two web pages.

CSS + AJAX = Cool

The use of Web 2.0 technology allows users to easily visualize user activity using “overlays” that display click counts for each element on a page. Designers can then test multiple layouts to compare activity and promote features.

Activity Overlay Expanded
(screenshot: Activity Overlay Interface)

Read the rest of this entry »