Cruelty -Free brands vs None Cruelty-Free brands

Posted on Jan 16, 2019

Project GitHub | LinkedIn:   Niki   Moritz   Hao-Wei   Matthew   Oren

The skills we demoed here can be learned through taking Data Science with Machine Learning bootcamp with NYC Data Science Academy.


We are living in a society where younger generations are more health-conscious than any other previous generations. We are bound to make hundreds of decisions everyday and it has become important for us to center these decisions around our health. Making health-conscious decisions is not just limited to adhering to a healthy diet and committing to routine exercise. It also includes shopping ethically so that we can achieve a more sustainable environment. A year ago, I discovered that animal testing in cosmetic was conducted not only on common laboratory animals but was also conducted on dogs and cats. It is shocking to me how it is still a common industry practice and I believe it is unnecessary to use animals to test cosmetic products. There are humane alternatives that cosmetic companies can pursue to achieve the same results and these products are clearly marketed as cruelty -free. I understand, as a consumer, it is my responsibility to voice this concern through my purchases so I started to pay attention to the product choices that are available on the market in order to stop supporting the ones which conduct animal testings.

What does Cruelty-Free mean?

In short, “cruelty-free” simply means that a product and its ingredients were not tested on any types of animals.


In order to compare cruelty-free products and non-cruelty free products I scraped Sephora’s website using Selenium. Sephora is a mainstream multinational chain of beauty stores that offers beauty products including cosmetics, skincare, fragrance, nail and hair products. As a result, I scraped close to 5,000 products out of 81 brands. The brands breaks down to 38 cruelty-free and 43 non-cruelty-free. Out of these brands there are 1,343 cruelty-free product and 3,587 non-cruelty-free product.

My biggest challenge is to overcome the website’s scrolling mechanism in order to load everything on the page for the scrape. This challenge is present on both the brand pages and product pages. In order to get the rating section and the reviews I will need to make sure the page scrolls down to the exact location of the respective sections. The second challenge I have is speed - Selenium is slow. I did not end up scraping the reviews as I planned to since most products have more than 1,000 reviews and some have close to 15,000 reviews. For one product that has 4,000 reviews it took 6 hours to scrap all the reviews and this proves to be an impossible task to complete given the timeframe I have for the scope of this study.


  1. Myth:  Cruelty-free product costs more.

Since the group is categorical data and the price is numeric data, I used Seaborn to do a box plot.

The right side of the plot is after the data being standardized. It can be observed that cruelty-free product actually cost less on average and most cruelty-free product is priced in a more reasonable price range.

The left side is before the data being standardized. The interesting finding here are the outliers on the left box plot. These outliers fall within a price range of $400 to $600 and it is worthy to note that these outliers are products from luxury brands such as Tom Ford or La mer and the $600 ones are beauty devices.

  1. Does price affects number of reviews and rating? Does “Love” counts affects number of reviews?

I want to find out whether a relationship exists between “Love” counts (akin to the “Like” concept on Facebook), price, number of reviews and product rating. As you can see from the regression plots on the left side and the scatter plots on the right, the regression line is pretty flat, so there is no linear relationship between the variables. Please note that due to the length of this article I only included a few plots.

  1. Is there any pricing strategy between non-cruelty-free brands versus cruelty-free brands which are owned by the same parent company?

I want to find out the price distribution among brands owned by the same parent company which are cruelty-free versus its non-cruelty-free counterparts (ie: Estee Lauder, Smashbox, Clinique, and Bobbi Brown). I believe by supporting the cruelty-free brands that are owned by a parent company which also offers non-cruelty-free brands, we can send the right message to the parent company and create impact through our purchases. From the chart below you can see Smashbox (owned by Clinque) price range is close to Clinique which means the cruelty-free brand costs almost the same as the parent company’s non-cruelty-free lower tier brand and cost much less than it’s higher tier brands such as Estee Lauder and Bobbi Brown.

  1. Which type of product has the highest average product rating? Cruelty-free vs non-cruelty-free

I used pair plot to see the relationship, scatterplots for joint relationships, and histograms for univariate distributions. As the chart below shows, the brand that has the most reviews and highest average product rating is a cruelty-free brand - u-le Hendrickson.


First is to scrap all the reviews. The rating areas have user data such as user age, location and time-stamp so it may be interesting to see if anyone mentioned cruelty-free. Due to Selenium’s speed I will need to incorporate this with other framework.

Second is to scrap websites that carry generic drug store products since Sephora does not sell generic products. Generic drug store products are generally more affordable.

Third is to find alternatives at the product category level and make recommendations for consumers. Such an example would be to find the best rated mascara from the cruelty-free brands and recommend it to people who purchased the non-cruelty-free mascara based on the highest rating.

About Author

Related Articles

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