Skip to content
Marginalia
Engineering

How Golden Is Your Face?

I built an app that grades your face against the golden ratio. On building the fun version of a bad idea: honest about the maths, careful about the tips, and still worth screenshotting.


I built an app that photographs your face, measures it against the golden ratio and gives you a grade from S to D.

I'm aware of how that sounds.

Here's the thing: the idea is old, the maths is mostly folklore, and the internet is full of teenage boys doing genuinely dangerous things to their skulls in pursuit of a number. I wanted to know whether you could build the fun version. The one that's honest about what it is, kind about what it says, and doesn't send anyone down a hole.

So I built Phi Scanner. This is what I learned.

Phi Scanner: your face, measured


The folklore

The golden ratio, φ, is about 1.618. It turns up in geometry in ways that are genuinely lovely. It turns up in claims about faces, the Parthenon and nautilus shells in ways that mostly don't survive a tape measure.

The "golden face" idea has a long history: Renaissance proportion studies, twentieth-century orthodontic norms, a plastic surgeon's mask in the nineties, and now a thousand TikTok filters. Some of the underlying ratios do correlate weakly with what people rate as attractive. Most of it is pattern-matching after the fact.

I decided early that the app would not pretend otherwise. There's a "How it works" screen that says, more or less, this is a game built on some old ideas about proportion, not a medical assessment. It's on the results screen too. If you're going to score someone's face, the least you can do is tell them what the score is made of.


What it actually measures

The phone finds 133 landmarks on your face, on the device, using Google's face-detection model, the same kind of thing your camera app uses to find faces. Nothing leaves the phone unless you explicitly ask for the optional AI preview at the end.

From those points it works out eleven proportions. Face length over face width, against φ. Mouth width over nose width, against φ. The three vertical thirds, hairline to brow to nose to chin, against equal. Symmetry, measured as the mirror error across eyes, brows, mouth, nose and outline. Eye spacing, nose width, jaw taper, lip balance, and a couple more.

Each one is scored on a bell curve around its ideal, tuned so that being about ten percent off lands you around sixty out of a hundred. The weights aren't equal: face shape and symmetry count double, because those are the two that the research, such as it is, keeps pointing at. Then it's a weighted average, a grade, and a personalised list of what's pulling the number down.

Before any of that, the head is rotated so a tilted selfie doesn't get penalised for being tilted. Without that, holding the phone slightly wrong is the easiest way to get a bad score.

The whole scoring engine is plain TypeScript with no idea it's inside a phone app. Landmarks in, numbers out. It has a proper test suite, which felt slightly absurd for a novelty app right up until it started catching real bugs.


The part I cared about most

Here is the problem with face-rating apps: the results screen is where people get hurt.

If you tell someone their jaw is the weakest thing about them, a certain kind of person will go and find out how to fix their jaw, and what they'll find is a subculture with a vocabulary. Bone smashing. Hardcore mewing. Thumb pulling. DIY fillers ordered from somewhere they shouldn't be ordered from. Crash diets to "reveal the bone structure".

So the tips are locked down. Every suggestion the app can make comes from a short list: sleep, skin care, grooming, hairstyle, fitness, posture, dental, and how to take a better photo. That's it. Nothing invasive. Nothing that involves applying force to your own face.

And there's a section on the tips screen called "Skip these", which names the dangerous ones explicitly and says why they don't work. It felt important that the app didn't just stay silent on them but actually pushed back.

Then I wrote tests that assert none of the banned words can ever appear in a tip. Not because I expected to add them, but because a year from now, someone, possibly me, will be tempted to "improve" the tips, and I wanted the build to fail if they got it wrong.


Making it fun anyway

None of this would matter if the app was dull, and honesty has a way of making things dull.

The results screen draws the golden overlay on your actual photo: the rectangle, the thirds, the fifths, the spiral, the landmarks. It's the thing everyone screenshots. The score sits in a ring that fills as it counts up. The grade letter drops in last.

Then there's a share card, exported at 1080 by 1920, which is exactly the shape of an Instagram story, with your score and grade and the overlay, because the honest truth about why anyone opens an app like this is to send the result to a group chat.

For the web version, where the phone's face model isn't available, there's a demo mode with a synthetic face so the whole flow still runs. That's what you'll see if you open it in a browser. On a phone, it's you.


What I'd tell someone building one

Tell people what the number means before you show it to them.

Decide what the app is allowed to say to a vulnerable person, write that down, and make the build fail if it's broken.

Keep the maths on the device. Nobody needs your face on a server to tell you your mouth is 1.4 noses wide.

And let it be a toy. It's a game about proportion, played with a camera. The moment it starts pretending to be more than that, it becomes the thing I was trying not to build.

You can try it at phiscanner.1273.co.uk. Be kind to yourself about the result. It's a bell curve around a Renaissance guess.

Need a website?

It comes to me, not to a team. I read every message and reply within a working day.