Methodology · harmony-0.3.0
How Ratioface Calculates Your Facial Analysis Score
Every number on Ratioface comes from the same 478 facial landmarks, the same four components and the same weights. This page publishes the whole rule — the formulas, the landmark pairs we measure, and the algorithm version — so you can check our work instead of taking a score on faith.
Want to see these formulas applied to a real face? Open the sample report (coming soon). Want to run your own? Test your attractiveness — free.
The Score in One Line
score100 = round(1000 * (0.40*S + 0.20*T + 0.20*F + 0.20*G)) / 10; score10 = score100 / 10
S, T, F and G are symmetry, visible thirds, horizontal fifths and the contour ratio component. clamp limits each component to 0–1. The canonical score is 0–100, rounded once to one decimal; divide it by ten for the 0–10 display with two decimals. For example, 81.3 / 100 is 8.13 / 10. These are two displays of the same score.
What happens when a measurement is missing
If the photo does not contain enough of the face to compute every required measurement, we return no score at all, and tell you why. We do not fill a gap with an average or a guess.
Component 1 — Symmetry (40%)
We convert landmarks to image pixels, align the line between the eye centers horizontally and place its midpoint at the origin. Eye centers are the midpoints of 33/133 and 263/362. We mirror ten selected pairs across the vertical axis through that origin. The mean pair distance is divided by cheek width d(234,454), giving the normalized mirrored pair deviation.
S = clamp(1 - mirrored pair deviation / 0.12)
The ten pairs are 33/263, 133/362, 159/386, 145/374, 105/334, 98/327, 61/291, 234/454, 172/397 and 103/332. The tolerance 0.12 is a product setting, not a clinically or aesthetically validated normal range. Small asymmetries are not defects.
Component 2 — Facial Thirds (20%)
Visible thirds use aligned vertical coordinates: contour point 10 to the midpoint of brow points 105/334, that brow midpoint to nose point 2, and point 2 to chin point 152. Each segment is divided by the total contour height y152 - y10. The reference is one third for each segment.
T = clamp(1 - sum(abs(visible third - 1/3)) / 0.60)
Point 10 is a visible contour landmark, not the true hairline. These are visible contour thirds, not anatomical hairline thirds. We add the absolute deviations of all three segments and use a tolerance of 0.60 (see limitations).
Component 3 — Facial Fifths (20%)
We use the aligned horizontal positions of 234, 33, 133, 362, 263 and 454, reversing their order when necessary to read left to right. The five adjacent widths are divided by the horizontal span between cheek points 234 and 454. We add their absolute deviations from 0.20 and use a tolerance of 0.80. Ear edges are not measured.
F = clamp(1 - sum(abs(horizontal fifth - 0.20)) / 0.80)
Component 4 — Golden Ratio (20%)
This component compares one ratio with the product reference 1.618: aligned contour height (y152 - y10) divided by cheek width d(234,454). It does not combine mouth-to-nose or eye-to-brow ratios. The tolerance is 0.50.
G = clamp(1 - abs(contour height / cheek width - 1.618) / 0.50)
Reaching the reference ratio exactly is not the goal, and most faces sit some distance from it. This component measures distance, not beauty.
The 478 Landmarks We Use
All measurements come from a 478-point facial mesh that runs inside your browser. These are the pairs and points our components depend on:
| What we measure | Landmark indices |
|---|---|
| Inner / outer eye corners | 133 / 33 and 362 / 263 |
| Upper / lower eyelid pairs | 159 / 386 and 145 / 374 |
| Brow peak | 105 / 334 |
| Nose base / tip | 2 / 1 |
| Nostril edges | 98 / 327 |
| Mouth corners | 61 / 291 |
| Upper / lower lip center | 13 / 14 |
| Lower contour points | 172 / 397 |
| Chin base | 152 |
| Widest cheekbone | 234 / 454 |
| Upper contour (not hairline) | 10 |
| Forehead width | 103 / 332 |
Face Shape Reference Table
Face shape is a descriptive label, not a score. We compare three ratios with each reference below: d(10,152)/d(234,454), d(172,397)/d(234,454) and d(103,332)/d(234,454). Unlike the aligned vertical height used in the golden ratio component, d(10,152) is a straight-line distance. Differences are divided by 0.20, 0.15 and 0.15 respectively, then combined as a Euclidean distance. The closest reference is the label; the next closest is the alternative.
| Face shape | Contour / cheek width | Lower / cheek width | Upper / cheek width |
|---|---|---|---|
| Oval | 1.38 | 0.77 | 0.88 |
| Round | 1.12 | 0.85 | 0.91 |
| Square | 1.18 | 0.94 | 0.94 |
| Heart | 1.32 | 0.67 | 0.97 |
| Diamond | 1.40 | 0.72 | 0.77 |
| Oblong | 1.62 | 0.83 | 0.89 |
| Triangle | 1.30 | 0.97 | 0.80 |
These boundaries are our own working definition and have not been validated against a labelled reference set. Treat the label as a starting point for the report, not as a classification standard.
What We Do Not Measure
So there is no confusion about what the number covers:
- True hairline position or anatomical hairline thirds
- Skin quality, texture or tone
- Your age
- Profile projection (the analysis is frontal)
- Body composition or weight
- Anything about your health
All 22 measurements are visible in the free tool. FWHR is cheek width divided by the aligned height from the brow midpoint to upper-lip point 13. Canthal tilt describes eye-corner angles after roll correction. FWHR, canthal tilt and 2D jaw contour angles are descriptors, not additional weighted components. We do not report side-profile ratios or bone angles.
Score Bands
Bands are our product setting. They describe where a score sits in the range, and nothing more:
| Band | Score |
|---|---|
| Closest alignment | 87.0 – 100.0 |
| Strong alignment | 83.0 – 86.9 |
| Close alignment | 78.0 – 82.9 |
| Mixed alignment | 60.0 – 77.9 |
| Exploratory alignment | 0.0 – 59.9 |
Algorithm Version and Reproducibility
Current version: harmony-0.3.0.
The same landmark coordinates and image dimensions produce the same score with this algorithm. Repeated photo inference also depends on preprocessing, model version, browser, device and GPU or CPU backend; small numerical differences are possible. Version harmony-0.3.0 replaces the earlier eye-width, centering and eye-spacing components with visible thirds, horizontal fifths and the contour ratio. Weights remain 40/20/20/20; historical results keep their stored version.
harmony-0.3.0 · explanation updated 2026-09-15
Limitations and Disclaimers
- The reference values and weights on this page are product settings used to produce a consistent, comparable score. They are not a universal standard of attractiveness and not a medical or psychological assessment.
- After correcting for head rotation, a higher outer than inner eye corner counts as a positive canthal tilt. Photos taken with the head tilted change this measurement.
- No face, multiple faces, missing or non-finite landmarks, out-of-frame required points, degenerate geometry, very small faces or severe geometric pose deviation produce an error. Other photo conditions may produce a result with warnings. Pose exclusion uses a geometric heuristic, not a calibrated angle threshold.
- The face shape table is an exploratory label, not a validated classification.
Frequently Asked Questions
Do I need an account to see my score?
No. Face shape and your harmony score are free, unlimited and need no sign-up.
Can I change my score by uploading a different photo?
Changing the photo can change the measurement. Use even lighting, no filters and a straight head position. Compare results under similar conditions and with the same model and algorithm versions; different versions may score the same photo differently.
Why is symmetry weighted at 40%?
The 40% weight is a product choice that gives symmetry the largest contribution. It is not a calibrated reliability estimate or a scientifically established weight for attractiveness. All four components can be affected by photo conditions.
Is my photo uploaded to calculate this?
No. The landmark model runs inside your browser tab. Your photo is never sent to our servers.
What is the full report?
The planned $9.99 PDF report saves the same 22 measurements, four scoring components, formulas and photo-quality notes already available in the free tool. It does not unlock extra measurements or predict appearance changes. See a sample report (coming soon).
The full report and payments are not available yet.
How do I know this page matches what the site actually does?
The tool displays its algorithm version and formulas. Release checks compare this page’s version, formulas, face-shape references and score bands with the scoring code. If the displayed explanations disagree, tell us — that is a bug.