Scraping and Analyzing ELC Brand Presence on Sephora

Posted on Jul 25, 2018

We all celebrated Mother’s Day on May 13th, thanking the beautiful mums in our own ways. I was strolling around in NYC, enjoying a beautiful summer day and noticed many beauty brands attracting consumers through promotions and gift packages for moms. It made the data enthusiast in me want to go behind the scene and look at beauty in terms of numbers. I decided to limit my scope to a beauty giant based here out of NYC – The Estee Lauder Company(ELC). And where else to look for data than every girl’s favorite beauty specialist – Sephora. ELC owns 29 beauty brands, of which 19 are available on Sephora. I decided to look into these 19 brands.


Data Scraping and Cleaning

The first and foremost step was to scrape Sephora website to collect data. The website lists down cost, number of reviews, customer ratings and number of likes (favorites) for each product. The website has products divided into various categories (Makeup, Skincare, Fragrance, Hair, Bath & Body and so on) for easy search by consumers. Scraping the website also gives you total number of products for each brand by category.

However, what the website does not give you is sales figures (for obvious reasons) for brands. The data scientist in me craved more data than what I could get from Sephora to have at least some indication of sales for ELC. Thanks to Beauty Packaging, I could get insights into rankings and sales of the beauty companies. I scraped the website to understand ELC’s position in the industry. As there are multiple beauty categories, I wanted to get some sense on which ones are more profitable for ELC and what is driving sales. I could find this data in ELC’s 2017 annual report.


I used Selenium to scrape both Sephora and Beauty Packaging to extract the required data. One particular thing to be taken care of while scraping Sephora was that “Ratings & Reviews” section on the product page shows up only when scrolled down to the place on page where it is hidden. This section has the totals no. of reviews and rating for each product, which I needed to scrape.  I made sure my Selenium code scrolled down and got the Ratings & Review section showing up on each product’s page.

Since I just needed 11 rows of data from ELC annual report, I just grabbed them manually.  Once I had all the required data, I decided to use Python for data cleaning, processing and analyzing.


Data Analysis & Insights

 I started off by looking at the sales of companies. ELC ranked 3rd biggest beauty empire globally in 2017 with sales of USD 11.8 billion. I looked at the trends of top 6 beauty companies (top 6 based on 2017 sales) for past 7 years.

A little research into these trends: P&G has been divesting many of its brands to focus on selective categories. They sold more than 40 brands in 2016 to Coty and hence the increase there for Coty. ELC’s acquisition strategy has been helping it to grow and surpass P&G marginally in 2017 to become number three. Also, compared to other top beauty organizations, ELC has a unique market position that it only targets the high-end/ luxury market segment vs. drugstore segment.

Looking at ELC’s annual figures for 2017 by categories, makeup was the biggest driver of sales, followed by skincare. In terms of operating margins, skincare had the highest margins.

Deep diving into data scraped from Sephora across all ELC brands, Clinique and Tom Ford have the strongest brand presence. I defined presence as the number of products available to consumers by brand.

Next, I looked at the cost range for each brand to get an insight into the costlier vs. the more affordable brands by ELC. This was as expected: brands like Glamglow, Clinique, Too-Faced have comparatively lower median product costs, while niche brands like Kilian and LaMer have high median costs. Kilian, the prestige fragrance brand, is the costliest of all the ELC brands on Sephora with median cost of USD 235 across products. Glamglow has the lowest median price of USD 24.

Does cost influence customer engagement?

I also wanted to look for an answer to another question: all ELC brands already operate in luxury segment but are the customers, who are ready to shell out more money on luxury brands vs the drugstore, still sensitive to cost? For this, I looked at customer engagement against the product costs by brand and by each category. Customer engagement was defined as the average number of reviews across products in a category for a brand. This gives an idea into how many customers experienced the brand. Number of reviews don’t equate to exact no. of customers who have used the product but given the limited data available, no. of reviews provides some indication of the user base. Product costs are averaged across products for a brand in a category. I plotted scatterplots for customer engagement (log) vs. cost. Here are the findings:

  • Skincare – Beyond certain price point ($40), generally customer engagement decreases with price
  • Makeup – Generally beyond $30 price point, customer engagement decreases with product cost
  • Fragrance and Men – again, generally with increase in cost, engagement seems to fall down


Is there any impact of brand presence and cost on avg. rating of a brand?

This was another obvious question I wanted to answer. I plotted bubble charts, where bubble size represents average cost of the brand. Below are the findings by category:

  • Skincare, Fragrance and Men – Cost and presence does not seem to influence ratings
  • Makeup – Higher cost brands seem to have higher ratings. Brand presence apparently does not differentiate the ratings

Likes vs. Ratings: is there a different story?

Another interesting thing that I explored was if average no. of likes for a brand reflect the ratings. Sephora website allows customers to add products to their ‘loves’ list. Any product a customer loves/likes can be added to this list and accessed later on. This can be considered similar to ‘likes’ on Facebook. Surprisingly, brands with higher no. of likes have comparatively lower ratings across categories in general.


  • ELC positions itself different from other beauty companies by targeting luxury segment only
  • Makeup is the biggest contributor to driving sales for ELC, while skincare has the highest operating margins
  • Clinique and Tom Ford have the biggest brand presence at Sephora
  • Kilian and La Mer are the costliest (median and highest cost) of all the ELC brands
  • Cost seems to influence customer engagement, reflecting on customers being cost conscious
  • Generally, there seems to be an inverse relationship between likes and avg. ratings
  • Other types of data such as sales at product level, customer profiling, Sephora footprint and reviews analysis can be used to further analyze ELC brands and make cross-company comparisons

About Author

Related Articles

Leave a Comment

Google December 17, 2020
Google One of our guests not long ago encouraged the following website.
CBD For Dogs December 16, 2020
CBD For Dogs [...]Here is a good Weblog You may Obtain Exciting that we Encourage You[...]
YouTube August 28, 2020
YouTube [...]the time to study or check out the subject material or internet sites we have linked to beneath the[...] August 26, 2020 [...]very handful of sites that take place to become comprehensive below, from our point of view are undoubtedly very well really worth checking out[...] August 19, 2020 [...]Every after in a while we pick blogs that we study. Listed below are the most recent websites that we pick out [...]
cbd cats July 9, 2020
cbd cats [...]The facts talked about inside the article are a few of the most effective accessible [...]

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