Greenlens

Every public rating on one cosmetic, the places they disagree kept visible, and a single score whose weighting you control.

Navigate

  • Browse
  • In your home
  • Methodology
  • Criteria
  • Extension
  • How scoring works
  • Account

The one rule

We never blend a score that hides who disagrees. Funding model travels with every rating. Weights are computed at read time and never stored.

Cosmetics only · lead with safetyOpen data via Open Beauty Facts · no EWG/Yuka scraping
As an Amazon Associate, Greenlens earns from qualifying purchases. Affiliate income never changes a rating or ranking.PrivacyTerms
Catalog/Brite/Semi Permanent Colour Purple 75mL
B
Brite

Semi Permanent Colour Purple 75mL

uncategorizedGTIN 9421903034120

Your composite

74OUT OF 100Good

range 66–96

56▲▼ split
Safety
—
Eco
92
Labor
—
Pkg

Why this score

60-point split

40

Scan

100

Precautionary

64

Tolerance

See why →
Find on Amazon↗

Affiliate link. We may earn a commission. It never changes a rating.

In your home

Sort this into a room

Alternatives

No category on file, so no fair comparison.

Flagged

7 ingredients

What's flagged →

Raters split

Ingredient safety

A 60-point gap between the two loudest voices.

40Greenlens Ingredient ScanIndependent
vs
100Greenlens Precautionary ScreenIndependent
050100
See why, ingredient by ingredient→

Every rater, every axis

Ingredient safety

Split · 60 pts apart
  • Greenlens Ingredient ScanIndependentunverified match
    40
  • Health Canada Ingredient HotlistGovernmentunverified match
    85
  • Greenlens Precautionary ScreenIndependentunverified match
    100
  • Greenlens Tolerance ScreenIndependentunverified match
    64

Lowest 40 · highest 100 · gap 60

Also screened — no listing found

  • US NTP Report on Carcinogens
  • IARC Monographs
  • ECHA SVHC Candidate List
  • ANSES Endocrine Disruptors
  • EU Harmonised Classification (CLP Annex VI)
  • California Proposition 65

Environmental

    Also screened — no listing found

    • EU Microplastics Restriction

    Labor

    • Cruelty-Free CertificationNonprofitunverified match
      92

    Coverage & match quality

    5 ratings · 2 of 4 axes

    • Some ratings rest on an automatic match that has not been human-reviewed.
    • Fewer raters reach smaller-brand products, so a missing rating is not a clean bill of health, only a gap.

    no black box

    How this score is built

    We don't rate products ourselves. We collect what each public rater already says, put every scale on common ground, and keep the disagreements visible instead of averaging them away.

    1. 1

      Collect each rater's own score

      Every source keeps its native verdict for this product. We never invent a score for an axis a source didn't measure.

    2. 2

      Normalize to 0–100, higher = better

      Raters can use different scales and directions: some where a low number means safe, some where a high one does. We map them all onto one 0–100 axis and flip the ones that run backwards so the numbers are finally comparable.

    3. 3

      Average per axis, but keep the spread

      Scores on the same axis become one representative number (their mean). When raters split by 20+ points we flag it and keep every rater's number. A disagreement is never blended into silence.

    4. 4

      Your weights make the overall

      The ring is the weighted average of the four pillars using your weights. It's computed fresh every time and never stored, so there's no hidden “objective” default.

    worked example · Ingredient safety

    • Greenlens Ingredient Scan40 on 0–100→40
    • Health Canada Ingredient Hotlist85 on 0–100→85
    • Greenlens Precautionary Screen100 on 0–100→100
    • Greenlens Tolerance Screen64 on 0–100→64
    Average of 40 · 85 · 100 · 64pillar56

    Raters split here, so this 56 is a midpoint, not a consensus. The spread stays on the “every rater” list above.

    Why the safety score

    Greenlens Ingredient Scan

    Independent · EU regulatory reference

    40/100

    Flagged 6 of 19 ingredients: 6 restricted.

    • CETRIMONIUM CHLORIDE (1) / STRARTRIMONIUM CHLORIDE (1)EU Cosmetics Regulation Annex III (restricted)−10
    • HC YELLOW NO 2EU Cosmetics Regulation Annex III (restricted)−10
    • BASIC VIOLET 2EU Cosmetics Regulation Annex III (restricted)−10
    • BASIC ORANGE 31EU Cosmetics Regulation Annex III (restricted)−10
    • HC BLUE NO 15EU Cosmetics Regulation Annex III (restricted)−10
    • HC YELLOW NO 4EU Cosmetics Regulation Annex III (restricted)−10

    Starts at 100; 13 other ingredients carried no recognized regulated hazard. Absence of a flag means no regulated hazard was recognized — not proof of safety. This is one lens; see where raters disagree above.

    Why this score

    Every ingredient, under all three lenses

    The Scan is one opinion. The strict and lenient lenses read the same list and land 60 points apart. See what each one flags, and what it costs.

    All three lenses →

    Weighted by what you care about

    Tune your weights

    composite recomputes live

    +
    1.0×
    Environmentalno rating

    No rater covers this axis for this product, so its weight can't move the score.

    1.0×
    Packagingno rating

    No rater covers this axis for this product, so its weight can't move the score.

    0 means ignored. Higher = more weight in your composite.

    Flagged ingredients

    • CETRIMONIUM CHLORIDE (1) / STRARTRIMONIUM CHLORIDE (1)3 positions →
    • Citric Acid4 positions →
    • HC YELLOW NO 23 positions →
    • BASIC VIOLET 23 positions →
    • BASIC ORANGE 313 positions →
    • HC BLUE NO 153 positions →
    • HC YELLOW NO 43 positions →

    Ingredients, decoded

    Data availability

    Good·15 of 19 characterized

    Our sources have reference data on 15 of 19 listed ingredients; 4 are uncharacterized in our data — a gap, not a clean bill.

    Every listed ingredient: its function, where our safety lists land, and whether our sources have data on it.
    IngredientWhat it doesSafetyData
    Aqua→solventsolventNo flags in our sourcesWell-characterized
    Cetearyl Alcohol→emollientemulsion stabilisingopacifyingemollientemulsion stabilisingopacifyingNo flags in our sourcesWell-characterized
    Distearoylethyl Hydroxyethylmonium Methosulfate→antistatichair conditioningantistatichair conditioningNo flags in our sourcesWell-characterized
    Cetrimonium Chloride→preservativeantimicrobialantistaticpreservativeantimicrobialantistatic4/10EU-restricted (with limits)· flagged by 2 of 9raters disagreeReferenced
    Ceteareth-20→cleansingsurfactant - cleansingsurfactant - emulsifyingcleansingsurfactant - cleansingsurfactant - emulsifyingNo flags in our sourcesWell-characterized
    Glyceryl Stearate→emollientsurfactant - emulsifyingemollientsurfactant - emulsifyingNo flags in our sourcesWell-characterized
    Citric Acid→fragrancechelatingbufferingfragrancechelatingbuffering4/10Health Canada Hotlist — restricted· flagged by 1 of 9raters disagreeReferenced
    May contain→—Not in our sourcesNo data
    Basic Blue 99→hair dyeinghair conditioninghair dyeinghair conditioningNo flags in our sourcesCosIng-catalogued
    HC Yellow No 2→hair dyeinghair dyeing4/10EU-restricted (with limits)· flagged by 2 of 9raters disagreeReferenced
    Basic Yellow 40→hair dyeinghair dyeingNo flags in our sourcesCosIng-catalogued
    Basic Violet 2→hair dyeinghair dyeing4/10EU-restricted (with limits)· flagged by 2 of 9raters disagreeReferenced
    Basic Orange 31→hair dyeinghair dyeing4/10EU-restricted (with limits)· flagged by 2 of 9raters disagreeReferenced
    Ext→—Not in our sourcesNo data
    Violet 2→—Not in our sourcesNo data
    HC Blue No 15→hair dyeinghair dyeing4/10EU-restricted (with limits)· flagged by 2 of 9raters disagreeReferenced
    HC Yellow No 4→hair dyeinghair dyeing4/10EU-restricted (with limits)· flagged by 2 of 9raters disagreeReferenced
    Basic Violet 16→hair dyeinghair dyeingNo flags in our sourcesCosIng-catalogued
    Blue 1→—Not in our sourcesNo data

    Where this came from

    Cruelty-free status recorded from crueltyfree.peta.org ↗

    Researched facts on Greenlens always carry the page that stated them — nothing is inferred from a model's memory.