Skip to main content
← Back to home
Methodology

How we turn dermatology
into a score you can use.

Every SkinCompass score is computed from your answers using documented, transparent formulas. There are no hidden coefficients, no proprietary AI black-boxes, no inputs you cannot trace. This is the methodology behind the system.

The seven principles
Principle 01 — Scoring philosophy

One score per question.
Not one score for everything.

The most common mistake in consumer skincare assessment is the universal score: a single 0–100 rating that purports to summarize your "skin health" or "skin age" or some equally vague composite. We do not build those. The dermatology evidence does not support them. The signals that explain oily breakouts are not the signals that explain cabin-air dehydration or post-isotretinoin recovery, and no honest mathematical model can compress them into one number.

SkinCompass instead operates on a principle of per-question specialization. Each of the twelve Skin Maps has its own scoring engine, calibrated to the specific dermatology literature underlying that question. The Dryness engine has eight independent sub-scores because dryness has eight distinguishable presentations in the literature. The Acne engine separates severity, congestion, inflammation, barrier stress, and mark recovery because they are clinically separable. The Hormone engine adjusts across five cycle phases because the endocrine literature supports phase-specific recommendations.

The result is more reports, with more granular outputs, but each one is more honestly grounded in the underlying science. A user with mixed concerns ends up taking two or three maps that each give a precise read on their respective questions, rather than one bloated quiz that compresses everything into a misleading summary.

Principle 02 — Inputs become scores

A three-stage pipeline,
every step traceable.

Every engine in SkinCompass follows the same three-stage pipeline. Raw quiz answers are normalized into comparable 0–100 values. Those normalized values are aggregated into pattern metrics. The pattern metrics are then weighted against section weights — symptoms, behavior, environment, sensitivity — to produce a final report. Each stage is fully documented; each is traceable backward to the specific input that caused it.

STAGE 01NormalizeEvery answer isconverted to a0–100 scoreSTAGE 02AggregateRelated answerscombine intopattern metricsSTAGE 03WeightSection weightsproduce yourfinal scoreRaw quiz answersPattern scores 0–100Weighted final report

A concrete example from the Dryness engine

The transparency principle is best illustrated with actual math. Here is how the Dryness engine computes its severity sub-score — one of the eight independent sub-scores produced by the engine:

// Dryness severity sub-score
// Base + weighted signal contributions
scoreSeverity = 12 + drynessSeverity × 5
if (pattern === "flaky-xerosis") scoreSeverity += 18
if (visibleFlaking) scoreSeverity += 16
if (postCleanseTightness) scoreSeverity += 12
if (moisturizerWearsOffFast) scoreSeverity += 8
if (winterFlareReported) scoreSeverity += 6
// Final cap at 100
scoreSeverity = Math.min(100, scoreSeverity)

Every weight in that formula is documented: 18 points for a flaky-xerosis pattern because that pattern correlates most strongly with structural barrier failure in the literature; 16 for visible flaking because it is the most directly observable severity signal; 12 for post-cleanse tightness because it is the earliest-warning indicator most users report. The weights are not arbitrary, and they are not hidden. A user who wanted to could rebuild their own severity score on paper.

On top of these raw scores sits a confidence layer. Reports do not present every score with equal certainty — the engine compares your strongest pattern against the runner-up and reports a confidence level (low, medium, high). When confidence is below 74%, the report explicitly prompts you to answer additional Tier-2 questions that would resolve the ambiguity. This prevents the most common failure mode of AI personalization: overconfidence on weak inputs.

Principle 03 — Safety filtering

Unsafe ingredients are removed
before scoring begins.

The most damaging failure mode in skincare software is to recommend an unsafe ingredient and then post-hoc warn the user. We do not do that. If the user is pregnant, breastfeeding, on isotretinoin, in chemotherapy recovery, on photosensitizing antibiotics, on blood thinners, or recovering from a recent procedure, the safety filter removes the contraindicated ingredients from the candidate pool before any product is scored. The user only ever sees products that were safe for their state in the first place.

USER PROFILEPregnancy · Medications · ProceduresSAFETY FILTERUnsafe ingredients removed BEFORE scoring✓ Safe-only product catalog scored✗ Filtered (shown in safety panel)

This architectural choice has a second consequence: the user can see exactly what was filtered and why. Every report that activates a safety filter includes a clearly labeled safety panel at the top, listing which ingredient categories were removed (retinoids, high-dose salicylic acid, hydroquinone, certain peptides, etc.) and the specific medical context that triggered the filter. A user in their first trimester sees a different catalog than the same user three months postpartum, and the report shows the change explicitly.

This is the operational expression of a principle we hold across the platform: first do no harm. A recommendation that cannot survive a safety check does not belong in a SkinCompass report.

Principle 04 — Cross-map intelligence

One map is a snapshot.
Three maps reveal a pattern.

The strongest feature of the SkinCompass system is not any single Skin Map. It is what becomes computable when a user has taken several. The twelve engines are not independent silos — they share a common data schema, which means signals from one engine can be cross-referenced against signals from another. The result is a layer of pattern detection that no single map could surface on its own.

LifestyleSleep, StressHormoneCycle phaseAcneSeverity, marksCROSS-MAP INTELLIGENCEPattern detection across mapsLate-luteal cycle phase + sleep debt → barrier fragility window before next flare

Consider a user who has taken the Lifestyle, Hormone, and Acne Skin Maps. The Lifestyle engine reports chronic sleep debt and elevated cumulative pressure. The Hormone engine reports a clear late-luteal flare pattern with 7–10 day lead time. The Acne engine reports moderate severity concentrated in the chin and jawline. Each individual report is useful. But the cross-map intelligence layer can detect what no single report can: that this user's barrier becomes fragile during late-luteal sleep debt windows, and that fragility is what triggers the acne flare. The intervention is not another active ingredient. The intervention is barrier protection during a specific four-day window of each cycle.

That kind of insight is structurally impossible with one-time, isolated quizzes. It is also the kind of insight that becomes more accurate the more data the platform holds — both for the individual user and, in anonymized aggregate, for the population. Cross-map intelligence is the foundation of the long-term Skin OS architecture.

Principle 05 — Product recommendations

No product appears
without a reason.

Product recommendations follow a deliberate four-step process. First, the safety filter removes contraindicated options. Second, the engine scores every remaining catalog product against the user's profile — concerns, skin type, ingredient tolerance, climate, budget. Third, the top three highest-scoring products are anchored into the AM/PM routine and marked with a Top Match badge. Fourth, the remaining routine slots are filled with the next-highest-matching products, without duplicates and without overlap.

Beyond the basic scoring, two tuning layers adjust the catalog to the specific user. The market bias layer shifts product weights based on shopping habit: K-beauty shoppers receive a +8 boost on Korean brands; US/UK/Canada shoppers receive a +4 boost on Western brands; international shoppers see a fully mixed catalog without forced bias. The Fitzpatrick tuning layer adjusts for skin tone: users with Fitzpatrick V or VI receive a +12 boost on no-white-cast sunscreens and a −8 penalty on white-cast-risk mineral SPFs. Mineral sunscreens that visibly ash on deep skin do not reach the top of recommendation lists for users they would fail on.

We do not accept paid placement. We do not run affiliate-driven recommendation logic. Every product reference in a SkinCompass report is selected by the scoring engine because it fits the user's profile — not because the slot was sold. This is a structural design choice, not a policy claim.

Principle 06 — Clinical referral

We are educational software.
Not a medical service.

The line between consumer skincare and medical dermatology is real, and we are extremely careful to stay on the correct side of it. Every Skin Map's scoring engine includes a clinical referral threshold. When severity, persistence, or specific symptom patterns exceed what a routine intervention can resolve — severe cystic acne, suspicious moles, persistent melasma in deep skin, post-isotretinoin recovery, signs of active skin infection in athletes, chemotherapy skin reactions — the report stops trying to substitute for medical care and explicitly recommends a dermatologist visit.

When the referral threshold is triggered, the report includes a printable visit-prep summary with the user's symptoms, current medications, sport or trigger context, and the specific questions to bring up at the visit. It also includes a Google Maps dermatologist locator filtered to the user's country. The architectural intent is straightforward: SkinCompass should make it easier — not harder — for the right person to reach a dermatologist at the right time.

We will never replace a dermatologist. We are building the educational layer that helps users decide when they need one, and what to bring when they go.

Principle 07 — Handling uncertainty

When the engine isn't sure,
it has to say so.

Most AI personalization software has the same failure mode: it produces confident outputs even when the inputs do not justify them. Five thin answers generate a glossy report. The user assumes the result is reliable because the interface looks polished. The engine never tells them how thin its read actually is. We consider this the single most damaging pattern in consumer AI, and we have engineered the entire SkinCompass system around refusing to do it.

Every Skin Map computes a confidence score alongside its primary outputs. The confidence layer compares your dominant signal against the runner-up: a large gap produces high confidence, a small gap produces medium or low. The report displays this confidence explicitly. If the engine cannot tell whether your dryness pattern is flaky-xerosis or dehydrated-tight-band, it says so, presents both possibilities, and prompts you to answer specific clarifying questions that would resolve the ambiguity.

Confidence thresholds

≥ 88%: High confidence. The dominant pattern is clearly supported by your inputs.
74–87%: Medium confidence. The report names the runner-up pattern alongside the primary one.
< 74%: Low confidence. The report prompts the user to answer additional Tier-2 questions before treating the result as reliable.

The Beauty engine takes this even further: it caps confidence at 88%. Even with the most complete possible quiz, the engine refuses to claim more than 88% confidence on aesthetic matching, because aesthetic preference contains an irreducible amount of subjective variance that no quiz can capture. The cap is built into the engine deliberately, as an admission of what consumer software can honestly know about taste.

Treating uncertainty as a first-class feature — visible, quantified, and honestly communicated — is the methodological commitment that holds the rest of the system together. A platform that admits what it does not know is the only kind of platform that deserves to be trusted with what it does.

See the methodology in action.

The free Barrier Assessment runs on the same scoring pipeline, the same safety filters, and the same confidence layer described above.