September 4, 2012

Why Mobile Search Sucks and How to Fix It

While rocking Nicki to sleep this afternoon and reading the news on my mobile phone, I came across an article on Walmart. They are rolling out a new search engine, called Polaris. Polaris is so effective, according to Walmart, that they’ve seen a 10%-15% increase in the likelihood of the customer completing a transaction after conducting a search.

As I played around with Polaris, I couldn’t help but contrast the experience to one I had a few weeks ago. Nicki had been fussy all afternoon and I found myself at the end of the day without any clean bottles. Life would be so much easier with one more bottle. So while rocking Nicki off to dreamland, I wipped out my mobile phone to find out if my local target sold Dr Brown’s 4oz bottles. Typing with my free hand I entered the shortened query “dr brown” into the target search bar.

Screen Grab from my phone on 9/1

What the what??

The first item is at least a Dr Brown’s product. The second result at least has “dr” in the title, but “eye of the beholder”?! How is that relevant to my query? I scrolled five pages before giving up on that search.

Okay, I’ll change my query to be more specific. I typed “dr brown 4oz bottle”

Screen Grab from my phone on 9/1

Target, you are killing me!

Target’s search on the mobile phone is pretty much worthless, but it doesn’t have to be! Here are three easy ways to fix it:

1) Set a better threshold for deciding which items are included in the results. It’s clear from my two query examples that Target’s search returns any product that contains some words in the query. That’s why adding words to the query increases the number of results returned. While this is generally a good approach, it can run afoul when some of those words make up very important phrases (ie ‘dr brown’) but are also fairly generic (ie ‘dr’ and ‘brown’). As I scroll through my search results, I found furniture in a brown finish before I come across the bottle I want.

Unless target is using a very antiquated search algorithm, it should be scoring search results according to relevance, which is a prediction of how well the item matches the query. There are three ways to filter out bad search results.

* Set an absolute threshold. This is the easiest and most straight forward approach where any item with a score below the given threshold is considered not relevant.
* Set a relative threshold based off of the most relevant item. In this approach only the top n results are relevant, or only results within n points of the highest scoring item are relevant.
* Look for a gap in relevance scores. The best approach would be to look for a gap in relevance scores. Most modern search algorithms weight co-located terms higher than terms that occur in the description but not together. Thus while a Dr. Seuss book may have the word ‘brown’ somewhere in the description, it still is considered less relevant than a product that has the phrase ‘dr brown’. All ‘dr brown’ products likely rate much higher than all non ‘dr brown’ products. By looking for this gap, you can filter out results the customer is likely not interested in.

2) Allow customers to search by relevance like they can on the desktop version of Or, if that’s what Sort by ‘Featured’ means, set it as the default and make it clearer. Searching by popularity only makes sense if all items are relevant to the query and the customer is otherwise unsure of which item they might want to buy. If I was interested in baby bottles in general, I could use ‘popularity’ as a proxy for value, trusting my fellow consumers’ buying choices. In order to find a specific product, however, I’d have to either guess how popular it is relative to other items target sells and jump to that results page, or scroll through every result on every results page until I find it. Price is only marginally better, as I can venture a guess as to how much a single bottle will cost.

3) Expand search results smartly. It might be tempting to return everything that evenly marginally matches the query to increase collateral sales. Instead, it just frustrates the customer who has to scroll passed more results to find the ones he or she is interested in. If you look at the most relevant results by the approaches described in step (1), a pattern typically emerges. For my query, the top results would all be in the baby category, manufactured by Dr. Brown, and be feeding related. Rather than return all results that marginally match the query, return those that that are also similar to the top results in these regards: other baby items, other items manufactured by Dr. Brown, or other items related to feeding. This approach is referred to as pseudo relevance feedback in the Information Retrieval community.

I want to continue shopping at target. With the new baby my days of browsing the isles on a whim are over. I rely on my mobile device not just to make purchases online, but to decide which stores to visit in person. The mobile site just has to work.

As for the bottle, well… it turns out Amazon sells them.

(Note: I’ve since installed the Target App on my phone, and search is much better – but that’s still no excuse for a broken mobile website in 2012! )

Posted in Shopping | Tags:

Leave a Reply

Your email address will not be published. Required fields are marked *