Seeing into the Soul of the Shopper

The integration of behavioral research and Voice of Customer is remarkably fruitful. I saw that first hand in a project we recently completed with our partner Insight Safari for a top 10 retailer in the United States. For the project, Insight Safari’s research teams fanned out across the country and did shopper interviews at stores in markets like Pittsburgh, Dallas, and Los Angeles. This is deep qualitative research – designed to get to the emotional core of shopping decisions and see how attitudes and intent shape in-store behavior. It’s what Insight Safari does. But this time there was behavioral twist. Shoppers were given a mobile device with Digital Mortar’s tracking built-in. And at the end of the journey, the survey giver was able to tailor the survey based on a detailed map of exactly what the shopper had done.

In-Store VoC Shopper Journey Analytics with Digital Mortar

Integrating a behavioral view into an attitudinal project enriches the project immeasurably. But it’s not trivial to do and there’s a reason why Insight Safari is uniquely well-positioned to do this. To understand both the challenge and the opportunity, a little background on voice-of-customer and behavioral analytics is necessary.

 

VoC and Behavioral Analytics

Voice of Customer research usually tries to capture four key elements about a shopper. Who the shopper is (demographics), what the shopper did (behavior), why the shopper did it (drivers), and how the shopper felt about it (satisfaction). One of the things that makes opinion research an art is finding the right balance between each of these. And there’s always an opportunity cost – any time you spend in one category inevitably reduces the amount of time you spend in another. Beyond the opportunity cost, though, it’s particularly challenging to disentangle a shopper’s description of behavior and drivers. Ask a shopper why they came to the store and then ask them what they did, and the answer they give to the first is highly likely to influence the answer they give to the second. What’s more, the shopper is prioritizing the shopping session by their internal measures of what they did – they forget the distractions, the things they looked at but didn’t buy, and the places they went that turned out not to be important. But if you’re the store – understanding those failure points is what you’re really after!

Many of the shopping sessions that we tracked with Insight Safari lasted 30 minutes to an hour. Think about that. How likely are you to be able to say what you looked at and explain how you navigated a store over that amount of time?

Insight Safari sometimes hires a videographer to (literally) stalk the shoppers and record sample journeys in the store. But that strategy falls victim to its own kind of quantum uncertainty – the act of measurement alters the system dynamics too much. We’re all used to having a phone in our pocket – but unless you’re a Kardashian, having a videographer following you around just doesn’t feel natural.

It turns out that of the four primary types of data collection for VoC, understanding what the shopper did is actually the hardest to get right with self-reporting. There’s an amusing anecdote we like to tell from our days in digital analytics. One of our clients had a very negative satisfaction score for internal search sessions (super common for various reasons ranging from the type of sessions that use internal search to most internal search engines being really crappy). Interestingly, though, when we actually integrated their online survey data to their behavioral data, we found that almost a third of the visitors who complained most about search on the site hadn’t actually “searched”.  We were asking about internal search – typing in keywords in a little box – but they were thinking about “searching the site and not finding what they were looking for”.

What’s more, we found that for a significant percentage of visitors, their self-reported site visit reason just didn’t square with their actual behavior. A shopper might report that they were in the store to pick up clothes for the kids, but spend nearly all their time in the beauty aisle. It’s not that shoppers are lying about their behavior. Mostly they just aren’t objective or reflective about it. But getting through those layers of thoughtlessness is hard – sometimes flat out impossible. And getting even a remotely accurate approximation of the shopper’s behavior takes deep, detailed questioning that inevitably chews up a lot of time (opportunity cost) and leaves the analyst wondering how accurate the behavioral account really is.

So imagine if instead of having to interrogate the shopper about behavior – did you do this? What about this? Did you look at this on the way? Did you stop here? Did you go down this aisle? – you could just SEE their behavior. Every twist, every turn, every linger point!

Suddenly you’re not guessing about shopper behavior or the accuracy of self-reporting. You can focus the interview entirely on the why and the satisfaction of the experience. And you can use details of the behavior to call back elements of the journey to the shopper’s mind. What were you looking at when you stopped here? Why did you go back to the electronics department 3 times? What made you turn down this aisle?

It’s powerful.

But it’s not as easy as it looks, either. And in understanding why this is a little harder than it seems illuminates what makes Insight Safari particularly able to take advantage of the Digital Mortar behavioral data.

 

The Biggest Challenge Integrating Behavioral Data into the Survey Process

Voice of Customer data runs the gamut from highly quantitative (large sample sizes, standardized surveys) to fully anecdotal (guided focus groups). There’s interesting work to be done at any place along this spectrum and Insight Safari customizes the research approach to fit the business questions in play. But their specialty and primary focus is on going deep into shopper motivations and psyche – and that’s best done in the more personal, anecdotal end of the spectrum. At the same time, they like to have enough data to infer how common core shopper motivations are and how likely those are to play out in a given store. So Insight Safari usually works in the range of hundreds of surveys – not tens of thousands like we did in digital analytics and not 5-10 like a focus group company.

Most companies who take hundreds of surveys, rely on quite a bit of standardization in the survey design. Each shopper essentially takes the same survey with minor deviations for branching.

This sucks for a variety of reasons. Unless you know specifically what you’re looking for, it’s likely to miss the interesting parts of most shopper’s journeys. And if you’ve ever worked with this kind of data, you know that it’s almost certain to raise issues that leave you wishing you’d been able to ask one more question to really understand what the shopper was thinking! It can be frustrating!

But a rigid survey design also means that the behavioral data isn’t mapped into the questioning process. It can’t be – because you don’t the behaviors in advance. So while it’s possible to compare, for example, stated visit intent with actual shopping behavior, you aren’t using the data to drive the questions.

Insight Safari doesn’t work that way. Their survey givers aren’t part-times hired the day before to hang out in the store. They use research professionals – the equivalent of full-on focus group leaders – who are deeply knowledgeable about survey research. So their survey isn’t a rigid framework but a kind of loose framework that ensures they collect like kinds of data from each shopper but leaves the giver free to delve into interesting answers in great depth.

That turns out to be perfect for integrating behavioral data.

When shoppers finished their journey, the survey giver would enter the survey respondent id on their iPad and then get the detailed break-down of what the shopper did. Right then. While they were talking with the shopper.

And Insight Safari’s pros seamlessly integrated that into the flow of questions – even using the path visualization to directly explore decisions with the shopper. Most companies just don’t use survey givers skilled enough to do that. That’s no big knock. I’m not skilled enough to do that. Being able to drive intelligent field research takes an unusual combination of people skills, empathy, and objective analytic prowess. You have to be able think fast, be nice, and listen closely. It’s the equivalent of having no prep-time and still being able to do a great interview. Not easy.

There are ways to take the behavioral data and create survey integrations that are more mechanistic but still capture much of the uniqueness of the shopper journey. But there aren’t many companies who could take this time of in-store behavioral data and integrate it as deeply and seamlessly into their process as Insight Safari.

 

A Little About the Software

We customized our system pretty extensively for Insight Safari. We build a small mobile app (Android-based) that had a really, really simple user interface to it. The survey giver just had to press a button to start a survey and, when the phone was returned, press the stop button to end recording. The App pinged out every 2 seconds with the shoppers geo-location and included the survey id. We store that information in our real-time database. The shopper never has to do anything with the phone or app. They can carry it or it was attached to their cart.

The App also created a local store of the information in case there were connectivity problems (we had a few but not many). This allowed the App to send the survey data whenever connectivity was restored.

When the survey giver got the phone back and pressed Stop, the phone sends a message to the server and the session is closed. Once it’s closed it’s immediately surfaced in a custom report in the DM1 platform showing the most recent surveys completed.

The survey giver can search for any previous respondent, but almost never has to do that. They just click on the most recent survey closed and get the detailed behavioral report.

That report includes two elements: a tabular breakdown of the visit by time spent and graphical animation of the shopper visit laid on the digital planogram of the store. The tabular view is sorted by time spent and shows all the sections in the store the shopper visited, how much time they spent, and whether they returned to the section (went to it more than once). The animation is built on top of the store layout view (a core part of DM1) and replays the journey in fifteen seconds with time spent relative to replay time.

In-Store Shopper Measurement and VoC Store Surveys and Digital Mortar

This custom report view is what the survey giver uses to drive the survey.

But it’s not the only report available. Since all the data is collected, it can also be analyzed quantitatively in the core DM1 Workbench and it can even be segmented by survey response variables uploaded through the meta-data interface.

It’s a compelling combination – helping drive the survey itself, providing a rich quantification of the data afterward, and making it easy for Insight Safari to show how specific individual patterns translate into significant population segments.

 

And a Little bit About the Results

Obviously the findings are both totally proprietary and highly particularized to the client. This isn’t the sort of research that leads to some standardized best-practice recommendation. But there are some high-level aspects of the project that I found striking.

First, while there are some very straightforward shopping visits where the behavior is crisp and matches closely to intent, the number of those visits is dramatically lower than what we see when we look at Websites. Most visits are amazingly complex squiggly patterns that bear only a passing resemblance to any kind of coordinated exploration of the store.

Sure, there are visits where, for example, a race-track pattern is dominant. But in almost all those visits there are least a few strange loops, diversions, and short-cuts. Further, the degree to which shopper intent doesn’t capture the intricacy (or even the primary focus) of the visit is much more visible in store visits than in comparable Website visits. Stores just are better distractors than Websites – and the physical realities of navigating a space create many more opportunities for divergence.

Second, the ability to see how experiential elements like coffee bars impacted both the behavior and emotional impact of the shopper journey was fascinating. It’s really hard to measure how these elements are driving PoS, but when you hear how people talk about it and how much it changes their sense and description of the shopping experience, it really comes alive. Making shoppers want to come to the store is part and parcel of today’s retail mission. And hearing how a smile from a barista can transform a chore into a reprieve from the daily grind is just one of the ways that VoC can make behavioral data sing.

And lastly, these behavior patterns are often most telling for what shoppers didn’t do. In case after case, we could see shopper’s lop-off parts of the journey that seemed like the logical extensions of their basic path. Some of those turning points were highly individual and probably hard to action – but others showed up with a consistency that made it clear that for some journeys, the store layout just wasn’t optimal.

 

Get a Piece of the Action

I don’t think there’s a store in the world that wouldn’t benefit from this kind of thoughtful research. Intelligent Voice of Customer is always provocative and useful. And the integration of Digital Mortar’s behavioral journey mapping into the Insight Safari process lets them do what they do at a level that simply can’t be matched with any other technique. It truly is the best of both worlds.

To learn more, give either of us a shout!

Machine Learning and Optimal Store Path

My previous post covered the first half of my presentation on Machine Learning (ML) and store analytics at the Toronto Symposium. Here, I’m going to work through the case study on using ML to derive an optimal store path. For that analysis, we used our DM1 platform to source, clean, map and aggregate the data and then worked with a data science partner (DXi) on the actual analysis.

 

Why this problem?

Within DM1 we feel pretty good about the way we’ve built out visualizations of the store data that are easy to use and surprisingly powerful. The Full Path View, Funnel View and Store Layout View  all provide really good ways to explore shopper path in the store.

But for an analyst, exploring data and figuring out a model are utterly different tasks. A typical store presents a nearly infinite number of possible paths – even when the paths are aggregated up to section level. So there’s no way to just explore the paths and find optimal ones.

 

Even at the most basic level of examining individual shopper paths, deciding what’s good and bad is really hard. Here’s two shopper paths in a store:

Which is better? Does either have issues? It’s pretty hard to know.

 

Why Machine Learning?

Optimal store pathing meets the basic requirements for using supervised ML – we have a lot of data and we have a success criteria (checkout). But ML isn’t worth deploying on every problem that has a lot of data and success criteria. I think about it this way – if I can get want I want by writing simple algorithmic code, then I don’t need ML. In other words, if I can write (for example) a sort and then some simple If-Then rules that will identify the best path or find problem path points, then that’s what we’ll do. If, for example, I just wanted to identify sections that didn’t convert well, it would be trivial to do that. I have a conversion efficiency metric, I sort by it (Ascending) and then I take the worst performers. Or maybe I have a conversion threshold and simply pick any Section that performs worse. Maybe I even calculate a standard deviation and select any section that is worse than 1 standard deviation below the average Section conversion efficiency. All easy.

But none of those things are really very useful when it comes to finding poor path performance in a robust fashion.

So we tried ML.

 

The Analysis Basics

The analysis was focused on a mid-sized apparel store with around 25 sections. We had more than 25,000 shopper visits. Which may not seem like very much if you’re used to digital analytics, but is a pretty good behavior base for a store. In addition to the basic shopper journey, we also had Associate interaction points (and time of interaction), and whether or not the shopper converted. The goal was to find potential store layout problems and understand which parts of the store drove to (or subtracted from) overall conversion efficiency.

 

Preparing the Data

The first step in any analysis (once you know what you want) is usually data preparation.

Our data starts off as a stream of location events. Those location events have an X,Y, Z coordinates that are offset from a zero point in the store. In the DM1 platform, we take that data and map it against a digital planogram capability that keeps a full, historical record of the store. That tells us what shoppers actually looked and where they spent time. This is the single most critical step in turning the raw data into something that’s analytically useful.

Since we also track Associates, we can track interaction points by overlaying the Associate data stream on top of the shopper stream. This isn’t perfect – it’s easy to miss short interactions or be confused by a crowded store – but particularly when it’s app to app tracking it works pretty well. Associate interaction points are hugely important in the store (as the subsequent analysis will prove).

Step 3 is knowing whether and when a shopper purchased. Most of the standard machine learning algorithms require having a way to determine if a behavior pattern was successful or not – that’s what they are optimizing too. We’re using purchase as our success metric.

The underlying event data gets aggregated into a single row per shopper visit. That row contains a visit identifier, a start and stop time, an interaction count, a first interaction time, a last interaction time, the first section visited, the time spent in each section and, of course, our success metric – a purchase flag.

That’s it.

The actual analytic heavy lifting was done by DXi on their machine learning platform. They use an ensemble approach – throwing the kitchen sink at the problem by using 25+ different algorithms to identify potential winners/losers (if you’d like more info or an introduction to them, drop me a line and I’ll connect you).

 

Findings

Here’s some of the interesting stuff that surfaced, plucked from the Case-Study I gave at the Symposium:

One of the poorest performing sections – unpicked by a single DXi ML algorithm as important – sits right smack dab in the middle of the store. That central position really surprised us. Yes, as you’ll see in a moment, the store has a successful right rail pattern – but this was a fairly trafficked spot with good sightlines and easy flow into high-value areas of the store.

Didn’t work well though. And that’s definitely worth thinking about from a store layout perspective.

One common browsing behavior for shoppers is a race-track pattern – navigating around the perimeter of the store. There’s a good example of that on the right-side image I showed earlier:

The main navigation path through the store is the red rectangle (red because this shopper spent considerable time there) – and you can see that while the shopper frequently deviated from that main path that their overall journey was a circuit around the store.

The ML algo’s don’t know anything about that – but they did pick out the relevant sections in the analyzed store along that starting path as really important for conversion.

We took that to mean that the store is working well for that race-track shopper type. An important learning.

For this particular store, casual shoes was picked as important by every ML algorithm – making it the most important section of the store. It also had the largest optimal time value – and clearly rewarded more time with higher conversion rates. Shoes, of course, is going to be this way. It’s not a grab and go item. So there’s an element of the obvious here – something you should expect when you unleash ML on a dataset (and hey – most analytics projects will, if they work at all, vacillate between the interesting and the obvious). But even compared to other types of shoe – this section performed better and rewarded more time spent – so there is an apples-to-apples part of this comparison as well.

The next finding was an interesting one and illustrates a bit of the balance you need to think about between the analyst and the algorithm. The display in question was located fairly close to cash-wrap on a common path to checkout. It didn’t perform horribly in the ML – some of the DXi algorithms did pick it as important for conversion. On the other hand, it was one of the few sections with a negative weighting to time spent – so more time spent means less likely conversion. We interpreted that combination as indicating that the section’s success was driven by geography not efficiency. It’s kind of like comparing Saudi Arabia vs. U.S. Shale drillers. Based purely on the numbers, Saudi Arabia looks super efficient and successful with the lowest cost per barrel of oil extracted in the world. But when you factor in the geographic challenges, the picture changes completely. SA has the easiest path to oil recovery in the world. Shale producers face huge and complex technical challenges and still manage to be price competitive. Geography matters and that’s just a core fact of in-store analytics.

Our take on the numbers when we sifted through the DXi findings was that this section was actually underperforming. It might take a real A/B test to prove that, but regardless I think it’s a good example of how an analyst has to do more than run an algorithm. It’s easy to fool even very sophisticated algorithms with strong correlations and so much of our post-analysis ANALYSIS was about understanding how the store geography and the algorithm results play together.

In addition to navigation findings like these, the analysis also included the impact of Associates on conversion. In general, the answer we got was the more interactions the merrier (at the cash register). Not every store may yield the same finding (and it’s also worth thinking about whether a single conversion optimization metric is appropriate here – in my Why Analytics Fails talk I argue for the value in picking potentially countervailing KPIs like conversion and shopper satisfaction as dual optimization points).

Even after multiple interactions, additional interactions had a positive impact on sales.

This should be obvious but I’ll hearken back to our early digital analytics days to make a point. We sometimes found that viewing more pages on a Website was a driver of conversion success. But that didn’t mean chopping pages in half (as one client did) so that that the user had to consume more pages to read the same content was a good strategy.

Just because multiple Associate interactions in a store with a normal interaction strategy created lift, it doesn’t mean that, for example, having your Associates tackle customers (INTERACTIOOOON!!!) as they navigate the floor will boost conversion.

But in this case, too much interaction was a legitimate concern. And the data indicates that – at least as measured by conversion rates – the concern did not manifest itself in shopper turn-off.

If you’re interested in getting the whole deck – just drop me a note. It’s a nice intro into the kind of shopper journey tracking you can do with our DM1 platform and some of the ways that machine learning can be used to drive better practice. And, as I mentioned, if you’d like to check out the DXi stuff – and it’s interesting from a pure digital perspective too – drop me a line and I’ll introduce you.

The Really Short Introduction to DM1 and In-Store Measurement

Take a minute (okay – a minute and a half) to check out this video overview of our DM1 store measurement platform. It’s the shortest and crispest introduction we’ve produced so far.

As more than one famous writer/philosopher has remarked, “If I had more time, it would have been shorter.” Brevity, like wit, takes work. And practice. We haven’t achieved wit, but we’re getting close to brevity:

I also really like the video’s flow. It starts with a very short intro into the basic concept of store measurement and then introduces the platform with the Digital Planogram tool – the Configurator. When you get right down to it, this capability is the single most important part of the platform. Digital representations of the store are critical to every report and analysis DM1 delivers. And the ability to rapidly create, adjust and maintain those digital maps is essential to making the tool work.

When we first released DM1 the configurator lagged behind some of the reporting tools – not very friendly and a little prone to bugginess. Its grown into quite a good tool – a pleasure to use and capable of handling even very complex store layouts pretty easily.

From the configurator, the video flows into the Layout tool – which just maps metrics right onto those digital planograms. Not only does this show how effortlessly you move from a map of the store to a metric, but I really like the way the video works through a small set of metrics to show how easy the visual interpretation is.

Once you’ve got a feel for basic metrics in the Store Layout, the next logical step is to tackle journey. And the next two sections highlight funnel and path analysis. Both of these tools help transition thinking from a static view of store performance to a focus on shopper journey. Funnels tell you how effective the store is in moving shoppers down an engagement path. Path helps you understand which in-store paths are popular and which drive conversion. After this, it’s a quick look at the data exploration capabilities of the platform – and the ability to build reports around whatever problem you choose to tackle. Finally, it wraps up with a sample of the dashboards.

Truth to tell, I’ve sometimes done this same presentation in almost the reverse order – starting with Dashboards and ending with configuration. It’s plausible that way too, but I think this works better for analysts. Because while dashboards are the first view for end-users of DM1, for analysts their task really starts with store mapping, proceeds through various levels of analysis, and ends with wrapping a nice, neat bow around the data for others. That’s that way this video proceeds and that makes the structure more compelling and natural if that’s the way you tend to think.

Check it out.

 

Hey, unless you’re a very fast reader, you’ve already spent more time on this post than the you will on the video!

 

 

Machine Learning and Optimizing the Store

My previous post covered the first half of my presentation on Machine Learning (ML) and store analytics at the Toronto Symposium. Here, I’m going to work through the case study on using ML to derive an optimal store path. For that analysis, we used our DM1 platform to source, clean, map and aggregate the data and then worked with a data science partner (DXi) on the actual analysis.

Why this problem?

Within DM1 we feel pretty good about the way we’ve built out visualizations of the store data that are easy to use and surprisingly powerful. The Full Path View, Funnel View and Store Layout View  all provide really good ways to explore shopper path in the store.

But for an analyst, exploring data and figuring out a model are utterly different tasks. A typical store presents a nearly infinite number of possible paths – even when the paths are aggregated up to section level. So there’s no way to just explore the paths and find optimal ones.

Even at the most basic level of examining individual shopper paths, deciding what’s good and bad is really hard. Here’s two shopper paths in a store:

Which is better? Does either have issues? It’s pretty hard to know.

 

Why Machine Learning?

Optimal store pathing meets the basic requirements for using supervised ML – we have a lot of data and we have a success criteria (checkout). But ML isn’t worth deploying on every problem that has a lot of data and success criteria. I think about it this way – if I can get want I want by writing simple algorithmic code, then I don’t need ML. In other words, if I can write (for example) a sort and then some simple If-Then rules that will identify the best path or find problem path points, then that’s what we’ll do. If, for example, I just wanted to identify sections that didn’t convert well, it would be trivial to do that. I have a conversion efficiency metric, I sort by it (Ascending) and then I take the worst performers. Or maybe I have a conversion threshold and simply pick any Section that performs worse. Maybe I even calculate a standard deviation and select any section that is worse than 1 standard deviation below the average Section conversion efficiency. All easy.

But none of those things are really very useful when it comes to finding poor path performance in a robust fashion.

So we tried ML.

 

The Analysis Basics

The analysis was focused on a mid-sized apparel store with around 25 sections. We had more than 25,000 shopper visits. Which may not seem like very much if you’re used to digital analytics, but is a pretty good behavior base for a store. In addition to the basic shopper journey, we also had Associate interaction points (and time of interaction), and whether or not the shopper converted. The goal was to find potential store layout problems and understand which parts of the store drove to (or subtracted from) overall conversion efficiency.

Preparing the Data

The first step in any analysis (once you know what you want) is usually data preparation.

Our data starts off as a stream of location events. Those location events have an X,Y, Z coordinates that are offset from a zero point in the store. In the DM1 platform, we take that data and map it against a digital planogram capability that keeps a full, historical record of the store. That tells us what shoppers actually looked and where they spent time. This is the single most critical step in turning the raw data into something that’s analytically useful.

Since we also track Associates, we can track interaction points by overlaying the Associate data stream on top of the shopper stream. This isn’t perfect – it’s easy to miss short interactions or be confused by a crowded store – but particularly when it’s app to app tracking it works pretty well. Associate interaction points are hugely important in the store (as the subsequent analysis will prove).

Step 3 is knowing whether and when a shopper purchased. Most of the standard machine learning algorithms require having a way to determine if a behavior pattern was successful or not – that’s what they are optimizing too. We’re using purchase as our success metric.

The underlying event data gets aggregated into a single row per shopper visit. That row contains a visit identifier, a start and stop time, an interaction count, a first interaction time, a last interaction time, the first section visited, the time spent in each section and, of course, our success metric – a purchase flag.

That’s it.

The actual analytic heavy lifting was done by DXi on their machine learning platform. They use an ensemble approach – throwing the kitchen sink at the problem by using 25+ different algorithms to identify potential winners/losers (if you’d like more info or an introduction to them, drop me a line and I’ll connect you).

 

Findings

Here’s some of the interesting stuff that surfaced, plucked from the Case-Study I gave at the Symposium:

One of the poorest performing sections – unpicked by a single DXi ML algorithm as important – sits right smack dab in the middle of the store. That central position really surprised us. Yes, as you’ll see in a moment, the store has a successful right rail pattern – but this was a fairly trafficked spot with good sightlines and easy flow into high-value areas of the store.

Didn’t work well though. And that’s definitely worth thinking about from a store layout perspective.

One common browsing behavior for shoppers is a race-track pattern – navigating around the perimeter of the store. There’s a good example of that on the right-side image I showed earlier:

The main navigation path through the store is the red rectangle (red because this shopper spent considerable time there) – and you can see that while the shopper frequently deviated from that main path that their overall journey was a circuit around the store.

The ML algo’s don’t know anything about that – but they did pick out the relevant sections in the analyzed store along that starting path as really important for conversion.

We took that to mean that the store is working well for that race-track shopper type. An important learning.

For this particular store, casual shoes was picked as important by every ML algorithm – making it the most important section of the store. It also had the largest optimal time value – and clearly rewarded more time with higher conversion rates. Shoes, of course, is going to be this way. It’s not a grab and go item. So there’s an element of the obvious here – something you should expect when you unleash ML on a dataset (and hey – most analytics projects will, if they work at all, vacillate between the interesting and the obvious). But even compared to other types of shoe – this section performed better and rewarded more time spent – so there is an apples-to-apples part of this comparison as well.

The next finding was an interesting one and illustrates a bit of the balance you need to think about between the analyst and the algorithm. The display in question was located fairly close to cash-wrap on a common path to checkout. It didn’t perform horribly in the ML – some of the DXi algorithms did pick it as important for conversion. On the other hand, it was one of the few sections with a negative weighting to time spent – so more time spent means less likely conversion. We interpreted that combination as indicating that the section’s success was driven by geography not efficiency. It’s kind of like comparing Saudi Arabia vs. U.S. Shale drillers. Based purely on the numbers, Saudi Arabia looks super efficient and successful with the lowest cost per barrel of oil extracted in the world. But when you factor in the geographic challenges, the picture changes completely. SA has the easiest path to oil recovery in the world. Shale producers face huge and complex technical challenges and still manage to be price competitive. Geography matters and that’s just a core fact of in-store analytics.

Our take on the numbers when we sifted through the DXi findings was that this section was actually underperforming. It might take a real A/B test to prove that, but regardless I think it’s a good example of how an analyst has to do more than run an algorithm. It’s easy to fool even very sophisticated algorithms with strong correlations and so much of our post-analysis ANALYSIS was about understanding how the store geography and the algorithm results play together.

In addition to navigation findings like these, the analysis also included the impact of Associates on conversion. In general, the answer we got was the more interactions the merrier (at the cash register). Not every store may yield the same finding (and it’s also worth thinking about whether a single conversion optimization metric is appropriate here – in my Why Analytics Fails talk I argue for the value in picking potentially countervailing KPIs like conversion and shopper satisfaction as dual optimization points).

Even after multiple interactions, additional interactions had a positive impact on sales.

This should be obvious but I’ll hearken back to our early digital analytics days to make a point. We sometimes found that viewing more pages on a Website was a driver of conversion success. But that didn’t mean chopping pages in half (as one client did) so that that the user had to consume more pages to read the same content was a good strategy.

Just because multiple Associate interactions in a store with a normal interaction strategy created lift, it doesn’t mean that, for example, having your Associates tackle customers (INTERACTIOOOON!!!) as they navigate the floor will boost conversion.

But in this case, too much interaction was a legitimate concern. And the data indicates that – at least as measured by conversion rates – the concern did not manifest itself in shopper turn-off.

If you’re interested in getting the whole deck – just drop me a note. It’s a nice intro into the kind of shopper journey tracking you can do with our DM1 platform and some of the ways that machine learning can be used to drive better practice. And, as I mentioned, if you’d like to check out the DXi stuff – and it’s interesting from a pure digital perspective too – drop me a line and I’ll introduce you.

The Measurement Minute

If I’m known for anything, it’s mind-numbingly long blog posts. Brevity? Not my style. But I’ve been challenging myself to go shorter and the Measurement Minute is the ultimate test. These are one-minute podcasts covering just about anything measurement and analytics related. I’ll try to keep them coming. Though as many famous writers have remarked (or been said to remark) – making things shorter takes time.

Check it out on iTunes:

https://t.co/t5CK2NkZRz

Machine Learning and Store Analytics

Not too long ago I spoke in Toronto at a Symposium focused on Machine Learning to describe what we’ve done and are trying to do with Machine Learning (ML) in our DM1 platform and with store analytics in general. Machine Learning is, in some respects, a fraught topic these days. When something is hard on the hype cycle, the tendency is to either believe it’s the answer to every problem or to dismiss the whole thing as an illusion. The first answer is never right. The second sometimes is. But ML isn’t an illusion – it’s a real capability with a fair number of appropriate applications. I want to cover – from our hands-on, practical perspective – where we’ve used ML, why we used ML and show a case-study of some of the results.

 

Just what is Machine Learning?

In its most parochial form, ML is really nothing more than a set of (fairly mature) statistical techniques dressed up in new clothes.

Here’s a wonderful extract from the class notes of a Stanford University expert on ML: (http://statweb.stanford.edu/~tibs/stat315a/glossary.pdf)

Machine Learning vs Statistics

It’s pretty clear why we should all be talking ML not statistics! And seriously, wasn’t data science enough of a salary upgrade for statisticians without throwing ML into the hopper?

Unlike big data, I have no desire in this case to draw any profound definitional difference between ML and statistics. In my mind, I think of ML as being the domain of neural networks, deep learning and Support Vector Machines (SVMs). Statistics is the stuff we all know and love like regression and factor analysis and p values. That’s a largely ad hoc distinction (and it’s particularly thin on the unsupervised learning front), but I think it mostly captures what people are thinking when they talk about these two disciplines.

 

What Problems Have We Tried to Solve with ML

At a high-level, we’ve tackled three types of problems with ML (as I’ve casually defined it): improving data quality, shopper type classification, and optimal store path analysis.

Data quality is by far the least sexy of these applications, but it’s also the area where we’ve done the most work and where the everyday application of our platform takes actual advantage of some ML work.

When we setup a client instance on DM1, there’s a number of highly specific configurations that control how data gets processed. These configurations help guide the platform in key tasks like distinguishing Associate electronic devices from shopper devices. Why is this so important? Well, if you confuse Associates with shoppers, you’ll grossly over-count shoppers in the store. Equally bad, you’ll miss out on a real treasure trove of Associate data including when Associate/Shopper interactions occur, the ratio of Shoppers to Associates (STARs), and the length and outcome from interactions. That’s all very powerful.

If you identify store devices, it’s easy enough to signature them in software. But we wanted a system that would do the same work without having to formally identify store devices. Not only does this make it a lot easier to setup a store, it fixes a ton of compliance issues. You may tell Associates not to carry their own devices on the floor, but if you think that rule is universally followed your kidding yourself. So even if you BLE badge employees, you’re still likely picking up their personal phones as shopper devices. By adding behavioral identification of Associates, we make the data better and more accurate while minimizing (in most cases removing) operational impact.

We use a combination of rule-based logic and ML to classify Associate behavior on ALL incoming devices. It turns out that Associates behave quite differently in stores than shoppers. They spend more time. Go places shoppers can’t. Show up more often. Enter at different times. Exit at different times. They’re different. Some of those differences are easily captured in simple IF-then programming logic – but often the patterns are fairly complex. They’re different, but not so easily categorized. That’s where the ML kicks in.

We also work in a lot of electronically dense environments. So we not only need to identify Associates, we need to be able to pick-out static devices (like display computers, endless aisle tablets, etc.). That sounds easy, and in fact it is fairly easy. But it’s not quite as trivial as it sounds; given the vagaries of positioning tech, a static device is never quite static. We don’t get the same location every time – so we have to be able to distinguish between real movement and the type of small, Brownian motion we get from a static device.

Fixing data quality is never all that exciting, but in the world of shopper journey measurement it’s essential. Without real work to improve the data – work that ML happens to be appropriate for – the data isn’t good enough.

The second use we’ve found for machine learning is in shopper classification. We’re building a generalized shopper segmentation capability into the next release of DM1. The idea is pretty straightforward. For years, I’ve championed the notion of 2-tiered segmentation in digital analytics. That’s just a fancy name for adding a visit-type segmentation to an existing customer segmentation. And the exact same concept applies to stores.

As consultants, we typically built highly customized segmentation schemes. Since Digital Mortar is a platform company, that’s not a viable approach for us. Instead, what we’ve done is taken a set of fairly common in-store behavioral patterns and generalized their behavioral signatures. These patterns include things like “Clearance Shoppers”, “Right-Rail Shoppers”, “Single Product Focused Shoppers”, “Product Returners”, and “Multi-Product Browsers”. By mapping store elements to key behavior points, any store can then take advantage of this pre-existing ML-driven segmentation.

Digital Mortar's DM1 Shopper Segmentation

It’s pretty cool stuff and I’m excited to get it into the DM1 platform.

The last problem we’ve tackled with ML is finding optimal store paths. This one’s more complex – more complex than we’ve been comfortable taking on directly. We have a lot of experience in segmentation techniques – from cluster analysis to random forests to SVMs. We’re pretty comfortable with that problem set. But for optimal path analysis, we’ve been working with DXi. They’re an ML company with a digital heritage and a lot of experience working on event-level digital data. We’ve always said that a big part of what drew us to store journey measurement is how similar the data is to digital journey data and this was a chance to put that idea to the test. We’ve given them some of our data and had them work on some optimal path problems – essentially figuring out whether the store layout is as good as possible.

Why use a partner for this? I’ve written before about how I think Digital Mortar and the DM1 platform fit in a broader analytics technology stack for retail. DM1 provides a comprehensive measurement system for shopper tracking and highly bespoke reporting appropriate to store analytics. It’s not meant to be a general purpose analytics platform and it’s never going to have the capabilities of tools like Tableau or R or Watson. Those are super-powerful general-purpose analytics tools that cover a wide range of visualization, data exploration and analytic needs. Instead of trying to duplicate those solutions we’ve made it really easy (and free) to export the event level data you need to drive those tools from our platform data.

I don’t see DM1 becoming an ML platform. As analysts, we’ll continue to find uses for ML where we think it’s appropriate and embed those uses in the application. But trying to replicate dedicated ML tools in DM1 just doesn’t make a lot of sense to me.

In my next post, I’ll take a deeper dive into that DXi work, give a high-level view of the analytics process, and show some of the more interesting results.