e-Commerce Purchase Prediction

Posted on Dec 17, 2019
The skills I demoed here can be learned through taking Data Science with Machine Learning bootcamp with NYC Data Science Academy.

With the development of new technologies and increasing traffic of users on the internet and social media, many people have started online businesses. This new field has been going on for almost 40 years - one of the first transactions recorded was in 1982 - but it wasn't until the early 2000's that it started gaining popularity.

E-commerce essentially is the selling and buying of goods or services on the internet. One of the main benefits is that you can start a business and get it up and running in a day or just a few hours. Among with faster buying for customers, companies can easily reach new customers, give them a personalized experience and not to forget, low operational costs.

On average, an e-commerce website has a conversion rate of 2% - 3%. In this project, the objective was to seek ways to increase conversion rate by using analysis and machine learning tools, to understand our audience and recommend marketing strategies for the Google Merchandise Store - a website that sells Google-branded merchandise and ships worldwide.

Every visitor that enters an e-Commerce website goes through what is known as the e-commerce funnel. It looks like this:


The focus on this project is between the beginning of the Interest section and the end of the Desire section. The dataset used was taken from Kaggle and because it was a demo dataset some information was limited. Tools like SQL, Google BigQuery, Pandas and Sci-kit learn were used to extract, transform and analyze the information.   

To analyze this dataset we took different approaches, and some of the questions we wanted to answer were: 

  • Where are the visitors coming from?
  • Are they coming from ads or organically?
  • What devices are they using? Any browser in specific?
  • What are they buying?
  • How do they interact with the website?
  • Are there any features that help predict a purchase?
  • What is the conversion rate for this website?

To answer these questions we decided to follow the customer path - we started by analyzing where are they coming from, analyzing their behavior and finally seeing who is more willing to make a purchase. One important indicator in an e-Commerce website is the conversion rate, which is is the number of conversions divided by the total number of visitors.


For example, if an e-Commerce site receives 200 visitors in a month and has 50 sales, the conversion rate would be 50 divided by 200, or 25%. For this particular website, it was interesting to see that even though there is a strong brand behind the store, it has only a conversion rate of 1.40%

In Figure 1 we can see that traffic comes from all over the world but the highest conversion rate is from the United States.

Figure 1: Visitors Location

Now going a level deeper in our visitors. From the analyzed data, it's clear that most visitors that make a purchase use a desktop to access the website followed by mobile, and the operating system they use is either Macintosh or Chrome OS. Their favorite browser is Chrome followed by Firefox. 

Figure 2: Device, OS and Browser Used 

We now know where are they are located but the next question is, how do they end up on this particular website? By analyzing the traffic source and doing some exploratory data analysis, in Figure 3 it's apparent that most of the visits that convert to a purchase come from Referral which in other words is incentivizing your current customers to refer new people to your business. When the new customer makes a purchase, you reward the referrer with a discount, credit, small gift, or whatever they find valuable.

Figure 3: Marketing Channels

Overall Conversion

Like was mentioned before, the overall conversion rate for this website was 1.40%, but in Figure 3 it is noticeable that there exists a higher conversion rate depending on the channel where visitors are coming from and the Referral channel is leading the way with almost 7% conversion rate.

Although more exploratory analysis was done, Figure 3 was an important indicator of where our customers are coming from and how they are referred to the website or what are they typing on the search bar. 

The next step was to see how visitors interact with the website, for example, what are they looking for? What are they buying? The two following figures summarize the previous idea.

Figure 4: Top Products by Revenue Figure 5: Top Products by Quantity Sold

From the two previous figures, it is obvious that Water Bottles, Pens, Apparel and Journal are very popular among the products purchased, making around $745,000 of revenue in a year. On the other hand, the average revenue per month was also analyzed and it can be observed in figure 6. The month with the highest revenue is April followed by July, August, and December.

Figure 6: Average Daily Revenue

Deeper look

Taking a deeper look into these unusual months, and doing some research on Google events happening at that time in that particular year, it was noticeable that these sales came from Google itself given that most of the products purchased were office supplies and Google T-shirts.

One particular interest in this project was to determine if a visitor could be a potential customer and what features these people had that made them quality visitors. Because it was a classifying problem, a Random Forest was run with a different set of features to give a probability of session quality for each customer. Two models were tested, one was focused on the traffic source and the other one was focused on products and page interaction. The top 5 feature importance for each model can be summarized in the following figures.

Figure 7: Traffic Source Focus - Top 5 Features

Figure 8: Product Focus - Top 5 Features

As noted from before, depending on the focus and even though both models have similar features, their top 5 features are very different from each other. On the other hand, it is worth noticing their scores for each model to determine which one is describing the data better.

Figure 9: Traffic Source Focus - Scores

Figure 10: Product Focus - Scores


From the two previous figures, it is worth noting that the Accuracy of the model is very high on both models, nevertheless, Precision, Recall, and F1 score is higher on the product focus model, making it a better model to try to predict if a visitor will buy some merchandise. Even though the model is not perfect, it is a good approach to understand what drives a sale on a website and how can different selling strategies be implemented knowing this information.

In conclusion, our analysis gives us deep understanding of who are our customers, where are they coming from, and how they are entering the website and interacting with it. By using Machine Learning tools we could come with a model that can predict a purchase to a certain extent. For future work, it would be interesting to add more variables and come with a better model.

Trying to predict the probability of purchase requires a deep understanding of the industry, the website, and human behavior. e-Commerce websites could benefit deeply from Machine Learning and other Data Science tools. Selling and re-selling strategies can be developed based on the information gathered from customers, bringing more revenue and better traffic to the website.

About Author

Xavier Granda

Xavier is a certified data scientist with an engineering background alongside with business and marketing experience. He is an organized, driven self-starter, team player, with passion in helping organizations achieve goals and making their processes and tasks more...
View all posts by Xavier Granda >

Leave a Comment

No comments found.

View Posts by Categories

Our Recent Popular Posts

View Posts by Tags

#python #trainwithnycdsa 2019 2020 Revenue 3-points agriculture air quality airbnb airline alcohol Alex Baransky algorithm alumni Alumni Interview Alumni Reviews Alumni Spotlight alumni story Alumnus ames dataset ames housing dataset apartment rent API Application artist aws bank loans beautiful soup Best Bootcamp Best Data Science 2019 Best Data Science Bootcamp Best Data Science Bootcamp 2020 Best Ranked Big Data Book Launch Book-Signing bootcamp Bootcamp Alumni Bootcamp Prep boston safety Bundles cake recipe California Cancer Research capstone car price Career Career Day citibike classic cars classpass clustering Coding Course Demo Course Report covid 19 credit credit card crime frequency crops D3.js data data analysis Data Analyst data analytics data for tripadvisor reviews data science Data Science Academy Data Science Bootcamp Data science jobs Data Science Reviews Data Scientist Data Scientist Jobs data visualization database Deep Learning Demo Day Discount disney dplyr drug data e-commerce economy employee employee burnout employer networking environment feature engineering Finance Financial Data Science fitness studio Flask flight delay gbm Get Hired ggplot2 googleVis H20 Hadoop hallmark holiday movie happiness healthcare frauds higgs boson Hiring hiring partner events Hiring Partners hotels housing housing data housing predictions housing price hy-vee Income Industry Experts Injuries Instructor Blog Instructor Interview insurance italki Job Job Placement Jobs Jon Krohn JP Morgan Chase Kaggle Kickstarter las vegas airport lasso regression Lead Data Scienctist Lead Data Scientist leaflet league linear regression Logistic Regression machine learning Maps market matplotlib Medical Research Meet the team meetup methal health miami beach movie music Napoli NBA netflix Networking neural network Neural networks New Courses NHL nlp NYC NYC Data Science nyc data science academy NYC Open Data nyc property NYCDSA NYCDSA Alumni Online Online Bootcamp Online Training Open Data painter pandas Part-time performance phoenix pollutants Portfolio Development precision measurement prediction Prework Programming public safety PwC python Python Data Analysis python machine learning python scrapy python web scraping python webscraping Python Workshop R R Data Analysis R language R Programming R Shiny r studio R Visualization R Workshop R-bloggers random forest Ranking recommendation recommendation system regression Remote remote data science bootcamp Scrapy scrapy visualization seaborn seafood type Selenium sentiment analysis sentiment classification Shiny Shiny Dashboard Spark Special Special Summer Sports statistics streaming Student Interview Student Showcase SVM Switchup Tableau teachers team team performance TensorFlow Testimonial tf-idf Top Data Science Bootcamp Top manufacturing companies Transfers tweets twitter videos visualization wallstreet wallstreetbets web scraping Weekend Course What to expect whiskey whiskeyadvocate wildfire word cloud word2vec XGBoost yelp youtube trending ZORI