From your photo to four measurements
The free test uses MediaPipe Face Landmarker in your browser to estimate facial coordinates. We convert normalized coordinates to image pixels, rotate them to level the line between the outer eye corners, and calculate distances and proportions. This corrects head roll; it does not reconstruct a frontal face from a side view or remove camera perspective.
We use selected points from the model's mesh. The model supplies coordinates; our code calculates the score. MediaPipe's documentation describes the underlying landmark task, not an endorsement of our scoring formula.
What each component measures
- Symmetry: six left–right pairs at the outer and inner eye corners, brows, nose sides, mouth corners and lower jaw. The horizontal midpoint of the forehead and chin defines the centerline. For each pair, we combine its midpoint's horizontal distance from that line with half its vertical mismatch, then divide by cheek width and average across the six pairs.
- Visible facial thirds: three vertical spans from forehead landmark 10 to the mean of brow landmarks 105 and 334, then to nose-base landmark 2, then to chin landmark 152. Each is divided by their total height. The forehead point is not the hairline.
- Facial fifths: five horizontal segments between cheek and eye landmarks 234, 33, 133, 362, 263 and 454. Each is divided by cheek width. These are visible image segments, not physical measurements in millimeters.
- Face length / width: the forehead-to-chin vertical span divided by the horizontal cheek span between landmarks 234 and 454. Both distances use the leveled coordinates.
References, tolerances and weights
| Component | Weight | Tolerance | Reference |
|---|---|---|---|
| Symmetry | 30% | 0.07 | Zero normalized pair error |
| Visible facial thirds | 30% | 0.23 | Each share = ⅓ |
| Facial fifths | 30% | 0.16 | Each share = ⅕ |
| Face length / width | 10% | 0.60 | (1 + √5) / 2 ≈ 1.618 |
For thirds and fifths, error is the mean absolute difference between the measured shares and the reference shares. For face length / width, it is the absolute difference from 1.618. Symmetry uses the normalized average pair error described above. A tolerance specifies the error at which a component reaches zero; it is not a clinical normal range.
Component score = round(100 × [1 − min(1, error / tolerance)1.5]). Errors are nonnegative. The curve reduces the penalty for small deviations while still assigning lower scores to larger deviations.
Total = round(0.30 × symmetry + 0.30 × visible facial thirds + 0.30 × facial fifths + 0.10 × face length / width). We round each component first, then calculate the weighted total.
Worked example. normalized symmetry error 0.014 with tolerance 0.07 gives 100 × (1 − 0.21.5), rounded to 91. With other components of 90, 80 and 70, the total is round(91 × 0.30 + 90 × 0.30 + 80 × 0.30 + 70 × 0.10) = 85. This is an illustrative calculation, not a measured customer result.
Score bands and rounding
- 85–100: High geometric balance.
- 70–84: Balanced.
- 50–69: Varied balance.
- 0–49: Distinctive proportions.
A 100 component can result from rounding a small error and does not prove perfect symmetry or exact proportions. A score of 85 is not an 85th percentile, an 85% chance of attractiveness or a measure of identity or health.
Photo checks and confidence
No face, multiple faces, an excessive side angle or a face too small for the frame stops the test. Brightness or sharpness warnings can instead ask you to retake the photo or explicitly continue. A successful check means the image met our checks, not that every landmark is correct.
The displayed confidence combines frontal-position quality (55%), sharpness (25%) and relative face size (20%), clipped to 0–100%. It is an app-defined photo suitability indicator, not a calibrated probability that the score is accurate. Brightness is checked separately. Read the photo warnings alongside it.
Free scores and full-report readings
The free total uses the four components above. The full report also presents descriptive readings such as approximate face shape, FWHR, jaw-width percentage and canthal tilt. Those extra readings do not contribute to the free total.
The full report's Golden Ratio display compares visible face length / width with 1.618 using round(100 × min(measured / reference, reference / measured)). It shares a reference with the free length / width component but uses a different mapping, so the two component numbers can differ. Neither is a population ranking. AI styling concepts, hairstyle images and color guidance are suggestions generated separately from the geometric score.
Comparing results and scoring versions
Version 2.1 uses a gentler penalty curve, weights of 30 / 30 / 30 / 10, and the 1.618 length / width reference. Version 2.0 used linear penalties, weights of 35 / 25 / 25 / 15 and a 1.46 reference. Previously generated results keep their saved scores; an algorithm update is not a change to your face.
Compare photos using the same scoring version, camera position, distance, lighting and expression. The current test analyzes one photo at a time and does not automatically keep a comparison history or calculate a multi-photo median. Select each photo separately and record the results if you want to examine a range.
Where your data is processed
The free scan runs locally. A full-report preview can be saved in this browser for 2 hours; refreshing does not extend its expiry. A completed paid report is also cached locally for 2 hours after saving. Expired copies are cleared while the site is running or on the next access. Browser storage is separate from an account history.
Creating a paid report sends the photo and measurements for server-side AI generation. Payment confirmation starts generation, and the finished PDF is emailed to the delivery address. Temporary server files are deleted after delivery; original photos also have a two-hour cleanup limit. For failure handling and further details, read the privacy policy.
For a better input, follow our photo checklist. To understand the readings, see facial thirds and facial symmetry.