Best Mate Studio
Teaching AI to Paint Your Dog, and Knowing When It Got It Wrong
I wanted to really understand fine-tuning, so I picked a project with a built-in quality bar: custom pet portraits. If the dog doesn't look like your dog, the model failed. I built the whole product myself with Claude Code and a team of AI agents I designed.
portraits generated across 1,900+ sessions
fine-tuned portrait styles, each certified before launch
of renders caught by the verifier and hidden from customers
median from photo upload to finished portraits
The experience
A Photo In, a Portrait Out, in Under a Minute
The whole product is three screens, played here on a phone built from the app's own markup, copy and tokens. Upload one clear face photo, wait about a minute while the paint dries, then pick a favorite and how it arrives. Everything in this case study is about making those three screens trustworthy.
- 1
Upload
One photo, checked before anything runs: a dog, face forward, good light. "Looks great, ready to go" is the gate, not a nicety. Nothing prints until she approves it.
- 2
Creating, about a minute
Four renders in parallel, then the verifier scores each one against her photo. The wait is honest about its stages and filled with a pup quiz and a review, so people stay.
- 3
Ready. Now finish it.
Only the renders that passed are shown. Pick a favorite, choose print, framed, mug or file, pick a size, and the watermark comes off when you buy.
The quality bar
A Pipeline That Checks Its Own Work
Image models drift. A golden retriever comes back a lab, a pug grows a longer nose. Instead of hoping, I designed a pipeline where every portrait gets checked against the customer's own photo before they see it.
Try it
One Real Batch, Scored
A customer uploaded their gray French bulldog for the Disco Doggo style. The model painted four portraits. Tap each one to read what the verifier said about it.
Portrait 1 · Pass · 85 out of 100
"The painting successfully captures a French Bulldog with correct breed-specific features: compact, muscular build; characteristic bat ears; brachycephalic (flat) face with wrinkled snout... The coat color is rendered as blue/gray with cream/tan markings, which matches the original dog's gray coloring."
Real portraits and the verifier's real notes, from a breed test run on Sept 14, 2026. Notes are trimmed for length.
Training the model
Fewer, Balanced Images Beat More
Every style is a fine-tuned image model, and the first one taught me the lesson that shaped all the rest. I thought more training images meant a better model. The fix was fewer, chosen carefully.
Certifying styles
Which Styles Drifted, and Three Retrains in a Day
Renders the verifier passed, by style
7,707 renders, Aug 16 to Oct 12, 2026
Old Timer, the most stylized look, drifted most. That told me where to spend the next round of training.
Certifying a new style
Disco Doggo, renders scored by eye, out of 96
Three retrains in one day, each with a curated training set. A style only shipped once it cleared its test matrix.
How it got built
A Team of AI Agents, With Me as the Product Lead
I designed a small team of AI agents, each with a defined role: product, marketing, design, engineering, QA, the portrait models, operations and knowledge. I wrote the tickets, set the bar, and reviewed every change before it shipped. It's the same job as leading a product team, just with a different kind of teammate.
Measuring it
Finding the Screen That Lost 85% of People
I built my own event tracking, 55 events in all, and watched session recordings alongside it. Most people who loved their portraits never made it past the offer screen. I collapsed the steps before it and led with the print.
Add-to-cart per render rose from 7.3% to 10.6% and cleared the target I set beforehand. New styles launched in the same window, so I don't credit the redesign alone.
Add-to-cart per render session
Aug 16 to Sep 17, 2026. Bars scaled to 15.6%, the best five-day window.
Key decision
One Portrait That Looks Like Their Dog Beats Three That Don't
The first version padded a short set back up to three with the best of the rejected renders. That quietly defeated the filter: a customer whose batch mostly failed still saw three portraits, two of them the wrong dog. I took the padding out, and the automatic re-roll with it. Now the customer sees exactly what passed, and if they want more, they press Generate again. That's their call, not the pipeline's.
Key decision
The Mug Wasn't Wrong. The Math Was.
I assumed the $28 mug would be the easiest thing to sell, and it was: seven mug orders to the frame's six. But at a 54.5% margin it earned $6.12 per cart, which meant four in ten carts had to buy before an ad paid for itself. The $99 to $169 framed print became the hero, because a frame can carry an ad, and the mug became the add-on. Same portrait, priced by reality.
The physical products taught me three things pixels never had to. A vendor's defect is still your defect, because every complaint lands on you. The screen can lie: the mug looked perfect digitally, and the physical proof exposed an aspect-ratio bug. And a product isn't real until the math works, so margins come before merchandising.
What happened
People Loved Making Portraits. Fewer Wanted to Buy Them.
The product worked. Thousands of portraits, a quality system that held up, and ads that brought people in for about $5 an add-to-cart. But only a handful of carts turned into orders, and I paused the ads in September. Best Mate is still live, just quiet.
The style leaderboard explained part of it. Simple was played with the most and carted the most, but Greenie sent the biggest share of its tries to checkout. Volume, intent and purchase turned out to be three different signals, and I had been reading the first one as all three.
My first sale was $19, from a stranger, for a digital portrait of her dog. It taught me more about conversion, trust, and what "done" means than any project with a safety net.
Field notes
I Tried to Learn One Thing. I Learned Eight.
What I planned to learn
- Fine-tune an image model
- Ship it
What I actually learned
- Fine-tune an image model
- Curate training sets
- Build quality gates
- Detect dogless photos
- Run Meta ads
- Read funnel analytics
- Fix email flows
- Rethink pricing
- First stranger bought one: $19
The longer version, with the training loop, the print proofs and the scoreboard, is Field Notes Vol. 01 on LinkedIn.
What I'd Do Differently
I'd test willingness to pay before building the pipeline. I proved people wanted to make portraits long before I proved they'd buy one, and checkout is where that gap showed. The quality system I'd build again exactly the same way.
Interested in talking through this project?
