What is Beauty Made of?

Posted on Aug 12, 2018

The following blog post accompanies this interactive web application, exploring ingredients in cosmetics sold on www.ulta.com.

What are you putting on your face?

Whatever your daily grooming regimen entails, it surely involves off-the-shelf cosmetic products: cleanser, shampoo, fragrance, makeup, moisturizer, sunscreen, the list goes on. But what are these products made of? How much do they differ by brand? Which brands produce products with potentially undesirable ingredients?

To explore this, I took a look at over 11,000 products listed on www.ulta.com. Check the data out yourself with the interactive web app below:


This data was aggregated using scrapy. The app was built using R Shiny. You can check out the code on github.

Commonly scrutinized ingredients

There are a host of common ingredients in cosmetics that have come under fire for allegedly posing health or environmental hazards. This analysis explores the prevalence of a few of these ingredients:

  • Coal Tar Dyes
  • Formaldehyde
  • Fragrance
  • Palm Oil
  • Parabens
  • Siloxanes
  • Sulfates
  • Sunscreen Chemicals

Some more information on how each was identified and the alleged hazards they each pose is available below.

Note: This app does not investigate claims that any of these ingredients are actually nefarious; it merely identifies which products contain them.

Most common ingredients

Of the list of 11,230 products examined, 9,067 (81%) contained at least one of the above ingredients. When we break this out by family of ingredients, we see that fragrance is by far the most common (present in 5,822 ingredients), followed by coal tar dyes (4,346).

count of products by ingredient group

When we split this out by top level category, we see that most of these products are hair, skincare, and makeup products.

break down by category

It's unsurprising that fragrance is the most common ingredient. According to the FDA:

If a cosmetic is marketed on a retail basis to consumers, such as in stores, on the Internet, or person-to-person, it must have a list of ingredients. In most cases, each ingredient must be listed individually. But under U.S. regulations, fragrance and flavor ingredients can be listed simply as “Fragrance” or “Flavor.”

Here's why: the FDA requires the list of ingredients under the Fair Packaging and Labeling Act (FPLA). This law is not allowed to be used to force a company to tell “trade secrets.” Fragrance and flavor formulas are complex mixtures of many different natural and synthetic chemical ingredients, and they are the kinds of cosmetic components that are most likely to be “trade secrets.” To learn more, see the regulation on cosmetic ingredient labeling and the Federal Register notice for this regulation, which addresses “trade secrets” and the FPLA.

Seeing coal tar dyes predominantly in makeup also seem reasonable, as pigments are a crucial component of makeup.

Top offending brands

The majority of brands -- 347 out of 383 -- have at least one product with at least one commonly scrutinized ingredient. Below are the brands with the highest number of products that meet this criteria.

count of products with a scrutinized ingredient

It's not surprising that Ulta makes the top of the list, since the brand is the most represented one on its own site. We can also look at the brands ordered by the proportion of their products which contain at least one scrutinized ingredient (only brands with 50+ total products are considered below).

proportion of products with a scrutinized ingredient

Some of these brands, such as Klorane, Yes To, and Hempz are a little more surprising because they market themselves heavily as "natural" brands.

three brands

Digging in a bit, we see that Yes To actually addresses the presence of fragrance in their products on their website.

Yes To's fragrance is a mix of essential oils, natural aromatic chemicals and other synthetic ingredients that are approved by RIFM (Research Institute for Fragrance Materials). The synthetic ingredients are used when there are no natural alternatives to create the scent.


To dive deeper into your favorite beauty brands, check out the explorer here. To get a look at the underlying code, check out the repository on github.

Ingredients explored in the app

Ingredient Family Perceived Hazards Ingredients in This Analysis
Coal Tar Dyes Coal Tar Dyes are synthetic dyes produced from coal tar. They are common in cosmetics, food products, textiles, and other household products. Ingredients starting with: CI , FD&C, and D&C, P-Phenylenediamine
Formaldehyde Formaldehyde, is an organic compound that can be harmful after prolonged exposure. Formaldehyde
Fragrance In the US, flavor and fragrance ingredients may not have to be explicitly listed and may instead be represented simply as 'fragrance' to protect trade secrets. However, some people may exhibit sensitivity to some of these unlisted ingredients. Fragrance, Parfum
Palm Oil Palm oil is an oil used in food products and cosmetics which is associated with environmental issues such as deforestation. Palm Oil
Parabens Parabens are commonly used preservatives in cosmetics. There may be concerns that prolonged exposure to high concentrations of parabens could have an impact on human health. Paraben, Alkyl Parahydroxy Benzoates
Siloxanes Siloxanes are commonly used in cosmetics for conditioning and increasing softness. However, they may pose some environmental concerns. Cyclotetrasiloxane, Octamethylcyclotetrasiloxane, Cylcopentasiloxane, Polydimethylsiloxan
Sulfates Sulfates such as sodium lauryl sulfate (SLS) are common lathering agents in cleansers and toothpastes, which may be harsh on skin or hair. Sodium Lauryl Sulfate, Sls, Sodium Laureth Sulfate, Sles, Sodium Lauryl Sulfoacetate, Sodium Lauroyl Isoethionate, Sodium Lauroyl Taurate, Sodium Cocoyl Isoethionate, Sodium Lauroyl Methyl Isoethionate, Sodium Lauroyl Sarcosinate, Disodium Laureth Sulfosuccinate
Sunscreen Chemicals Some ingredients common in sunscreen, such as oxybenzone and octinoxate, may pose an environmental hazard to coral reefs. Benzophenone, Paba, Avobenzone, Homosalate, Ethoxycinnmate, Oxybenzone

About Author

Julie Levine

Julie Levine has a BSE in Chemical and Biomolecular Engineering from The University of Pennsylvania. She has worked in a variety of roles in marketing and product management at tech companies including Factual and Datadog. Currently, she is...
View all posts by Julie Levine >

Leave a Comment

No comments found.

View Posts by Categories

Our Recent Popular Posts

View Posts by Tags

#python #trainwithnycdsa 2019 airbnb Alex Baransky alumni Alumni Interview Alumni Reviews Alumni Spotlight alumni story Alumnus API Application artist aws 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 Bundles California Cancer Research capstone Career Career Day citibike clustering Coding Course Demo Course Report D3.js data Data Analyst data science Data Science Academy Data Science Bootcamp Data science jobs Data Science Reviews Data Scientist Data Scientist Jobs data visualization Deep Learning Demo Day Discount dplyr employer networking feature engineering Finance Financial Data Science Flask gbm Get Hired ggplot2 googleVis Hadoop higgs boson Hiring hiring partner events Hiring Partners Industry Experts Instructor Blog Instructor Interview Job Job Placement Jobs Jon Krohn JP Morgan Chase Kaggle Kickstarter lasso regression Lead Data Scienctist Lead Data Scientist leaflet linear regression Logistic Regression machine learning Maps matplotlib Medical Research Meet the team meetup Networking neural network Neural networks New Courses nlp NYC NYC Data Science nyc data science academy NYC Open Data NYCDSA NYCDSA Alumni Online Online Bootcamp Online Training Open Data painter pandas Part-time Portfolio Development prediction Prework Programming PwC python Python Data Analysis python machine learning python scrapy python web scraping python webscraping Python Workshop R 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 Selenium sentiment analysis Shiny Shiny Dashboard Spark Special Special Summer Sports statistics streaming Student Interview Student Showcase SVM Switchup Tableau team TensorFlow Testimonial tf-idf Top Data Science Bootcamp twitter visualization web scraping Weekend Course What to expect word cloud word2vec XGBoost yelp