A few years ago, I was working on a project where my team was asked to build a recommendation system to personalise product offerings on the client’s e-commerce platform. They wanted us to use the latest machine learning technique to build a highly accurate model which would serve up relevant products which the customer was more likely to buy, and therefore increase sales for the company.

With any project, my team and I ask a lot of questions of the data. To build a decent recommendation system, you really need to understand the data. Now, going on a personalisation journey is not just an analytical exercise. It often requires you to really understand your customers as well as how the business operates, so that you can build into the model some business logic which reflects how customers actually behave on your website and how you also want them to behave.

A typical starting point is to ask about any customer analytics the client may already have. As part of that was a request to see any customer segmentation or profiling they may have done. However, I discovered that the only segmentation the company had was one completed by the marketing team using a market research agency. This segmentation was a demographic and attitudinal segmentation, not one based on the e-commerce platform data.

Now, without segmentation of this type, it’s risky to build a recommendation system. The recommendations you get may not be logical as for some businesses products are bought in a certain order or buying one item automatically means you buy another or are excluded from buying another. So, without this existing analysis, we continued with our exploratory data analysis, to discover the answers to these questions ourselves.

One thing we found was that around 80% of people would buy exactly the same product (or extremely similar, i.e., different size, or a variant) on their second purchase. Without giving away who this client is, they sold products which are typically gifts, ones you buy for others but also you could buy for yourself. 

So, it seemed that people had a preferred product which they would repeatedly buy. So, if you built a recommendation system based on that historical data, you would most likely find that the first product people bought would be the most recommended. Now, without the exploratory data analysis, we would have thought there was an error in our analysis as the recommended product would be one they had already bought.

Therefore, once we explained to the client that most people just repeat buy what they bought previously, something a customer segmentation would have shown, we agreed to include logic to promote on the e-commerce site only products which the recommender system identified this person had a high propensity to purchase which was not their previous purchase. 

Now, with the client knowing that most people buy what they purchased previously, this led them to think about pushing emails to customers to repurchase their ‘favourite’ product when they estimated it is likely to run out.

With a customer segmentation based on actual transactional and behavioural data, the client would have known this much earlier. Ideally, any customer-focused analysis would have spotted this. However, this client, like many others, was product-focused and hence their analysis revealed patterns in product sales and not patterns in customer behaviour.

So, if you want to start the journey to personalization, you need to understand your customers. This starts with customer segmentation. If you need help with your customer analytics, get in touch with one of our data analysts at, where they can help you understand your customers better.

Leave a Reply

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