Interesting times for QR codes?

QR codes (2D barcodes) have been front of mind for me recently, partly for the wrong reasons:

Malicious QR Codes, QR Codes that might unleash some malware on your phone, parroted by many outlets, including this piece by TechCrunch while EConsultancy wonders whether the link with malware could damage perceptions of QR Codes amongst consumers, pointing out that two thirds of consumers don’t know what they are anyway.

For balance here’s QR code booster Eismann O’Reilly’s reality check on the panic.

Then there was this opinion piece from Sean X Cummings, with more in the ‘why QR Codes Must Die’ vein (Google the phrase, plenty to read!). The best point from it being:

“People will not adopt a technical solution that serves to replace a manual task, if that solution is less efficient than the manual task it replaces.”

I’ve kvetched before on this blog about dumb QR codes that only take you to a site’s homepage too.

On the other hand, I saw an in-the-flesh example of QR codes done right. Here’s an ad (there are several ‘shelves’ on other walls too) from a metro station in Prague. Metro QR Codes are going after the drugstore category (a departure from their usual consumer durables focus) with this take on drugstore shelves. Scan the code, go to the product page on a mobile optimised site (helps that there’s at least 2G signal down at platform level of the metro). They’re offering free next day delivery too, to remove that obstacle. Of course a short URL would probably work just as well as the QR code.

For more on some of the latest retail developments, including a few using QR codes in the UK, read this from Neville Hobson.

Testing times with Internet Explorer

I’ve had my web developer hat on a little too often of late and been suffering from one of the problems most developers loathe – testing how a site looks in earlier versions of Internet Explorer. (Yes, I know IE6 must die) but when a client’s IT department won’t let them upgrade because they have some proprietary system that only works in IE6, there’s not much I can do about it – they need to see what their site looks like on their own machines (and they’re not allowed to install any other browser so they can’t test that either).

I’m a Mac user too, so I use Parallels Desktop for Mac to run Windows 7, which is great for testing sites in Windows versions of Chrome and Firefox, as well as the version of IE that’s installed on the system (I just upgraded to IE9, it’s really much better than previous ones). The problem comes with testing in earlier versions – you can usually only have one version installed at a time.

For simple needs

If your needs are just seeing a screengrab of how a page renders, then you can use the NetRenderer web service to see how things look in IE all the way back to 5.5.

For total fidelity

You can download various versions of Windows designed for testing web app/web site compatibility with different versions of IE, from 6 to 9 from Microsoft in VHD (Virtual PC Hard Disk) format. Through the use of some command line jiggery pokery, and the Parallels Disk Tool, it’s possible to transform that into a bootable Parallels Disk Image. The downside to this process is that these disk images expire and you need to go through the process every few months.

A happy medium

The best solution I’ve found is IETester from DebugBar, makers of a code debugging solution for IE. It’s in alpha, but apart from the occasional quirk and crash (check their known problems list to see if there’s anything there that affects you), I’ve found it to be by far the best way to run side-by-side comparisons in multiple versions of Internet Explorer on my Mac, from IE 5.5 right through to IE 10 Preview. It’s free too – though you can make a donation for their efforts.

Tracking (and fixing) site search

Nobody goes to a hardware megastore for fun, we usually need something specific. We wander down the aisles ‘if the adhesives are here, then that must mean tile adhesives are here right?’ until we give in and ask a disinterested looking pimply youth for help. They begrudgingly motion in the general direction of where you should find your grail. Now imagine there’s no pimply youth to help you. That’s what most e-commerce sites are like.

Riffing off of a recent Seth Godin post where he points out “Broken search = no sale”…

Tracking site search (whether you’re running an e-commerce site or not) is an important place where you can go the extra mile to make sure that your audience/customers/readers are finding what they want.

A lot of people just browse a site, navigating to what they want by clicking through your (hopefully well thought out) site hierarchy, letting you lead them to the product you want. Some people however want to get right to it, they search. If they don’t find what they’re looking for, they’re gone.

As Avinash Kaushik points out, tracking WHAT people are searching for is super easy with Google Analytics but that doesn’t make your task – improving search results as easy as it could be.

You know how Google has a search quality team? For your site, that team is you.

Whether you track the inputs (search terms) and outcomes (number of results returned) using your own back-end systems or Google Analytics custom variables function isn’t as important as the act of paying attention to what they tell you.

Where to start?

Begin with the low hanging fruit and work your way up the tree – your biggest problems probably lie with the searches that return zero results.

No results found

This is the worst thing a site can return – it’s a door slammed in the user’s face. There are a number of actions you should take here:

Start with the simple, single search parameter queries. If you provide filtering functionality, ignore queries for ‘1TB Hard Drive’ with a price filter set to ‘below $10’, at least until that becomes a reasonable possibility.

1) Check your ‘no results found’ message.

If you’re going to slam a door in someone’s face, at least try and do it gently. Perhaps with some tips on how they might open it again ‘try widening your search, using fewer words’ (contextually of course!) or how you can help open it for them, with a contact form, with the subject filled in (‘I searched for “creme brulée torch” and didn’t find anything’), or even a phone number. Something that has the customer understanding that ‘your search is important to us’. Oh yeah, and it helps if you actually respond to those requests. I’ve seen ‘no results found’ pages that are completely blank. That’s the opposite of helpful.

2) Start with the largest volume.

Whatever reporting tool you’re using, sort by volume (by unique users – some people will search multiple times, the logic being ‘that can’t be right, they must have something for this search’ – incidentally this is the definition of madness. (GET A LINK) Examine each query – is it a misspelling? A synonym (hard disk vs hard drive)? Products you don’t sell (but do sell an alternative)? What does your site software allow you to do about this? Apply autocorrect filters? Add keywords to products? Make a search ‘fuzzy’? Show a message? Suggest alternatives? If the answer is none of those, time to hire a developer, find/buy a plugin or nag your ecommerce platform vendor. Work on the top ten once a week until the top ten is all low single digits – that’s when you’ve squeezed all the juice out of this.

Found something, exited on that page

These are the people that gave up in disgust – they didn’t find anything, they left. It could be they were just checking prices but whatever happened, they didn’t like what they saw enough to stick around any longer.

1) Filter out bots

Not an issue if you’re using Google Analytics as bots don’t load the tracking javascript but make sure you exclude them if you’re using something back-end.

2) Start at the top ten again and see what they saw

Do the same search yourself and see what you find. If could be that the search returned some results but not all, or the order of the search results meant that they didn’t see the product they were interested in on the first page. A search for ‘Photoshop’ might return an alpha-sorted list of products with photoshop in the name. If a company called Aardvark makes plugins and they show up first, the user doesn’t see the Adobe products in the first ten. Think about how you can provide more information to make it easier for the user to drill down and refine. Showing brand logos or a brand filter at the top is a simple solution and easier than writing your own ranking algorithm (Google have more PHDs working for them than you do).

3) Keep notes

There are some queries that you just can’t do anything about – make a note on them so you don’t duplicate your efforts – revisit occasionally.

Where next?

You could go crazy with this. Conversion rate is affected by a number of things: site design, purchase cycle duration, pricing, availability, visit intent (order tracking for an outstanding order isn’t much of a conversion opportunity). The best approach is to implement a form of user testing. There are free and paid for options. I’ve been using 4qsurvey’s free service. Whilst it has some aspects that aren’t quite optimal, you can’t argue with the price. And whilst you’ll only get a fraction of a percent of your traffic to fill in the survey, and some of the responses will be positive (pats on the back are lovely but don’t help you to improve), you will find the odd gem amongst the responses – the annoyances, frustrations and disappointments are what will drive you forward.

Image credit: D’arcy Norman via Creative Commons on Flickr.

Headway 2.0 WordPress Theme – a brief review

I’ve been using the Headway Premium WordPress theme (disclosure: that’s an affiliate link) for nearly a year.

It has just been upgraded to version 2.0, which has brought a whole heap of new and improved functionality, bug fixes and speed improvements.

What is Headway?

Headway is a premium (paid-for) WordPress theme that has a built in visual editor for you to take control of how your WordPress driven site looks – everything from colour scheme, font styles and sizes to layout (yes, you read that right, drag and drop layout, in the browser!).

What Headway isn’t

Headway isn’t a beautiful but overly designed theme that locks you out of the ability to edit how your site or blog looks. Quite frankly if you have no eye for colour or talent for layout, you might not like Headway at first sight. There are, however, ‘Skins’ for Headway available, some free, some paid for, including one (more to come) from a very skilled WordPress paid-for theme designer. These are installed as a plugin and let you skip the process of designing your site initially yet most give you the ability to use Headway’s powerful layout features when you’re ready.

Why use Headway rather than a free or cheap pre-designed theme?

Sometimes you like some things about a theme but not others. Using Headway you can replicate a theme, with a little bit of time and in some cases some custom CSS (for anyone familiar with CSS, the ability to see a web page change as you type in a CSS command is something wonderful). In fact I’ve just switched this site over to Headway from a free theme called Gear that I have been using for a year or so. Mostly I wanted to see how quickly I could switch whilst retaining the original look and feel. It took me about an hour. I promise I’ll change it around again soon and make it more appealing, now I have the ability to do that!

One of the most common uses I’ve had so far for Headway has been adding a blog to existing websites, whilst maintaining a similar style to the main site. That’s pretty hard to do with anything else but a breeze with Headway. If you know your way round PHP and HTML too, you’ll appreciate Headway’s ‘Hooks’. These are points in the page where you can insert PHP code or HTML. Say you have a top navigational include for a main site – just insert a PHP include command at the relevant hook and you’re done. I’ve just finished working on a much more involved site than a standard blog and Headway’s Visual Editor and Live CSS Editor (it’s a fairly involved design) we invaluable in getting the site looking exactly like the PSD files.

One of the new features that should appeal to a lot of people is the Search Engine results preview – in the WordPress Edit Post page is a panel that shows you what your page will look like when it comes up in the SERPs on Google, encouraging you to write a meaningful title and META description (and Headway’s long standing SEO features include allowing you to set a different title tag to the on-page title.


When you purchase a developer license you have the ability to install it on as many sites as you like (your own, friends, family and clients), forever (it’s a lifetime license). Many of the other premium WordPress themes require you to buy a license for every site you set up that isn’t owned by you/your company. The only thing that people who you set up Headway for in this way don’t get is access to the support forums and future upgrades. For that they’d need their own license. The support forums are superb by the way, with some very helpful people, both those working for Headway Themes and regular users too. Oh and about upgrades? There’s a one-click upgrade function built in now!

Marks out of ten?

With the latest version, a solid 9. There’s always room for improvement, but then the Headway team are continuing to take it forward, and lifetime upgrades means I’ll get to enjoy all the coming enhancements. One thing that I go back and forth on is what functionality should be added in future versions that is already provided by other plugins – should that be in Headway or should I install a plugin to get it? Fortunately Headway’s developers ‘know when they’re beat’, for example Headway’s own breadcrumbs code steps aside if it detects the presence of Yoast’s Breadcrumbs plugin. More compatibility with the big guns in various areas of advanced WordPress usage (multi-lingual, e-commerce) can only be a good thing.

Now you see it – check your HTML code for vanishing acts

In the interest of experimentation I’ve been using the AdBlock extension for Safari lately. It’s amazing how peaceful the web is with most of the advertising removed, but as a marketer it’s useful to know what and how is being advertised online. That and the quasi-moral reasons people argue about mean I’ll be disabling the extension.
That’s not the real reason for this post though.
The main reason is that using AdBlock has highlighted some interesting aspects of the way it works. It works in a couple of ways – by using a list of adservers (like Google’s Adsense servers, Doubleclick and many others) and by blocking out parts of web pages.
It’s this second method that can lead to unintentional consequences due to the way a page is marked up. If you’re creating a web page and using CSS you might create something like this:
<div id=”sidebar-ad”>…</div>
So that you can style it using CSS. You may well put advertising in it, but this might be ‘navigational’ type ads, for products, articles or features on your own site. But AdBlock doesn’t really care about where those links go to, it sees a declaration that this is an ad container and nixes it.
Now might be a good time for you (or your web team) to check that an AdBlock extension isn’t removing useful parts of your website and if so, give those parts of the page new css ids or classes.
Image credit: brotherxii via Creative Commons on Flickr

Quit snapping at your customers

Making websites simple to use has always been one of the objectives high on the list of any project brief I’ve ever seen. You want your users to feel comfortable and safe and have a smooth path from landing on your website right through to whatever constitutes a desirable outcome for a visit. Usually that involves filling in a form. There are some great examples out there of how to do forms right – ones with subtle hints and cues along the way, forms that are a delight to fill in.

Then there are the ones that seem to hurl barriers in your way, giving you cryptic or harshly worded error dialog boxes. Here’s one from’s online shopping signup page:

I entered a phone number with spaces in it. That’s how we remember phone numbers – in blocks of numbers, not the whole 11 at a time. I entered it with a preceding zero, but the generic ‘There is an error’ script that checks the phone number submitted on this page gives me this incorrectly spelt error message as both a javascript dialog box and in text by the form objects. All I did wrong was enter spaces. If you don’t want spaces in there, a simple bit of string replace code, server or client side, will take them out.

Maybe Tesco’s people responsible for web usability don’t create new accounts very often, maybe they don’t track how many error messages get shown, and figure that they ought to be working to minimise that.

Optimising a site for search gets a lot of attention, but the real improvements can be made by optimising the traffic you already get. Converting 2% of 100 visitors is better than converting 1% of 150. There are free and paid for solutions to usability testing – with real users.

If you know what you’re doing with Google Analytics’ more advanced functions (events) then you can track how far into a form people get before they give up, for example. If you don’t have that much faith in your coding skills, use a service like ClickTale to find out the same thing (and more besides).

If both of those seems too much like hard work, then it’s time to go read a Web Usability book and find some religion. There’s even a No Dashes or Spaces Hall of Shame, chock full of examples of customer hostile web forms. Amazing how many big names have web developers that like to snap at their end users!

Image Credit: Andycpuk via Creative Commons on Flickr.

I’m inquisitive but I’m not desperate

cavemanI’m wondering when the tide is going to turn on the matter of requiring users to fill in lengthy forms in order to download a software demo, an e-book, a white paper or in some cases even a brochure.

You’ve gone to all the trouble of getting someone to your site – whether that’s by SEO, an advert or just random luck. You promise a download, often with just a click. Then you start asking for my inside leg measurement.

When I see a form like this, I immediately wonder: ‘Do I get what I asked for immediately? Are my details vetted before I get it? Are my details getting added to a mailing list?’

When are site owners (or their retarded designers/developers/consultants who say ‘and we can gather names by getting people to register for this’) going to get it? What’s important to you, getting your information/product/idea into people’s hands, hearts and minds, or building a list that is ultimately worthless junk? Are you that worried about counting the number of downloads and think the only way to do it is to require someone’s details? And once you’ve given someone access to it, who is to say they won’t spread it round ‘virally’ anyway? Or do you wish you could stop that too?

I’m reserving a place in a particularly nasty circle of hell for cheese-ball ‘internet marketers’ that plaster ‘download my free internet marketing e-book’ links all over their ugly web pages. That’s not marketing, it’s a pitiful attempt to build a list that you can pimp whatever MLM scheme you’re getting affiliate commission for this week and you are no more marketers than a barrow-boy at a street market is.

For a great insight into this, read Chris Guillebeau’s piece on Why People Hate Marketers.

Still need convincing? David Meerman Scott makes it abundantly clear in his free pdf e-book Lose Control of your Marketing, (that you can download without filling in a registration form): “You need to think in terms of spreading ideas, not generating leads”, a one line summary of this post about business to business e-books.

Now I know this stuff is new, that you might face resistance to free up the access to your downloads – your CEO wants hot sales leads and names on a mailing list. OK, how about you have a ‘sign up to get it’ link and a straight ‘I don’t want to sign up but I still want it’ link. What this means is you’re going to get proper sales leads, not Mickey Mouse and Bob McBob (my default) and you’re also going to reach the huge percentage that simply won’t fill in forms. If Apple can learn that they don’t need the email address of everyone who downloads QuickTime or Safari, then you can get over your dependency on list-building and start sharing properly. You’ll be amazed at the difference.

Till then, yours,
Bob McBob

p.s. If you’re one of the good guys, comment here and share your experience of how opening the gates worked for you.

Photo credit: Beautification Syndrome

Case study – the sports bar – part two – website optimisation

Limited by the brief (and time and budget) to reworking the existing design, rather than replace with a WordPress driven site (my personal preference), below is a list of the basic SEO and general site changes I made.

  1. More meaningful title tags, meta descriptions and keywords
  2. Logo/header graphic turned back into a single image and named more explicitly (no longer img01.gif, img02.gif).
  3. Replaced Flash navigation with text links
  4. Homepage now contains the text that had previously been on the About page and a smaller image rather than just an image and no text.
  5. Renamed a couple of menu items to make more sense to users (Live Sports > What’s On, Events > Specials [the word for special offers in Czech is the same as the word for events, essentially this was a mistranslation])
  6. Changed from static html to php so we can use includes for header and footer information, making further edits easier
  7. Navigation inconsistencies (opening a new window for the food and drinks menu pages) have been corrected.
  8. Removed Flash audio player
  9. Switched Flash schedule player for a simple text file include, schedule now displays on the page, as text, and is searchable.
  10. Added a Google Map to the contact page – there was no map there previously.
  11. Google Analytics tracking code added for ease of statistics monitoring.

Based on the first few days of stats from Analytics we will be able to judge the efficacy of these changes. The initial keywords that are bringing in traffic are purely the name of the bar – serving to highlight that the site’s SEO was pretty poor. The Pagerank as of today is 2/10 and the site is not coming up in the first few pages of organic search results (SERPS). I will cover how this situation has changed in a month or so.

If you can’t see it, you can’t buy it

online store usability on a budget

img_0169The way news kiosks display as much as they possibly can serves as an interesting example for the world of online shopping and explains just why thorough user testing and analysis of how all your visitors behave is so important.

Just have a think about your own behaviour in a shop. You wander the aisles of the drugstore or supermarket, unable to fathom what kind of twisted logic is responsible for the MLP (Merchandise Layout Plan). 

What drives this behaviour is likely a mixture of stubbornness and a fear of embarrassment (“yes madam, it’s right here”) often combined with an inability to find a member of staff.

What happens when there’s nobody to ask? You hunt around, sometimes find what you’re after, sometimes give up.

What happens on the web? You go to a store’s home page and you’re trying to find the product by category, but that’s not working properly, the categories just aren’t organised in a way that works for you, you’re searching but can’t find it, maybe they just don’t have it. If the site has a phone number, you might call, if the site offers a live assistant service, maybe you’ll ask for help. Maybe it’s late at night, there’s nobody to call, or ask for help, maybe you email. Or maybe not. The majority of people just give up and go elsewhere.

Fix your search

If you’re not going to spend the money on user testing then the best way to handle these errors is to track the search failures on your site, view the report sorted by ‘number of failures, descending’ and start at the top. Work out what went wrong. Are people misspelling common words? Fix it for them (with a “we couldn’t find anything for ‘choclat’, here are the results for ‘chocolate'” message), are people searching for products you don’t carry? Maybe you should? If you sell vaguely technical products then search the manufacturer part number as well, with your ‘simple search’, an advanced search page should be unnecessary – hardly anyone uses them. If you publish catalogues with your own part numbers, include that in the fields that are searched as well.

Fix your categories

Categorisation is a whole can of worms, people browse differently, but the cheapest way to solve this one is to see how the big online stores do it, read studies and research to get the interface right, and make sure products are categorised correctly.


Getting online store usability right is a moving target, re-evaluate your efforts every couple of months and keep a close eye on conversion rate data* and see how your changes affect things. If you’ve got the technical chops use Google Website Optimizer to test your changes before they go live.

* your conversion rate data needs to be filtered for users checking order status, technically your conversion rate could stay the same whilst your number of orders rises simply because you’re taking more orders so more customers are returning to check up on their order.