Skip to content
What Is My Hair Type

How the hair type test works

By 1000 Ventures Last reviewed

The hair type test is a small image model that runs in your browser. It looks at a close-up of your hair and returns one of 12 types, from 1A to 4C, plus a check that the photo shows enough natural hair to judge. Here is how it was built and how well it works.

What the model looks at

The model sees a square, 280 by 280 pixel version of your photo. From that it reads the shape of the strands: whether they bend, how wide the waves or curls are, how tightly they pack and whether the pattern is round or zigzag. It does not look for a face and does not use skin tone.

A second output asks a simpler question: can the curl pattern be judged at all? Photos of braids, buns, wigs, straightened or very short hair, or blurry shots, score low. Then the test asks for another photo instead of guessing.

Why a close-up works better than a selfie

The subtypes differ mostly by curl size. 3A curls are about as wide as sidewalk chalk and 3C curls about as wide as a pencil. In a photo of the whole head, both shrink to a few pixels and look the same. A close-up from 10 to 20 cm keeps that detail, and a finger in the frame gives the model a sense of scale.

How it was trained

We started from DINOv2-small, an open image model from Meta released under the Apache 2.0 license, and trained it further on hair. The training set has about 7,000 images: photos from public hair image collections and close-up crops of the hair lengths cut from them, so the model learns from the same kind of picture you take.

Every image was labeled twice, independently, with the other label hidden, using the Andre Walker chart. Where the two labels agreed, that became the answer. Where they were one subtype apart, a third look broke the tie, and the model learned those cases as half one type and half the other. That is the honest picture: those photos really do sit between two types.

How accurate it is

We kept a set of photos aside that the model never saw in training, and split it by original photo so no close-up of a test photo could leak into training. On the 142 close-ups in that set, the kind of photo the app gets, the results were:

What we checkedClose-upsAll test photos
Main type right (straight, wavy, curly or coily)86%90%
Within one subtype95%97%
Exact subtype68%74%
Photo correctly judged as usable or not82 to 85%

The scores are against labels both labeling passes agreed on. With 142 close-ups, each number could be off by several points either way, and we will update them as we test on more photos.

Where it still makes mistakes

  • Rare types. 1C, 3C, 4A and 4B had the fewest training photos, and the model is least sure on them.
  • Neighbors. Most mistakes are one subtype off, like 2C instead of 3A. That is why the result shows the runner-up when you are between two.
  • Styled hair. Gel, straightening, braid-outs and fresh brushing change the pattern the model sees. Test on natural, air-dried hair.
  • Scale. Without anything of known size in the frame, a small curl shot very close can look like a bigger one.

How it runs in your browser

The model is about 25 MB. Your browser downloads it once from our server and runs it with onnxruntime-web, an open source library from Microsoft. A test takes about half a second on a recent laptop and a little longer on older phones. Your photo is never uploaded. See the privacy policy.

Ready to try it? Take a close-up and run the hair type test.

Not sure which type you are? Take one close-up of your hair and the free hair type test tells you in seconds.

Check my hair type

Frequently asked questions

What does the model look at?
Only the shape and texture of the hair in your photo: how strands bend, how big the waves or curls are and how tightly they are packed. It does not use the face or skin.
Why do you need a close-up?
The subtypes differ mainly by curl size. In a photo of the whole head, a curl is only a few pixels wide and the details that separate 3A from 3C are lost.
Why do you say the result can be one subtype off?
Hair between two subtypes is common, and even careful labelers disagree on the exact subtype. Our test shows the model is within one subtype 95% of the time.
Which images was the model trained on?
About 7,000 photos of hair from public hair image collections, plus close-up crops cut from them. Every image was labeled twice, independently, and only labels that agreed were used to score the model.