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/Bulldog UK/Original Hair Styling Salt Spray
Original Hair Styling Salt Spray
Bulldog UK

Original Hair Styling Salt Spray

hair

Your composite

94OUT OF 100Excellent

range 82–100

94
Safety
—
Eco
—
Labor
—
Pkg

Why this score

18-point split

82

Scan

100

Precautionary

100

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

Cleaner options

12 found

See better →

Flags

No ingredient flags.

Cleaner options

See 12 cleaner alternatives

Same category, ranked by ingredient safety, never by affiliate payout.

See better →

Every rater, every axis

Ingredient safety

Raters agree
  • Greenlens Ingredient ScanIndependentunverified match
    82
  • Greenlens Tolerance ScreenIndependentunverified match
    100
  • Greenlens Precautionary ScreenIndependentunverified match
    100

Coverage & match quality

3 ratings · 1 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 Scan82 on 0–100→82
  • Greenlens Tolerance Screen100 on 0–100→100
  • Greenlens Precautionary Screen100 on 0–100→100
Average of 82 · 100 · 100pillar94

Why the safety score

Greenlens Ingredient Scan

Independent · EU regulatory reference

82/100

Flagged 3 of 12 ingredients: 1 of concern, 2 regulated allergens.

  • LimoneneEU Cosmetics Regulation Annex III / Reg. (EU) 2023/1545 (labelled fragrance allergen)−3
  • Fragrance / Parfum (undisclosed)Common transparency/sensitization concern (not a regulatory ban)−12
  • LinaloolEU Cosmetics Regulation Annex III / Reg. (EU) 2023/1545 (labelled fragrance allergen)−3

Starts at 100; 9 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 18 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.

Laborno rating

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

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.

Ingredients, decoded

Data availability

Robust·12 of 12 characterized

Our sources have reference data on all 12 listed ingredients.

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
Maris sal→skin conditioningskin conditioningNo flags in our sourcesCosIng-catalogued
Sodium polyitaconate→chelatingchelatingNo flags in our sourcesWell-characterized
Sorbitan oleate decylglucoside crosspolymer→cleansingsurfactant - emulsifyingsurfactant - foam boostingcleansingsurfactant - emulsifyingsurfactant - foam boostingNo flags in our sourcesWell-characterized
Magnesium sulfate→bulkingviscosity controllingbulkingviscosity controllingNo flags in our sourcesWell-characterized
Sodium benzoate→preservativefragranceanticorrosivepreservativefragranceanticorrosiveNo flags in our sourcesWell-characterized
Sorbitol→perfumingfragrancehumectantperfumingfragrancehumectantNo flags in our sourcesWell-characterized
Sodium chloride→fragranceoral carebulkingfragranceoral carebulkingNo flags in our sourcesWell-characterized
Citric acid→fragrancechelatingbufferingfragrancechelatingbuffering4/10Health Canada Hotlist — restricted· flagged by 1 of 9raters disagreeReferenced
Limonene→perfumingdeodorantsolventperfumingdeodorantsolvent7/10ANSES endocrine candidate· flagged by 3 of 9raters disagreeReferenced
Parfum→perfumingfragranceperfumingfragrance4/10Transparency concern· flagged by 1 of 9raters disagreeReferenced
Linalool→perfumingdeodorantperfumingdeodorant6/10EU harmonised skin sensitizer· flagged by 2 of 9raters disagreeReferenced