I Built an AI Weight Loss Simulator with Claude Code. It Just Crossed Its First $100 — Here's What Actually Moved the Needle
I Built an AI Weight Loss Simulator with Claude Code. It Just Crossed Its First $100 — Here's What Actually Moved the Needle I'll skip the "tech stack first" opening. The stack is at the bottom; it's not why this made
I Built an AI Weight Loss Simulator with Claude Code. It Just Crossed Its First $100 — Here's What Actually Moved the Needle
I'll skip the "tech stack first" opening. The stack is at the bottom; it's not why this made money.
This is not a success story. $100 is lunch money. But it's $100 from strangers who found a page on Google, uploaded a photo of themselves, saw a result, and decided it was worth paying for — and for a long stretch before that, the number was exactly zero with plenty of people using the site every day. The gap between those two states is the interesting part.
What the Product Does
AI Weight Loss Simulator does one thing: you upload a photo, pick how many pounds you want to lose (or gain), and get back a photorealistic before-and-after of you — same face, same clothes, same background, different body.
That's it. No calorie tracking, no 3D avatar, no "enter your measurements." One photo, one number, one result.
Underneath there are a few things that turned out to matter a lot more than I expected:
- You tell it where you carry your weight (belly, hips and thighs, evenly, face and upper body), so a belly-first person doesn't get slimmer legs and an unchanged stomach.
- For big losses (50+ lbs) it keeps skin realistic instead of painting on a six-pack.
- A "journey" mode splits a goal into four milestones — −10, −20, −30, −40 — and renders each one from the same photo, then stitches them into a single timeline image.
Why I Picked This Niche
Weight loss visualization is an old, weird corner of the internet. There have been "see yourself thinner" tools since the 2010s. Most of them were 3D avatars or face-pinching filters, and if you read the App Store reviews of the paid ones, the median rating is one star: "funhouse mirror," "just squeezes my cheeks," "only shows the face," "I want my $2 back."
So the signals were:
- Real, durable search demand ("weight loss simulator", "what would I look like if I lost weight") with nobody happy about the existing answers.
- A visual, emotional outcome. People don't want a number; they want to see it.
- Image-editing models finally good enough to keep a person's identity while changing their body — which is the exact thing the old tools couldn't do.
- A one-off purchase fits the use case. Nobody wants a subscription to look at themselves thinner.
What Claude Code Helped With
Nearly all of the code, honestly. The Next.js app, the API routes, the fal.ai queue integration, the credit ledger with an atomic "debit only if balance ≥ cost" guard, the Dodo Payments checkout and webhook, the server-side image pipeline with sharp, the SEO pages with JSON-LD.
But the part I want to be precise about: the thing that got the site from $0 to $100 was not code. It was three product decisions, and Claude Code was useful for those too — just in a different way.
1. It read the reviews so I didn't have to guess.
I asked it to go find what people actually complain about in this category. It pulled ~200 App Store reviews across six competitor apps and a handful of MyFitnessPal forum threads and summarized them into seven concrete needs. "Must still look like me." "Full body, not just a face." "Let me try several target weights." "Let me save it as my lock screen." That list became the roadmap.
2. It found the leak in my free tier.
I had a free first simulation. Sounds generous. What it actually did was hand over the full-resolution result with a faint CSS watermark on top — meaning anyone could screenshot the exact thing I was trying to sell. Lots of usage, zero payments, and I couldn't see why. Claude Code read the code path, pointed at the watermark overlay, and said, more or less, "you're giving away the product." We moved the degradation server-side: free results now come back at 640px with a baked-in watermark, and the HD version plus a downloadable before/after card is what $1 buys.
3. It caught the model under-editing.
After switching to GPT Image 2.5, I asked it to regenerate the demo images. The first batch came back with −10, −20, −30 and −40 lbs looking almost identical. It turned out the model is a conservative editor: tell it "noticeably slimmer" and it removes about ten pounds no matter what number you wrote. We rewrote the prompt so each magnitude tier has concrete, checkable anchors — "stomach flat under the shirt, no overhang at the waistband, roughly one clothing size down" — plus a blunt line: if this looks like only 10 lbs came off, it is wrong. The −40 result finally looked like −40. That's the difference between a user who pays and a user who leaves a one-star review.
AI can write a lot of code. It does not automatically know what should be shipped. But if you point it at real user complaints and your own code at the same time, it's surprisingly good at connecting the two.
The Stack Behind It
Kept deliberately boring and cheap:
- Next.js 16 (App Router), React 19, Tailwind v4, shadcn/ui
- Supabase Postgres with Drizzle — a credit account table plus an append-only ledger
- better-auth with Google sign-in
- sharp on the server to downscale and watermark free previews and to compose the before/after and journey cards
- Dodo Payments as merchant of record — one-time credit packs, no subscription, they handle sales tax
- Vercel for hosting
Monthly fixed cost is close to zero. Each paid simulation costs a few cents in inference against $1 in revenue, so the unit economics work at any scale.
The First $100 Was a Signal, Not a Victory
What $100 actually proves:
- Google → landing page → upload → free preview → checkout → webhook → credits granted → HD download. The whole loop works, end to end, with real money.
- People will pay $1 in the moment right after they see the preview. The unlock button lives directly under the result, not on a pricing page. Most purchases come from there.
- A meaningful share of buyers pick the $5 pack instead of the $1 unlock, because the four-milestone journey costs 4 credits. Giving people a reason to want more than one image did more for average order value than any pricing-page copy.
What it doesn't prove: that this is a business yet. It's a machine that has started turning.
What I Learned
- Usage without revenue is a diagnosis, not a compliment. If lots of people use a thing and nobody pays, the free tier is probably delivering the whole value. Look there first.
- The moment of desire is the moment to ask. A $1 button under the result converts. A four-column pricing table one click away does not.
- Reviews of your competitors are a free user-research budget. Every one-star review is a spec.
- Prompt the model in verifiable terms. "Realistic" and "noticeably" mean nothing to an image model. "Stomach flat under the shirt" means something.
- Ship the product people describe, not the one you imagined. I thought I was building "see your future self." The users told me the real job was "prove to my brain that 20 lbs actually changed something" — which is why the journey mode and the weight-gain filter (add the weight back onto a current photo and compare) both exist now.
What Comes Next
- Let free users generate just the final milestone of a journey, with the intermediate steps locked, so they can see what they'd be paying for.
- More SEO pages around the specific questions people ask ("what would I look like 30 pounds lighter").
- A face-similarity check after generation so identity drift gets auto-retried instead of shipped.
- Actually look at the numbers again once it's $1,000, not $100.
The product is at weightlosssimulatorai.com. I'll write up the credit ledger and the free-preview pipeline separately — those were the two pieces of code I'd reuse in any AI SaaS.
Originally published by Dev.to AI. Aggregated on AIWithGhost for educational purposes — full credit and traffic to the original publisher.