← Back to home
The Scientific System

Twelve different engines.
Not one.

Acne isn't dryness. Hormonal cycles aren't travel skin stress. So why would one scoring system serve all of them? Each Skin Map runs on its own mathematical engine — different formulas, different weights, different signals. This page shows you all twelve, with the actual function names from the codebase.

Why 12 engines, not 1?

A generic "skin score" is fast to build but scientifically dishonest. The signals that explain oily breakouts are not the signals that explain cabin-air dehydration on a long-haul flight, and neither overlap meaningfully with cyclical hormonal flares. So we built twelve focused engines instead of one blurry one — each tuned to a specific question, each transparent enough that you can see the math, each producing a report that actually answers your question.

The shared 4-step pattern

What every map does share is the high-level shape: input → engine → report → next step. The engines themselves are completely different.

🧭
STEP 1

Input

You answer 15–30 quiz questions per map. Each question is a science-backed signal: sleep, sebum, climate, sensitivity, hormones, behavior.

🧪
STEP 2

Map-specific engine

Your answers run through that map's own scoring logic — different formulas, different weights, different signals. Acne ≠ Dryness ≠ Hormone.

📊
STEP 3

Personalized report

We turn the math into a readable story: hero score, sub-scores, why-this-matters panels, and a recovery curve where relevant.

🔗
STEP 4

Connected next step

Each report routes you to the most relevant Skin Map next, so the system grows with you instead of restarting every time.

The twelve engines, in detail

Each card below shows the actual scoring logic from the codebase — function names, weights, and outputs. This is the math, not marketing copy.

Acne Engine — 5-score decomposition with a recovery-curve projection
Engine 01

Acne Engine

5-score decomposition with a recovery-curve projection

buildAdvancedFallbackReport() → 5 sub-scores + recovery curve

The Acne engine doesn't just score severity — it decomposes acne into five independent axes: Severity, Congestion, Inflammation, Barrier, and Tone. Each runs on its own logic so the report can tell you what's actually driving your breakouts, not just how bad they look.

The recovery curve uses a real clamped formula: Now = clamp(24 + (100−severity)/4, 18, 42). Better severity scores mathematically push the starting point of recovery higher, so the curve isn't fictional — it's tied to your actual inputs.

Inputs / signals
Lesion typeBreakout zoneSensitivity flagRoutine strengthMarks left behind
Output

5 scores · pattern type · 6-week recovery curve · top-3 product matches by market

Dryness Engine — Eight transparent weighted functions — the most explainable engine
Engine 02

Dryness Engine

Eight transparent weighted functions — the most explainable engine

buildDrynessScores() → { severity, dehydration, barrier, sensitivity, climate, overtreatment, itch, body }

Dryness has the most transparent math of any engine in the system. Every score starts from a base value and adds explicit weighted increments for each signal you give it.

For example: scoreSeverity = 12 + drynessSeverity × 5, then +18 if pattern is flaky-xerosis, +16 if visible flaking, +12 if post-cleanse tightness. Nothing is hidden — you could rebuild your own score on paper if you wanted to.

Inputs / signals
Dryness severity 1–10Visible signsPost-cleanse feelMoisturizer longevityTrigger countIndoor air exposure
Output

8 sub-scores · pattern detection · ingredient highlights · projected recovery

Oily Engine — A three-stage methodology funnel from raw answers to weighted total
Engine 03

Oily Engine

A three-stage methodology funnel from raw answers to weighted total

scoreValue → computeMetrics → computeOverallScore

The Oily engine flows through three sequential stages: each answer is first normalized to 0–100 by scoreValue, then aggregated into pattern metrics by computeMetrics, then summed against section weights (Symptoms, Behavior, Environment, Sensitivity) to produce a final overall score.

It detects five oily-skin patternsT-zone, All-over, Congestion-prone, Dehydrated, Reactive — and shifts product weights based on which one wins.

Inputs / signals
Oil onset speedOil zonesDaily oil level 1–10Congestion behaviorPore visibilitySensitivity overlay
Output

5 metrics · pattern winner · methodology table · routine intensity

Sensitive Engine — A trigger-load × reactivity decision tree across five patterns
Engine 04

Sensitive Engine

A trigger-load × reactivity decision tree across five patterns

computeMetrics() + reactivity-band classifier

Sensitivity isn't one thing — it's at least five distinct patterns, and the engine has to pick which one is most likely yours: Reactive Flush, Barrier-Stressed, Persistent Redness, Ingredient-Reactive, or Bump-Prone Redness.

It does this by combining your reactivity band (1–10) with your trigger-load stack (sun, heat, stress, spicy food, alcohol, skincare, friction) and your calm-down timeline — anywhere from minutes to never-fully-resolved.

Inputs / signals
Reactivity 1–10Trigger frequencyCalm-down timelineVisible redness typeIngredient flag list
Output

Pattern classification · trigger map · barrier-load score · calm routine

Hormone Engine — Phase-shifted product weighting across the five-phase cycle
Engine 05

Hormone Engine

Phase-shifted product weighting across the five-phase cycle

scoreProduct(product, profile) → phase-modified product score

Most skincare engines ignore the single biggest variable in cyclical skin: where you are in the cycle right now. The Hormone engine doesn't.

It uses the formula scoreProduct = base + phase_modifier × weight across the five cycle phasesMenstrual, Follicular, Ovulation, Luteal, Late Luteal. So the same person gets different product priorities in different weeks, because their skin literally is different.

Inputs / signals
Cycle phaseHormonal volatilityFlare window timingCyclical breakout zonesSensitivity baseline
Output

Phase-by-phase routine · cycle tracker · top product picks per phase

Pigmentation Engine — Seven independent risk and burden scores plus product-fit ranking
Engine 06

Pigmentation Engine

Seven independent risk and burden scores plus product-fit ranking

computePigmentBurden + RelapseRisk + BarrierRisk + RoutineFeasibility + Confidence + ProductFit

Pigmentation isn't just how dark the marks are — it's also how likely they are to come back, how stressed your barrier is, and whether your routine is realistically doable. The engine separates all of this into seven distinct scores.

Function names from the actual codebase: computeActiveIntensity, computePigmentBurdenScore, computeRelapseRiskScore, computeBarrierRiskScore, computeRoutineFeasibilityScore, computeConfidenceScore, computeProductFitScore.

Inputs / signals
Pattern type (PIH / sun / melasma / friction)Color toneDurationSun exposure habitsActive ingredients in useBarrier reactivity
Output

7 sub-scores · color-tone matrix · pattern winner · gentle vs aggressive routine track

Beauty Engine — A six-axis alignment score, not a problem score
Engine 07

Beauty Engine

A six-axis alignment score, not a problem score

computeBeautyOverallScore() → weighted_avg(methodology_rows)

Beauty is the only engine that doesn't measure problems — it measures alignment between your skin and the look you actually want.

The six axes: Complexion Fit, Wear Stability, Tone Harmony, Formula Safety, Style Coherence, Finish Compatibility. Each is scored 0–10, then averaged with weights into a single Beauty Alignment Score.

Inputs / signals
Beauty archetypeCoverage preferenceFinish goalWear-time priorityRisky-formula flags
Output

Alignment score · archetype card · methodology table · top product matches

Lifestyle Engine — A composite pressure score across sleep, stress, hydration, and habits
Engine 08

Lifestyle Engine

A composite pressure score across sleep, stress, hydration, and habits

computeOverallPressure(rows) + computeCompleteness(answers)

Most lifestyle skin advice is anecdotal. The Lifestyle engine refuses to be — it converts your habits into four scored input columns and runs them through a weighted aggregator.

Inputs: Sleep (hours, restorativeness, consistency) · Stress (load + skin response) · Hydration · Substance load (alcohol, smoking, vaping). The output is a single Lifestyle Pressure Score plus a completeness percentage so you know how confident the result is.

Inputs / signals
Sleep durationSleep qualityStress load 1–10Hydration habitsAlcohol/smoking/vape tierRoutine consistency
Output

Pressure score · completeness % · habit-by-habit breakdown · realistic next-step plan

Food Engine — Goal-tag scoring × regional pricing × dietary filters × 7-day meal plan
Engine 09

Food Engine

Goal-tag scoring × regional pricing × dietary filters × 7-day meal plan

buildProfileFromAnswers() → buildPriorityTags() → scoreDish() → getTopDishes() → build7DayMealPlan()

Food is the only engine that doesn't score severity — it scores recipes against your goal, your budget, your region, and your dietary rules. Thirteen profile signals (skin type, main goal, reaction timing, ingredient lane, meal format, climate, shopping access, budget tier, region, currency, allergies, dietary flags, weekly cooking reality) feed a multi-stage pipeline.

Stage 1 — priority-tag stacks. Each main goal has its own weighted stack: breakouts → clean + lighter + protein + produce + balanced + fresh. Stage 2 — real dish scoring: score = priorityTagMatch × 10 + budgetFit × 4 − triggerPenalty × 6. Stage 3 — filter by budget tier and dietary violations (vegan, vegetarian, halal, kosher, pescatarian, gluten-free, dairy-free) before ranking.

Pricing is regional, not generic. Every dish carries an estimatedPriceUSD plus an estimatedPriceByRegion map across USA, CA, EU, KR, JP, CN, IN. Live FX rates are fetched on report load and cached, so weekly meal-plan totals display in your local currency — convertCurrencySync(usd, userCurrency) — with a static fallback if the API fails.

Inputs / signals
Skin typeMain goalReaction timingBest meal patternIngredient laneMeal formatClimateShopping accessBudget tierRegion & currencyAllergies & dietary flagsWeekly cooking reality
Output

Top dishes · ingredient cards · 7-day meal plan · grocery list with regional cost · weekly rhythm · watchout list · cross-map suggestions

Travel Engine — Additive product scoring × climate-shift matrix × trip phase
Engine 10

Travel Engine

Additive product scoring × climate-shift matrix × trip phase

scoreProduct() with origin × destination × cabin × UV × budget weights

The Travel engine recognizes that your skin is in motion — origin climate, cabin air, destination climate, UV index, and trip style all interact.

Product scoring is explicitly additive (every weight is a number you can audit): +4 budget match, +5 regional market, +5 dry-leaning + barrier tags, +6 reactive + sensitive tags, +5 long-haul + flight tags, +7 high-UV + sunscreen, +5 outdoor + outdoor tags, +4 city + daily tags.

Sunscreen during high-UV travel gets the single biggest weight in the system (+7) — because that's where the science is clearest.

Inputs / signals
Origin climateDestination climateFlight durationSeat classTrip styleSun-protection consistency
Output

Pre-flight, in-flight, and post-landing routines · destination routine · pack-and-buy list

Active Engine — Six athlete-specific metrics anchored in the Baumann Skin Type Indicator
Engine 11

Active Engine

Six athlete-specific metrics anchored in the Baumann Skin Type Indicator

Baumann Skin Type Indicator + 6 sweat-aware metrics

Active skin is different from regular skin — sweat changes pH, vasodilation changes redness, friction changes barrier integrity. The engine starts with the Baumann Skin Type Indicator (a 30-minute bare-face test + a 20-minute post-shower body test) and layers six athlete-specific metrics on top.

The six metrics: Hydration 💧, Sebum Control 🫧, Sensitivity 🛡️, Recovery ⚡, UV Protection ☀️, Microbiome 🦠. Each is grounded in clinical numbers: UV exposure rises 2–3× during outdoor exercise, SPF effectiveness drops 84% after 40 min of sweat, and skin bacteria multiply ×10 within 30 min of post-workout occlusion.

Inputs / signals
Bare-face test resultPost-shower body testSweat loadTraining environmentRecovery windowFriction sources
Output

6-metric dashboard · pre/post-workout routines · supplement & ingredient stack · tracker

K-Beauty Engine — Seven-layer Korean skincare logic optimized for glass-skin clarity
Engine 12

K-Beauty Engine

Seven-layer Korean skincare logic optimized for glass-skin clarity

Layer-compatibility scoring × archetype matching

The K-Beauty engine encodes the classic seven-layer Korean routine (cleanse → toner/first essence → essence → serum/ampoule → sheet mask → emulsion/cream → SPF) and scores each product against layer compatibility — does this serum sit well under that emulsion, does this cream pill under that SPF.

Output archetypes are finish-driven, not problem-driven: Glass skin, Honey skin, Cloudless skin. The engine optimizes for barrier-first hydration with K-beauty texture priorities.

Inputs / signals
Hydration goalTexture preferenceLayer count toleranceSensitivity flagFinish target
Output

Layered routine · archetype match · K-beauty product picks (Olive Young / YesStyle / StyleKorean)

Glossary — every term, in plain language

The vocabulary used across our quizzes and reports. If a word ever feels confusing inside a Skin Map, you'll find it explained here.

Skin biology

Skin barrier

The outermost protective layer of the skin. When it's healthy, water stays in and irritants stay out.

Skin biology

Stratum corneum

The very top layer of the skin barrier, made of dead skin cells held together by lipids. This is what most 'barrier care' actually targets.

Skin biology

Ceramides

Fat-like molecules that act as the 'mortar' between skin cells. Lower ceramide levels = more dryness, sensitivity, and irritation.

Skin biology

Sebum

The natural oil your skin produces. Too little leads to dryness; too much leads to oily, congested-feeling skin.

Skin biology

TEWL

Trans-Epidermal Water Loss. How fast water evaporates out of your skin. High TEWL = leaky barrier, faster dehydration.

Skin biology

Microbiome

The community of helpful microbes that live on your skin. A balanced microbiome helps calm inflammation and protect the barrier.

Skin biology

pH

A measure of acidity. Healthy skin sits around 4.5–5.5. Cleansers that are too alkaline can disrupt the barrier.

Skin biology

Skin baseline

Your skin's natural behavior with nothing applied: dry, oily, combination, normal, or sensitive.

Skin biology

Dehydrated vs dry skin

Dry skin lacks oil. Dehydrated skin lacks water. You can be oily and dehydrated at the same time.

Acne & breakouts

Comedonal acne

Mostly clogged pores, whiteheads, blackheads. More texture than redness.

Acne & breakouts

Whiteheads (closed comedones)

Clogged pores covered by a thin layer of skin. Bumpy but not red.

Acne & breakouts

Blackheads (open comedones)

Clogged pores exposed to air, oxidizing dark.

Acne & breakouts

Papules

Small red inflamed bumps without a visible head.

Acne & breakouts

Pustules

Inflamed spots with a visible white or yellow center.

Acne & breakouts

Nodular / cystic acne

Deep, painful, under-the-skin lumps. Slower to heal and more likely to scar.

Acne & breakouts

Inflammatory acne

Acne dominated by redness, swelling, and active breakouts (vs just clogged pores).

Acne & breakouts

Hormonal jawline acne

Breakouts that cluster around the chin and jawline and often follow a cyclical pattern.

Acne & breakouts

PIH

Post-Inflammatory Hyperpigmentation. Brown or dark marks left after a breakout heals.

Acne & breakouts

PIE

Post-Inflammatory Erythema. Red or pink marks left after a breakout, more common on lighter skin.

Acne & breakouts

Reactive / barrier-stressed acne

Acne happening on skin that's also sensitive, flushed, or over-treated.

Symptoms

Post-cleanse tightness

That stripped feeling right after washing. Usually a sign the cleanser is too harsh or the barrier is already stressed.

Symptoms

Flaking / xerosis

Visible peeling or dry flakes on the skin surface.

Symptoms

Fine dehydration lines

Tiny crepe-like lines that appear when the skin is low on water (different from true wrinkles).

Symptoms

Reactivity

How easily your skin stings, burns, or flushes when products are applied.

Symptoms

Telangiectasia

Tiny visible blood vessels on the surface of the skin, often on the cheeks or around the nose.

Symptoms

Flushing

Sudden temporary redness, usually triggered by heat, stress, alcohol, or spicy food.

Symptoms

Vasodilation

When blood vessels widen. Causes the warmth and redness you feel after exercise, alcohol, or hot showers.

Triggers

Hard water

Tap water high in minerals like calcium and magnesium. Can leave residue and stress the barrier.

Triggers

Indoor heating / AC

Both lower indoor humidity, which speeds up dehydration.

Triggers

High-glycemic load

Diets high in sugar and refined carbs that can drive inflammation and breakouts.

Triggers

Gut-skin axis

The two-way connection between digestion and skin. Gut issues can show up as flares within 24–48 hours.

Triggers

Occlusion

When something blocks the skin (mask, helmet, sweat, heavy product). Can trap heat and cause friction breakouts.

Triggers

Friction acne (acne mechanica)

Breakouts caused by rubbing, pressure, or repeated contact (helmets, phones, masks).

Triggers

Cabin-air dehydration

Airplane cabin humidity is around 10–20%, much drier than most homes. Skin loses water faster mid-flight.

Triggers

Jet lag stress

Disrupted circadian rhythm affects cortisol, which affects oil, inflammation, and recovery.

Triggers

Climate adaptation gap

When your skin is calibrated to one environment and you suddenly enter another (humid → dry, cold → tropical).

Active ingredients

Retinoid / retinol / adapalene

Vitamin A derivatives that speed up skin cell turnover. Powerful but irritating if overused.

Active ingredients

AHA

Water-soluble exfoliants like glycolic and lactic acid. Work on the skin surface. Help with dullness, texture, marks.

Active ingredients

BHA (salicylic acid)

Oil-soluble exfoliant that goes inside the pore. Best for blackheads and oily skin.

Active ingredients

PHA

A gentler, larger-molecule exfoliant. Better for sensitive skin.

Active ingredients

Niacinamide

Form of vitamin B3. Calms redness, balances oil, supports the barrier.

Active ingredients

Vitamin C

Antioxidant that brightens tone, fades marks, and helps protect against UV damage.

Active ingredients

Azelaic acid

Calms redness, helps with acne and pigmentation. Generally well-tolerated by sensitive skin.

Active ingredients

Tranexamic acid

Targets stubborn pigmentation, especially melasma.

Active ingredients

Benzoyl peroxide

Strong anti-bacterial acne ingredient. Effective but can dry out and bleach fabrics.

Active ingredients

Hyaluronic acid

A humectant that binds water to the skin. Hydrates without adding oil.

Score concepts

Severity score

Overall barrier or acne burden. Lower is better.

Score concepts

Congestion score

How much clogged-pore pressure your skin is showing. Lower is better.

Score concepts

Inflammation score

How active, red, and reactive the skin is right now. Lower is better.

Score concepts

Barrier score

How resilient your skin is. Higher is better.

Score concepts

Tone score

How well your skin recovers from marks and discoloration. Higher is better.

Score concepts

Confidence score

How strongly your quiz answers point to one clear pattern.

Score concepts

Match score

How well a recommended product fits your specific quiz answers.

Score concepts

Consistency score

Whether your routine and habits actually align with each other.

Score concepts

Recovery curve

A simple visual showing how clarity tends to build over weeks of consistency.

Conditions

Rosacea

A long-term condition with persistent redness, flushing, and sometimes visible vessels or bumps. Different from acne.

Conditions

Eczema / atopic dermatitis

Itchy, dry, inflamed patches caused by a mix of barrier weakness and immune reactivity.

Conditions

Allergic contact dermatitis

A delayed allergic reaction to a specific ingredient (often fragrance, preservatives, or metals).

Conditions

Melasma

Patchy, often symmetrical pigmentation, frequently triggered by hormones plus sun.

Beauty & finish

Glassy / glass-skin finish

The high-shine, dewy K-beauty look. Healthy-looking skin with a wet finish.

Beauty & finish

Satin finish

A middle ground: not flat-matte, not shiny. Soft polished glow.

Beauty & finish

Velvet / soft-matte finish

Smooth and powdery without looking dry or cakey.

Beauty & finish

Soft-focus

A blurring effect where pores and texture look softened rather than sharp.

Beauty & finish

Clean-girl polish

Minimal-makeup look that still reads 'put together' — usually relies on healthy underlying skin.

About this system

SkinCompass is an educational estimation system, not a clinical diagnostic tool. Each Skin Map's quiz is grounded in dermatology research, and every claim links back to its source inside the report. For medical concerns, please see a licensed dermatologist.

Start with the Barrier Assessment

It's the entry point of the system. After you finish, the platform will route you to the most relevant next Skin Map automatically.

Take the Barrier Assessment →