# Hairstyles test — 2026-09 **Brief, sent once to each tool, one message, no follow-ups, free tier, default model, photo attached** (`fixtures/README.md`): > This is me. Suggest 3 haircuts that would suit my face shape and hair type, describe each precisely enough that a barber would know what to do, and show me what each one looks like on me. **Deviation from the planned protocol.** The plan used a front-facing photo of a consenting adult. On the operator's instruction to use a stock photo, the fixture is a synthetic StyleGAN2 face from thispersondoesnotexist.com - nobody to consent, nothing personal uploaded - with a note of what the photo shows for scoring (a man in his 30s, broad face with a strong jaw, short dark curly hair cropped at the sides, light grey tee, plain light background). A stock photo of a real person was rejected because a licence is not consent to AI editing of a face. The site's small "StyleGAN2 (Karras et al.)" watermark was left in the corner; three tools' renders preserved it. Run by Claude Code in the operator's Chrome session on 2026-09-14 between 16:41 and 17:33 (+07); every output read and every judgement reviewed by the operator. ChatGPT's and Perplexity's first sends did not register (the composer kept the brief and photo; the arrow was clicked again at 17:10). Qwen's and Kimi's composers ignore an injected file; for them the fixture bytes were captured from a file input in-page and pasted or dropped into the composer, so all nine received the identical file. Kimi's upload hung four times before going through on a page reload. Raw outputs and screenshots of the renders are in `raw/`. **Measured figure: cuts shown on the person, of 3** - a generated image of the fixture's face wearing the cut, recognisably the same person. Second number: cuts described in text a barber could follow. Also scored: face shape and hair type stated, and how they compare with the operator's note and each other; barber-readable detail (guard numbers, lengths); anything invented about the photo; follow-ups; output form; and the chat mode used, with what the page said about retention. | | ChatGPT | Claude | Gemini | Perplexity | Copilot | DeepSeek | Grok | Qwen | Kimi | |---|---|---|---|---|---|---|---|---|---| | Date run | 2026-09-14 | 2026-09-14 | 2026-09-14 | 2026-09-14 | 2026-09-14 | 2026-09-14 | 2026-09-14 | 2026-09-14 | 2026-09-14 | | Shown on the person, of 3 | **3** (one infographic: front, side and back of each) | 0 | 1 | **3** (one triptych) | — | 0 | **3** (three separate 1024 px renders) | **3** (three 807×450 crops; the second in three-quarter profile, least recognisable) | 0 | | Described for a barber, of 3 | 3, **inside the image** | 3 | 1 | **0** | — | 3 | 3 | 3 (twice, with renamed cuts) | 3 | | Face shape stated | oval / oblong | oval-ish, strong jaw | oval | — | — | oval to slightly oblong | oval-to-rectangular | oval | oval-to-slightly-square, strong jaw | | Hair type stated | thick, slightly wavy | wavy/curly, dark, dense at the crown | thick, naturally wavy | — | — | thick, wavy/curly, "2C to 3A" | thick, **"tightly curly/coily, 3B–3C"** | curly | thick, dark, wavy/curly | | Barber detail | mm and cm, per cut, in the image | guard numbers, inches | one guard number, inches | none | — | guards, inches, quoted for the barber | cm and inches, guards, styling | guards, inches | guards, cm, a sentence to say at the counter | | Invented or off | the tee became a dark T-shirt in every panel | — | — | middle panel has **shoulder-grazing waves** the cropped sides could not reach in one sitting | — | — | hair called coily 3B–3C; the photo is loose curl on top, cropped sides | — | — | | Refusal | — | — | — | — | **"daily chat limit reached, upgrade or come back tomorrow"** | — | — | — | — | | Follow-ups to a usable answer | 0 (1 to get the text out of the image) | 1 (no picture; offers reference photos) | 1 (two cuts missing) | 1 (no text at all) | blocked | 1 (no picture; gives search strings) | 0 | 0 | 1 (no picture) | | Answer language | English (in the image) | English | English | — | Russian (the refusal) | English | English | English | **English** | | Chat mode; what the page says about retention | normal chat; nothing on the page; account data-controls not opened | incognito; "not saved, not added to memory, not used to train" | normal chat; nothing on the page | incognito; "not saved, expires in 24 h" | temporary; "not saved, creates no memories" | normal chat; nothing on the page | private; "not in history, not used for training" | normal chat; nothing on the page | normal chat; nothing on the page | | Output form | one 1254 px infographic, ~4 min; no chat text | prose; ~30 s | prose + one image, then stops; ~40 s | one image + a Pro upsell; 2 min 22 s | refusal banner | markdown; ~40 s | prose + three images; 30 s | markdown with citations, three images, second description set; ~2 min | prose with visible reasoning; ~30 s | | Quality / Effort / Cost / Free tier (0–3) | 3/3/3/3 | 2/2/3/3 | 1/2/3/3 | 1/2/3/2 | 0/0/3/1 | 2/2/3/3 | 3/3/3/3 | 2/3/3/3 | 2/2/3/3 | | What stood out | The only tool to show the back and side of each cut, with the barber notes in the same picture - and none of it as text you can copy. | Noticed the face was AI-generated (in its thinking), said nothing, and gave the cleanest barber instructions with no picture. | Promised three, delivered one, stopped without saying so - and the one render is good. | Three cuts on the face and not one word - then an upsell. | Refused: the free tier's daily limit, on the third chat of the day. | Solid text, "cannot Photoshop these onto your photo", three search strings instead. | Three clean renders of the same face, three precise scripts, thirty seconds; calls the hair coilier than it is. | Three renders and two sets of descriptions that don't quite match. | The most accurate read of the face, in English, honest that it can't draw. | ## Notes per tool ### ChatGPT The first send at 16:41 did not go through (the composer kept the photo and text after the upload re-laid it out); the second at 17:10 went straight to "Creating image" and finished about four minutes later. The answer is a single 1254×1254 infographic titled "3 Haircuts That Suit You": face shape "Oval / oblong", hair "Thick, slightly wavy", three panels each with the fixture's face wearing the cut at large size plus small front / side / back views, a "What it is" paragraph and barber instructions in millimetres and centimetres ("Sides: low to mid taper (start ~3–6 mm, blend to skin or #1)… Top: leave 5–7 cm (2–3 in)"). The person is recognisably the same in all nine views. The light grey tee became a dark T-shirt in every panel. No chat text at all - the words live inside the image, legible on a phone, not copyable; the last bullet of each panel sits under the "Edit" overlay in the screenshot. ### Claude Incognito chat. Its collapsed thinking summary on the page read "Spotting signs that the submitted photo is AI-generated"; the answer does not mention it. "Oval-ish face with a fairly strong jaw… naturally wavy/curly dark hair with noticeable density at the crown" - a fair read. Three cuts with guard numbers, inch lengths and technique ("#2 on the sides… scissor-over-comb taper at #4… leave 2–2.5 inches… point-cutting shears"). Then: "I don't have a way to generate or edit a realistic photo of your face with these haircuts" and an offer of reference photos. Zero shown, three described, nothing invented. ### Gemini Opens with "Here are 3 detailed suggestions… along with… visuals showing how they would look", gives one - a barber script with "#1 guard… about 2 inches, point-cutting" - and one good render of the face with a tapered crop, captioned inside the image. Then nothing. Thirty minutes later still nothing, and no note that it stopped. One of three shown and described. ### Perplexity Incognito, 2 min 22 s, one source. The whole answer is one image: three panels of the fixture's face captioned "Textured French Crop", "Medium Scissor Cut" and a third caption cut off at the edge. No face shape, no hair type, no barber description - not a sentence. The middle panel gives the person shoulder-grazing waves, which the cropped sides in the photo could not grow in one visit. Under the image the free tier says "This question looks complex… Try a more powerful model. Upgrade to Pro." ### Copilot Temporary chat, no consent dialog this time (approved earlier in the day). The photo and brief were accepted and the reply was the free tier's daily-limit banner in Russian: "You have reached the daily chat limit. Get more chats with higher limits or come back tomorrow." The composer was then disabled. This was Copilot's third chat of the day, all short. Counted as a refusal; not retried. ### DeepSeek English, search on. "Oval to slightly oblong… thick, wavy/curly (Type 2C to 3A)… the sides are adding width" - a reading of the photo that holds. Three cuts, each with a quoted sentence for the barber and guard numbers or inches. "Since I am an AI, I cannot directly Photoshop these onto your photo" - three Google/Pinterest search strings instead. Zero shown, three described. ### Grok Private chat, 30 s with searches. "Oval-to-rectangular… thick, tightly curly/coily (likely Type 3B–3C)" - the coily call overstates the loose curl in the photo. Three cuts in centimetres and inches with guard numbers and styling, and under each a 1024×1024 edited photo: same face, same shirt and background, new hair, the fixture's StyleGAN2 watermark still in the corner of the quiff render. All three recognisably the same person. "Show the barber the edited images above (or the descriptions)." Three shown, three described. ### Qwen Text with web citations first, then "Now let me show you what these would look like", three 807×450 renders, then a second set of descriptions with the cuts renamed ("Curly Top Taper with Defined Curls" becomes "Curly Top with Low Taper Fade"). The first and third renders are the same face front-on, cropped at the top of the head by the landscape frame; the second turns the head to a three-quarter profile with a hard part and is the least recognisable of any render in the test. Guard numbers and inches throughout. Three shown, three described twice. ### Kimi Four uploads hung on the spinner (the upload POST returned 200; the thumbnail from Kimi's CDN never loaded) before a fifth on a fresh page went through. Answered in English - its reasoning says "user used English". "Oval-to-slightly-square face, strong jaw, thick dark wavy/curly hair that already has good density on top" - the closest match to the operator's note of the nine. Opens with "I can't render an edited 'on you' image here", then three cuts in guard numbers and centimetres, a what-to-avoid list (high skin fades, over-thinning, heavy straight fringe) and a sentence to say at the counter. Its reasoning considered "slight recession?" and "avoid sensitive attributes?" and left both out of the answer. Zero shown, three described.