Story · 12

A real personal
branding shoot.
At $0.04 a photo.

Florian, our in-house videographer, shipped a tool that generates product photos for e-commerce sites · a few cents per photo instead of a photographer's shoot. When I saw it, I thought · if it works for products, why not for faces? I built the equivalent for personal branding. Two weeks of tinkering later, I'm using my own photos on LinkedIn and we even ran a full set for one of our teammates for €0.80. Here's the story · what works, what fails shamelessly, and the source code I'm selling on pre-order for anyone who just wants to use it for themselves and their team.

15 min read Level Beginner Tools Next.js · fal.ai · Gemini
In 30 seconds

What you'll walk away with

Before we start

I needed photos. Not a thousand, just 5 or 6 good photos of me, usable on LinkedIn, my site, as a newsletter hero, on a sales page. You know the problem: the last real photo session you did was years ago, your selfies are from 2022, and everything you post looks a little washed out.

Two classic options · pay a photographer (around €500 a session in Lyon or Paris for a decent set), or take out a subscription to an off-the-shelf generator like Klayn.ai (about €200/month). I found both too expensive for a need that comes up once a quarter.

So I did what I do every time I find a product too expensive · I looked under the hood. Klayn really just stacks three or four AI image models available on platforms like fal.ai. Per unit, each photo costs between $0.04 and $0.20 · not $200 a month. The rest is just interface, marketing and margin.

So I built my own tool. Here's the photo I'm proudest of (generated from 4 selfies shot on my iPhone):

Black-and-white portrait, turtleneck, looking straight at the camera · my best AI-generated photo

My 5-second take

You absolutely can replace the photo session with a homemade tool. But not in one evening · it takes two weeks to dial in the right settings. If you don't feel like grinding through the learning curve, I sell my code on pre-order for €39 · you read the article and decide whether you want to build it yourself or grab mine.

How it got started (and the idea isn't mine)

To be honest, the idea isn't mine. It was Florian, our in-house videographer-photographer, who kicked the whole thing off.

A few months ago, Florian built a tool that generates product photos for e-commerce sites. The idea is dead simple · instead of organizing a shoot (gear, studio, photographer, post-production · easily €1,000 for a handful of products), you upload a photo of your product, describe the scene you want ("our cream in close-up on a black marble counter, golden light"), and the AI hands you 5-10 pro photos of your product in that scene. For a few cents each.

When I saw his first results on products, something clicked · if it works for products, why not for faces?

Because we all have the same problem · a LinkedIn profile photo from 2022, no portrait for the site's "about" page, nothing usable as a newsletter hero, no visual for sales pages. And between the €500 photo session and the €200/month Klayn subscription, there's a gap nobody fills. Especially for teams · if you have 5 people who each need 10 photos, it costs you an arm and a leg the classic way (the logistics of getting a photographer to the office, a whole day blocked off, a €2,000-3,000 final bill).

So I took Florian's same architecture, forked it, and rethought the whole thing for faces · handling identity references, prompts specific enough that people actually recognize the person, a "natural iPhone" mode by default to avoid the fake-magazine look.

Two weeks later, I had my photos. And then we said "hey, we should try it for other people at the company" · you'll get a glimpse a bit further down in the article.

What the result looks like

I built a dead-simple website. Four steps, in order:

Step 01 · You take a selfie

4 to 7 photos shot on your iPhone

No gear needed. You take 4 selfies in daylight · front, left profile, right profile, close-up of the face. In photo lingo these are called polas · the reference photos so the AI learns your face.

Count on 2 minutes in front of a light-colored wall.

Step 02 · You describe the scene

A place, a mood, that's it

You type in plain English: "I want a photo of me in a cozy café with a MacBook" · or "on a rooftop at sunset with my phone". If you're out of ideas, an "Inspire me" button offers 8 ready-made settings.

Step 03 · You approve 5 proposals

The AI breaks your scene down into 5 shots

Under the hood, Gemini 2.5 Pro (a Google model) reads your selfies and your brief, then proposes 5 different shots · face close-up, chest shot, wide-scene shot, and so on. You can tweak them or drop one before you launch.

Step 04 · You launch · 30 seconds later you've got your photos

5 photos, 30 seconds, $0.20 the batch

The image model (by default Seedream 4.5, a Chinese model that's ultra-good at producing several consistent photos in one go) does its thing. 30-60 seconds later, you've got your 5 photos. If one of them doesn't work for you, you click "regenerate this shot" · it only redoes that one photo without touching the others.

In the dashboard, you also get a cost counter in the top right · today $X.XX, this month $Y.YY. So you don't burn through €30 without noticing (more on that below, because that's exactly what happened to me at the start).

Here are my 4 reference selfies

So you can see just how ridiculously simple step 01 is · here are exactly the 4 photos I uploaded into the tool to generate every photo you see in this article. 4 iPhone selfies, a light-colored wall, shot in 2 minutes:

Reference selfie #1 · facing the camera, daylight, light-colored wall Reference selfie #2 · profile, neutral expression Reference selfie #3 · three-quarter view, slight smile Reference selfie #4 · close-up of the face, natural light

That's it. No gear, no session, no suit. That is enough for the tool to understand my face and reproduce it in 50 different settings. The talent is in the prompt, not in the input photo.

The app, for real

Here's what it looks like once deployed. No terminal, no YAML, just a UI. You click, you paste in your 3 keys, you generate your photos.

Wizard home page · 'Fiesta' title, photo showcase, 3 steps to generate your personal branding photos

The wizard you'll have on your end · home, example showcase, the "Start" button that kicks off the 4 steps (selfies → scene → proposals → renders). It's the page you see first when you land on your Vercel URL.

Settings page · hero, 'How it works in 3 keys' diagram and the start of the status cards

The Settings page that tells you in green that everything works · you get here from anywhere via the topbar. A "how it works" diagram, 3 cards for the 3 keys (fal.ai, OpenRouter, Admin token), a "Test connection" button under each field. When everything is green, you're ready.

Close-up on the API key status cards · status, environment variable, test button

Close-up on the cards · on the left the status (✓ Configured with the value masked as ••••XXXX, or ✗ Missing), on the right the "Test connection" button that pings fal.ai's billing endpoint. You expand "How to get it" if you're looking for the docs to follow.

'Install your keys locally' section · step-by-step instructions for local mode

And if you want to run it locally · same page, further down. Step-by-step instructions to clone the repo, run npm install, create your .env.local. It's the only moment in the tool where anyone mentions an env file · otherwise everything goes through the UI.

Why I'm showing you this

Because 80% of the "AI tools" sold today are cobbled-together Python scripts shipped in a ZIP with a 200-line README. This is a real Next.js product with its own topbar, its pages, its design system, its callouts. You deploy it on Vercel, you set your custom domain, you change the name · you've got an app of your own.

The photos that actually work

Let me show you two results · it gives you an idea of what you get when everything lines up.

Black-and-white portrait · turtleneck, soft light, direct gaze

Why this one works · the AI kept my real face (skull shape, beard structure, gaze), the light is soft and natural (no harsh flash), and black-and-white hides the sometimes too-smooth AI skin. It's the kind of portrait I can use as a profile photo without anyone asking questions.

Rooftop portrait at sunset, smartphone in hand

Why this one works · the setting (rooftop at sunset) stays plausible, I'm holding the phone in a natural way, and the golden light masks the imperfections the AI sometimes puts on skin. Perfect as a sales-page or newsletter hero.

The exact cost of the two photos above

Each Seedream 4.5 render costs me $0.04. For these 2 photos I actually generated about fifteen (I keep the ones I like and toss the rest). Total: about $0.60. A full "every set for the year" session costs me €30.

Gallery · what you can actually produce

So you don't stop at 2 photos · here's what the tool produces across 8 typical use cases for solid personal branding. Each time I give you the target use, the real cost, and why it works (because understanding why is what lets you replicate it on your end).

Wall of results · the raw volume, no commentary

Before we go through the cases one by one, just look at the contact sheet. 9 results side by side, like a photo studio handing you the sheet of thumbnails after the session. This is what an hour of generation at $0.04 a render looks like:

Thumbnail · B&W turtleneck portrait Thumbnail · rooftop sunset Thumbnail · corporate LinkedIn Thumbnail · café lifestyle Thumbnail · library café Thumbnail · conference stage presentation Thumbnail · morning home office, bomber, coffee Thumbnail · premium office, high-floor tower Thumbnail · B&W portrait of a teammate

Now let's run through the cases in detail.

Corporate LinkedIn portrait · dark suit, premium office setting, open laptop

1 · Corporate LinkedIn (profile photo + About page)

On-stage presentation · navy polo, projector light, composed stance near the lectern

2 · Speaker / stage (talk announcement, conference recap post, bio slide)

Lifestyle close-up · hands on a laptop keyboard, bookshelf in the background, cozy café mood

3 · Café lifestyle (LinkedIn carousel, newsletter background)

Premium office portrait · beige bomber, green plants, high-floor tower windows over the skyline

4 · Premium office tower (About hero, team page, pro photo)

Rooftop at sunset · hero portrait, warm golden light

5 · Rooftop hero (homepage hero, pre-order page, newsletter hero)

Black-and-white turtleneck portrait · direct gaze, timeless

6 · Timeless B&W portrait ("main" profile photo, interview, press)

Library café variant · warm wood mood, chest shot, thoughtful gaze

7 · Library café variant (podcast cover, "about" header)

Morning home office · camel bomber, steaming coffee mug, bookshelf, daylight through the window

8 · Morning home office (casual LinkedIn post, personal blog photo, course hero)

9 · Before / after · the iPhone selfie vs what the AI turns it into

So you can gauge the raw delta, here side by side is an input iPhone selfie and an AI result generated from it:

Before · raw iPhone selfie, light-colored wall, daylight, neutral expression

Before · iPhone selfie, 2 sec, light-colored wall

After · black-and-white turtleneck portrait AI-generated from the selfie

After · generated B&W portrait, $0.04

That's exactly the jump · on the left, what's already in your phone's camera roll, on the right, what you can put on LinkedIn Monday morning. No haircut change, no shave, no studio. Just 4 cents and 30 seconds.

What to take away from this gallery

The 9 photos above together add up to less than $2 of AI credits (including the flops I threw out). In a studio, the same set would cost you between €500 and €1,500 depending on the city and the photographer's level · not counting the half-day you have to block off in your calendar and the 6 outfit changes.

And it works for teammates too

That's where the tool gets really interesting. Once it was dialed in for my face, we could reuse it as-is for everyone else's faces at the company.

Here's a portrait generated for one of our teammates · 4 selfies sent as input, the brief "neutral black-and-white studio, direct gaze into the camera, understated suit," and a few renders later we had his full set of pro photos:

Black-and-white portrait of a teammate · direct gaze, light gray background, jacket and white shirt

What this changes in practice · if you lead a team, you no longer need to bring a photographer to the office for everyone (a logistics nightmare, a price that climbs fast · between €1,500 and €3,000 for 5-10 people depending on the city). Each person sends their 4 selfies from home, you run the tool for 5 minutes, and everyone has their set. Once the tool is set up, the marginal cost of an extra teammate is around €0.80-1.

It's also the moment when the argument "I buy the code once instead of subscribing" makes complete sense · across 5-10 people to kit out, the software's ROI is immediate.

The shamefully failed photos (because you have to be honest)

I'm not going to sell you a dream. For every 1 photo that works, I throw out 4. Here are 3 characteristic flops · they give you an idea of the kind of traps to avoid.

Flop 1 · The AI invented a character who isn't me

Generated photo of a man with medium-length hair and earrings · looks nothing like Jérémy

That guy isn't me. I'm bald, I don't wear earrings, I've never had that haircut. Why it happens · when the prompt is too vague (something like "business man on a rooftop"), the model invents the character. My 4 reference selfies weigh less than the thousands of corporate LinkedIn photos the model saw during training.

The fix that worked · forcing very precise identity anchors into the prompt · "bald, salt-and-pepper beard, square face structure, blue eyes." And running a mini-test of 1 photo before the batch, to see if the AI is really catching my face. If it confuses me with someone else, I adjust before generating 5 photos at once.

Flop 2 · The frozen "2018 corporate stock photo" pose

Generated photo · man in a beige suit walking on a rooftop · frozen stock-image pose

This one's a bit more subtle · it vaguely resembles me (skull shape OK), but it turned into a stock photo. A frozen pose, a stock beige suit, a catalog smile, real-estate-ad lighting. If I put that as my LinkedIn photo, my network would wonder whether I pivoted into a Big4 consultant.

Why it happens · image models have a default voice. When you don't give them very precise instructions, they lean toward what they've seen most during training · editorial magazine photos, corporate photos, Hawkesworth-Kinfolk stuff for the outdoors. And it's never what you want when you're going for natural.

The fix that worked · I created a "natural iPhone" mode by default. The prompt forces things like "24mm lens, mixed ambient light, slightly off-center, no film grain, no editorial composition." Result · the photos finally look like what you'd shoot with a modern iPhone, not like a magazine cover.

Flop 3 · The editorial street shot that reeks of a Vogue shoot

Generated photo · walking down a Parisian street in a beige coat, phone to the ear, yellow taxi in the background · too editorial

At first glance, it's beautiful. Golden light, cream coat, yellow taxi in the background, a cinematic gesture of the phone to the ear · you'd think it cost €300 from a photographer.

Why I throw it out anyway · it's exactly the trap of flop 2, premium edition. Too editorial for personal use. If you put that on LinkedIn, your network immediately senses the "magazine shoot" and the photo loses all credibility of authenticity. It's pretty but it no longer looks like you · it looks like an Hermès ad from the 2023 season. The scripted movement (walking + phone) adds a layer of staging that reeks of a set.

The lesson · image models love magazine compositions. The "prettier" it is, the more suspicious you should be. A photo that really looks like you often seems less remarkable than a Vogue photo · and that's precisely why it works.

The 3 things I wish I'd known at the start

If you're thinking of building your own tool (or even just using a Klayn and friends), these 3 lessons will save you two weeks.

1 · Image models have a very magazine "default voice"

It's the most treacherous trap. You write a simple, neutral prompt and the model hands you Vogue. Not because you asked for it, but because it's what it saw most during training.

In practice · if you want natural iPhone, you have to impose it hard in the prompt (and even explicitly ban words like "Kodak Portra," "cinematic," "editorial"). If you don't do that, you'll always get fake-magazine and you won't understand why.

2 · Shorter = better (compress your prompts ×3)

My reflex at the start · add context. More words = more precision, right? No, the opposite.

Image models have an optimal word count between 30 and 100. Above that, they average things out and forget half your instructions. I compressed my prompts from 470 words to 165 words · the results were immediately better.

3 · No universal winning model · you test all 4 on your own face

There are about a dozen image models accessible through fal.ai. I mainly use 4 · Seedream 4.5 (the best for producing 5 consistent photos at once), Nano Banana Pro (the best for a single, very true-to-life photo), FLUX 2 (good for very precise outdoor scenes), GPT Image 2 (good for identity fidelity when you have a single reference photo).

None is better than the others in absolute terms · it depends on your face and what you're after. The only way to know is to generate the same scene with all 4 models on your selfies, and look. Budget $0.50 for that test, it's worth it.

Want to build it yourself?

If you're a developer or you have Claude Code installed, you can totally do this yourself. Here's the minimal stack:

3 non-negotiable tips if you get into it:

  1. Put a cost counter in from day 1. You're going to make mistakes, so you might as well see them right away. 30 lines of code, it costs you nothing.
  2. Compress your prompts ×3. Start short, add only if you see it improving things.
  3. "Natural iPhone" mode by default. Otherwise all your results will lean toward magazine and you won't understand why.

I wrote the full technical story (17 sections, every bug solved, every architecture decision) in a separate document. If you want to read it before you get started, tell me in a reply to the newsletter · I send it privately to anyone who asks.

Just want to use it? €39 · one-time purchase

You've got a team to kit out, or you want to redo your pro photos every three months without signing up for a €200/month subscription. I sell the source code · one-time purchase, no SaaS that can disappear, no per-user quota.

What you get for €39 incl. tax

  • Complete Next.js code · an invite to the private GitHub repo (lifetime updates) + a standalone ZIP. One-click deploy on free Vercel.
  • Turnkey Settings page · you paste your 3 API keys through the interface, the status turns green and a "Test connection" button confirms it. You never touch a .env.local file, never a terminal.
  • Docs delivered · STORYTELLING.md (every technical decision + bugs already solved) + CLAUDE.md (so Claude Code modifies your fork cleanly).
  • No usage limit · you, your team, your buddy — as many people as you want.
  • Auto delivery in 2 minutes · Stripe → email with a ZIP link + GitHub invite. No manual validation.
  • 7-day money-back guarantee · if it doesn't work or doesn't suit you, I refund you in full, no questions asked.

Your variable costs · your own API keys · fal.ai (~ €4 for 100 photos) + OpenRouter (~ €1 for 50 sessions). You pay as you go, directly to the providers, at a few cents a photo. No hidden subscription.

The 2-year math, no bullshit

Klayn (SaaS sub) Photographer (1/quarter) My tool
Year 1 €2,400 €2,000 ~ €130
Year 2 €2,400 €2,000 ~ €30
2-year total €4,800 €4,000 ~ €160

A factor of 25-30, not a 10% saving. And you can redo 50 sets in a year at no extra cost — a new teammate joins? €1 of fal.ai credit and it's done.

Why not Klayn? Why not a photographer?

Three things that would have kept me up at night if I'd signed with Klayn:

And the photographer, then? It's complementary, not competing. A good session once a year is still valuable. But between two sessions, your set goes stale after 4 months — and for a team of 5-10, bringing a photographer to the office (€1,500-3,000 + a day blocked off) becomes irrational when everyone can send 4 selfies from their couch in 2 min.

€39 incl. tax · one-time purchase, no subscription

You pay once, the code is yours for life. Free updates, a private GitHub repo, a standalone ZIP, auto delivery in 2 minutes. 7-day money-back guarantee, no questions asked.

Buy for €39 incl. tax →

Not a developer? The Settings page walks you through it step by step, you never touch a terminal. Write to me directly if you'd rather pay another way (bank transfer, etc.).

Going further

A few links if you want to dig into the topic:

  1. fal.ai · the platform that lets you generate images through about a dozen models (Seedream, FLUX, Nano Banana, GPT Image, Imagen…). Pay-as-you-go pricing, topping up your account with €20 already gives you enough to test.
  2. My Claude Code guide · if you want to get into building this kind of tool, that's where I usually start.
  3. The AI glossary · to understand the technical terms (LoRA, polas, batch, queue) that come up often in the world of image models.
  4. My tools · the 6 tools I use every day in my AI stack.

If you've built your own personal branding photo generator or tested Klayn, reply to the newsletter and tell me what you learned. That's how my next articles get better.

— Going further

3 articles to read next.

— Questions people ask me

Frequently asked questions.

How much does an AI personal branding photo cost in 2026?

Expect around $0.04 per photo generated through an API like fal.ai with a model such as Seedream 4.5 or FLUX. A full set of 10 LinkedIn photos runs about $0.40, not counting prompt time. Compare that to €500 for a traditional photo session and €200/month for a service like Klayn. For a team of 5 people with 10 photos each, you're looking at €2 versus €2,000 to €3,000 the traditional way.

Which image model should you use: Seedream, FLUX or Nano Banana?

No single model wins universally, you have to test all four on your own face. In practice, Seedream 4.5 (Chinese) gives the best mix of multi-photo consistency and face fidelity for personal branding, so it's my default. FLUX gives more of a film-magazine look. Nano Banana (Google Gemini) shines at editing an existing photo rather than generating from scratch. GPT Image and Imagen are decent but often too smoothed out. Test all four with the same 5 prompts and pick the one that looks most like you.

How many reference selfies does it take to train a consistent character?

4 selfies are enough to get a consistent result with today's models. That's what I use in my generator: 4 photos taken on your phone (front, slight left profile, slight right profile, chest shot) with neutral lighting, no glasses or accessories that change. Beyond 6 photos, you rarely see a quality gain. Below 3, the models invent a character that no longer looks like you.

Can AI replace a professional photographer for LinkedIn?

For 80% of everyday uses (LinkedIn profile photo, newsletter hero, About page, sales page illustration), yes. The quality is good enough that it won't give away the AI origin if you take the time to pick the right setting and pose. For a book cover portrait, a press campaign, or any use where the image will be scrutinized at large size, the photographer still has the edge. The real savings show up with teams: 5 people with 10 photos each cost around €2 with AI versus €2,000 to €3,000 with an on-site photographer.

What's the technical stack to rebuild this generator yourself?

My stack: Next.js for the app (frontend + API routes), fal.ai as the gateway to the image models (Seedream, FLUX, Nano Banana), Vercel for hosting, and a homemade design system with a topbar, callouts and galleries. No Python, no Docker, no GPU to rent. The full code (17 sections of technical story, every bug solved) fits into a plain Next.js product you can deploy in one click on Vercel. Budget two weeks to dial in the settings if you start from scratch, or grab my code on pre-order for €39.

Are AI-generated photos allowed on LinkedIn and résumés?

Yes, LinkedIn doesn't ban AI photos as long as they represent a real, existing person (you) and not a fictional avatar. Same for a résumé: it's legal and increasingly accepted. The ethical nuance is the same as for a retouched photographer's shot · as long as the photo looks like what people will see when they meet you in real life, it's acceptable visual home staging. Where it gets problematic · radically changing your apparent age, your body shape, or adding a haircut you don't have · that's misleading the person you'll meet.

Jérémy Sagnier
Thanks for reading this far 👋

Shall we keep going?

I test AI for real and share what works, no jargon and no hype. If this article helped you, the easiest way to never miss anything is my Friday letter. And if you have a question or a doubt: reply to me, I read everything.

Get the newsletter → Read more articles