Choose a portrait
One face, even light, neutral expression. Skip filters and extreme camera angles.
Find your closest face-shape match, explore your proportions, and take your results with you.
A clear, front-facing portrait works best.
Keep your head level and hair off your face.
or drop it here · JPG, PNG, WebP · up to 12 MiB
Processed on your device.
We download the model, never upload your photo.
Ready when you are. Your photo stays on this device.
Relative geometric matches, not probabilities or accuracy.
Exports include measurements, not your photo.
One face, even light, neutral expression. Skip filters and extreme camera angles.
See six relative matches, measured ratios and a visual guide on your photo.
Save a result card, download your data, or print a report for a styling conversation.
This is a styling aid, not a clinical assessment. Face shapes are broad descriptions of continuous proportions. A different photo can give a different result.
Google MediaPipe documentation ↗A locally loaded MediaPipe model locates face landmarks. We measure upper forehead to chin, cheek width, temple width, jaw width and a two-dimensional jaw bend angle. The model does not locate your true hairline.
We compare those measurements with six developer-chosen reference profiles. Match percentages are normalized similarity weights, not the likelihood that a label is correct. This classifier has no validated accuracy claim.
Your browser downloads the code and model from this site. The selected photo and derived measurements stay in memory on your device. Clear the result or close the page to discard them. Downloads are saved only when you choose them. Ordinary page requests still reach the hosting provider.
Coordinates are scaled to the analysis image, with the longest edge reduced to at most 1600 pixels. Distances are Euclidean image-pixel distances, not centimetres. Ratios use cheek width as their denominator.
MediaPipe landmark pairs: face length 10–152, cheek width 234–454, temple width 127–356, jaw width 172–397. Jaw angle is the mean of angles (234,172,152) and (454,397,152), where the middle point is the vertex. These are outline approximations, not anatomical gonial angles.
For vector x = [length/cheek, temple/cheek, jaw/cheek, jaw angle], D(s) = Σ((xᵢ − reference(s)ᵢ) / scaleᵢ)². Weight(s) = exp(−(D(s) − minimum D)/2). Match(s) = 100 × Weight(s) / Σ Weight. Rounded displays may not add up to exactly 100.
All reference values and scales below are implementation choices, not measured population averages or validated diagnostic thresholds.
| Reference | Length/cheek | Temple/cheek | Jaw/cheek | Angle |
|---|---|---|---|---|
| Oval | 1.38 | 0.88 | 0.76 | 138 |
| Round | 1.17 | 0.91 | 0.85 | 143 |
| Square | 1.2 | 0.96 | 0.94 | 125 |
| Heart | 1.34 | 1.01 | 0.7 | 133 |
| Oblong | 1.62 | 0.9 | 0.83 | 136 |
| Diamond | 1.39 | 0.78 | 0.71 | 132 |
| Scale | 0.18 | 0.12 | 0.14 | 18 |
Use one clear, front-facing person. Tilt, perspective, lens distortion, expression, hair, facial hair and landmark errors affect results. We display a retake suggestion above 15° of eye-line tilt or a nose-to-cheek distance imbalance above 1.4×; these are developer-set prompts, not validated quality cutoffs. One photo at a time; JPG, PNG and WebP up to 12 MiB (12 × 1,048,576 bytes), with decoded images limited to 60 million pixels. No account or daily usage counter.