MyDressr Strategy Dashboard

Team-leader view: market scan for GCC + Egypt, MVP strengths and gaps, new feature priorities, AI cost-per-user today vs after the new approach, and the scaling plan from 1K to 1M users. Move the sliders to recompute everything live.

Phase: 2 (Pre-launch)
Stack: Django + MySQL + Celery + Gemini Pro Image Preview
Pricing: Plus $9.99 / Premium $29.99
Target market: GCC + Egypt → MENA
Executive Summary
Live Today
Planned Features
Pricing Study
Charging Plan
Plan Limits
Pricing Detail
Excel Source Data
References
Market & Competitors
SWOT
New Features
Cost: Now vs New
AI Alternatives
Scaling Plan
90-Day Plan
1,000users / month
10% paid
50% cached & free
Code default in avatar_gemini.py line 33 is Pro Image Preview. The original Excel cost model assumed Flash Image 1K.
$16.27
Cost / Plus user / mo (today)
Loss-making
$4.64
Cost / Plus user / mo (new)
−71% vs today
−$852
Net monthly burn at current MAU (today)
AI > Revenue
+$776
Net monthly burn at current MAU (new)
+$1,627 improvement

What I see today as team leader

  • LIVE cost today is not profitable if users hit the proposed caps. At current Pro Image pricing, Plus can cost $16.27 against $9.99 revenue, and Premium can cost $47.46 against $29.99 revenue. Toggle the model to see lower image-price scenarios.
  • The risk is unpaid usage, not the paid-tier unit economics. Any broad free-month promotion must be budget-gated because the current Plus preview costs about $16.27/user. Numbers in the "Charging Plan" tab.
  • Planned features make the picture worse unless they are capped. Daily routine images and video should stay out of the paid promise until the live plan caps and cost controls are implemented.

The 3 moves that fix it

  • Hybrid AI routing. Gemini Pro only for the hard hero shots. Cheaper engines (FASHN list price around $0.05, Imagen 4 $0.04, Claude Haiku $1/$5, GPT-5.4 mini, self-hosted IDM-VTON at $0.01 target) for the routine calls. Cuts variable cost ~60–75% if vendor routing is implemented. See References R-P1 to R-P5.
  • Caching layer for try-ons. Same avatar × same garment = same image. Redis-backed cache at 50% hit rate is realistic and already half-implemented. Saves another ~30%.
  • Resolution tiers tied to subscription. Plus = 1024px. Premium = 2048px hero shots. Keep the highest-cost renders for Premium moments.

Cost per user — today vs new approach (live at your MAU + paid %)

Today's bars use current-code cost for the proposed Plus/Premium caps. The "new approach" bars apply cheaper try-on routing and cache. The old dummy seed data is not used as a pricing source.

Live cost today — only features running in production

This tab now uses the proposed Plus and Premium request caps, not the old workbook behavior model. It shows what the live code path can cost if a user hits the cap: try-ons, avatars, What-If images, and chatbot messages. Premium video and scan-and-add stay out until their final caps are approved.

$0.134
Current image unit cost
Pro Image path
$16.27
Plus user cost / month ($9.99 revenue)
−$6.28 net
$47.46
Premium user cost / month ($29.99 revenue)
−$17.47 net

Cost vs revenue by paid plan

Break-even at your slider mix

Break-even table — what paid mix do we need?

Plus %Premium %Weighted costWeighted revenueNet / userProfitable?

This table assumes unpaid users do not receive costly AI calls. It tests whether the paid mix can support Plus/Premium cap usage on the current image path.

Planned features — not live, modeled "if we ship it"

Daily routine images, chatbot, daily routine LLM, and Veo video are on the roadmap but not in production today. Toggle each one to see the impact on the unit economics. The default "all off" view shows today's reality.

Daily routine image

90 images / mo / Plus + Premium. Needs recommendation scorer.
Adds +$12.06 / Plus user, +$12.06 / Premium.

Stylist chatbot

Message caps only. B1 currently models 100 Plus / 300 Premium chatbot messages.
Adds tiny +$0.02–$0.05 per user.

Daily routine LLM

30 calls/mo (Plus + Premium). Same engine as daily image.
Adds +$0.04 per Plus + Premium.

Premium video (Veo)

5/20 clips per month. Excel uses a conservative $0.75/clip placeholder; verify current Veo tier in R-P1 before launch.
Adds +$3.75 / Plus, +$15.00 / Premium.

Combined per-user cost (today + selected planned)

Net per user (revenue − cost)

If Plus net goes red, the feature is more expensive than the subscription price.

Per-feature recommendation

FeatureActionReason
Daily routine outfit imageDeferAdds $12 to Plus and Premium alike. Wait until hybrid routing + cache are live so it costs $2–3 instead.
Stylist chatbot (LLM)ShipNegligible cost (<$0.05/user). Major differentiator if Arabic-native via Falcon-H1 7B self-host.
Daily routine LLM callShip with daily image$0.04/user. No reason to defer separately.
Premium video (Veo)Cap, Premium-onlyLargest single cost. Restrict to Premium tier with a hard monthly clip cap (e.g. 10 clips max).

Pricing study — first month free, tier structure, full recommendation

The situation: Marianne wants to offer the first month free to new users. Beyond that, she has no vision for the paid tiers — only the commented-out $99 Premium card in pricing.html. This study answers three questions: (1) Is first-month-free safe? (2) What guardrails do we need on the trial? (3) Should we ship one paid tier or two?

A. Trial guardrails — pick the protection level

First-month-free has two failure modes. Real users that don't convert cost us money. Abuse accounts (people who make new accounts each month) cost us money AND don't convert. The guardrails control both.

4%
Install → trial signup rate
18%
Trial → paid conversion
1.05×
Abuse multiplier (ghost accounts)
$10.50
Cost to acquire one paid customer

What this guardrail actually costs us per 1,000 installs

Trial cost = (installs × signup rate × abuse multiplier) × capped request cost. Revenue = converted customers × 12 months of subscription. We're profitable per cohort when revenue > trial cost.

Trial guardrail trade-off table

OptionSignupsConv.AbuseVerdict
Hard caps + CC4%18%1.05×Recommended for GCC
Hard caps, no CC8%10%1.8×Risky at scale
No caps, no CC10%8%2.5×Unsafe

CC = credit card required at signup, charged $0 during trial. GCC users are used to this (Netflix, Spotify, Anghami all do it). It cuts signups in half but eliminates 95% of abuse and triples conversion because people who put in a card are real customers.

B. Tier structure — one paid tier or two?

Two valid options. Pick one based on whether we want simplicity (1 tier) or upsell room (2 tiers).

Two-tier structure (Plus + Premium)

TierPriceWhat's in it
Plus$9.99100 try-ons, 5 avatars, 10 What-If images, 100 chatbot messages
Premium$29.99300 try-ons, 10 avatars, 30 What-If images, 300 chatbot messages; video TBD

Pros: upsell ladder, anchoring (Premium makes Plus look cheap). Cons: more support load, harder to message. Most successful for ARR > $1M.

One-tier structure (Pro)

TierPriceWhat's in it
Pro$14.99One paid tier with clear request caps; no unlimited image generation

Pros: dead simple, easier to launch, cleaner pricing page. Cons: leaves money on the table (some users would pay $30). Best for early-stage when you want fast iteration.

Per-paid-user economics under selected setup

Monthly P&L at 10K MAU (with trial + selected tier)

Includes trial cost drag for the 4% / 8% / 10% of installs in their free month at any given time.

C. Recommended setup

Trial

  • 30 days — full month free (per Marianne). Cost is calculated from explicit request caps, not active days. Plus preview cap = 100 try-ons, 5 avatars, 10 What-If images, 100 chatbot messages → about $16.27 on the current Pro Image path.
  • Credit card required at signup. Cut signups but triple conversion. GCC users expect this.
  • Trial caps (for a 30-day window): Plus preview = 100 try-ons, 5 avatars, 10 What-If images, 100 chatbot messages. Premium preview = 300 try-ons, 10 avatars, 30 What-If images, 300 chatbot messages, invite-only.
  • Auto-convert to paid Plus on day 31 unless cancelled. One-tap cancel from app at any time.
  • Notification cadence: day 7 (engagement nudge), day 21 (heads-up), day 28 (last call with cancel button).

Tier structure

  • Launch with TWO tiers but start one of them empty until we have data.
  • Plus at $9.99/mo is the daily-driver tier: 100 try-ons, 5 avatars, 10 What-If images, and 100 chatbot messages.
  • Premium at $29.99/mo is the anchor and the heavy-user tier: 300 try-ons, 10 avatars, 30 What-If images, and 300 chatbot messages. Video stays TBD.
  • Annual: Plus $99/yr (17% off), Premium $299/yr (17% off).
  • Trial converts to Plus by default. User can upgrade to Premium anytime.

Premium guardrail

  • Do not offer Premium broadly as a free month. At 300 try-ons and current-code pricing, one user can cost about $47.46 before video.
  • Use Premium preview only for VIP, investor, or internal demo accounts until cheaper cost controls are implemented.
  • Keep Premium video out of the first-month calculation until the real implementation and vendor price are approved.
  • Every expensive AI feature must have a visible meter and a backend limit before launch.

D. The numbers — legacy 18-month workbook forecast

This table is retained as a legacy workbook forecast, not the launch source of truth. The current launch budget should use B1's Plus/Premium request caps and current-code cost calculator. Rebuild this table after Marianne approves the final paid-plan limits.

MonthMAUIn trial this monthPaid customersCancelled / unpaidRevenueAI costNet
Month 1 (launch)50050000$0$1,975−$1,975
Month 2 — first conversions1,00050090410$1,259$3,444−$2,185
Month 32,0001,070170760$2,378$6,980−$4,602
Month 68,0001,5007205,780$10,073$21,377−$11,304
Month 920,0003,0001,50015,500$20,985$49,160−$28,175
Month 12 (peak burn)40,0005,5003,20031,300$44,768$98,705−$53,937
Month 13 — Hybrid routing + caching go live → per-user AI cost drops ~65%
Month 1560,0007,0005,50047,500$76,945$66,550+$10,395
Month 18100,00010,00010,00080,000$139,900$108,000+$31,900
~$240K
Cumulative burn through Month 12 (must be funded)
Month 15
First profitable month (after hybrid routing)
~$60K
Avg monthly net by Month 18 — covers the burn in ~4 months

The math behind each row:
In trial this month: users currently inside their 30-day free month. The previous cheaper-path trial number is retired; B1 now models Plus preview at about $16.27/user on current-code pricing.
Paid customers: previous-month trial × 18% conversion rate, plus 90% retained from prior month.
Cancelled / unpaid: previous-month trial × 82% who did not convert, at 85% monthly retention in this legacy forecast.
Revenue: paid customers × $13.99 ARPU (80% Plus + 20% Premium blend).
AI cost: historical workbook formula, not final launch math. Replace with B1's approved request caps before using this table externally.
Net: Revenue minus AI cost. Server / payment processor / support overhead not included (~10-15% additional).

Reading this honestly: using request caps instead of active-day assumptions materially lowers trial burn, but we still need to fund roughly $240K of cumulative AI burn over the first 12 months before economics flip. The biggest controllable lever is shipping hybrid routing + caching by Month 6 instead of Month 13; recompute this table before investor use once final request caps are approved.

E. Abuse protection — what to build before launch

  • Credit card required at trial signup. Charged $0, fingerprint stored. Cards can't be reused on multiple accounts.
  • Device fingerprint via Flutter package + IP rate-limit. Block trial from same device after first one.
  • Phone number verification with SMS OTP. KSA and Egypt phone numbers have to be unique.
  • Email blocking for known disposable domains (10minutemail, etc.).
  • Hard monthly request caps per trial user: Plus preview = 100 try-ons, 5 avatars, 10 What-If images, 100 chatbot messages. Premium preview = 300 try-ons, 10 avatars, 30 What-If images, 300 chatbot messages, invite-only. Auto-suspend if exceeded.
  • Apple Sign-In + Google OAuth as primary signup paths. Forces real identity, reduces fake accounts.
  • Manual review queue for trials that suddenly hit caps on day 1. Real users don't try 20 avatars in an hour.

F. Decision checklist for the meeting with Marianne

DecisionRecommendationStatus
Trial length30 days (confirmed by Marianne)Approved
Credit card required for trial?YES (recommended)Confirm
Trial caps for 30-day windowPlus: 100 try-ons / 5 avatars / 10 What-If / 100 messages. Premium invite-only: 300 / 10 / 30 / 300.Confirm
Launch with 1 or 2 paid tiers?2 tiers, Plus + PremiumConfirm
Plus monthly price$9.99Confirm
Premium monthly price$29.99Confirm
Annual discount17% (round to $99 / $299)Confirm
Unhide Premium card on pricing.html?Replace with Plus + Premium only; keep video TBD until cost is approved.Confirm
Pricing localization for Egypt?Defer to phase 2 (start with USD)Confirm

Each row is a decision Marianne needs to make. After the meeting, every "Confirm" can flip to Approved or to a different number.

How we charge users after the free month — full math

The situation: Marianne committed to a first free month but hasn't specified what happens on day 31. This tab walks through the full charging mechanic, what we expect to collect at each MAU level, and a recommended billing system.

A. The charging funnel — what happens to a user month by month

DayWhat happens to the userWhat we collect
Day 0 — installSees pricing screen → starts 30-day free trial → enters credit card (charged $0, card on file)$0.00
Day 1–29 — trialUser is testing either Plus or Premium. The usage caps still need approval; dummy seed data is ignored.$0.00
Day 7 — engagement push"You've tried X outfits this week. Here's an Eid look you'll love."$0.00
Day 21 — heads-up"Your free month ends in 9 days. Keep your wardrobe AI for $9.99/mo."$0.00
Day 28 — last call"Trial ends in 2 days. We'll charge $9.99 — cancel anytime." (one-tap cancel link)$0.00
Day 30 — convertCard auto-charged Plus $9.99 unless cancelled. Branch:depends
↳ 18% convert (CC users)Become paid Plus, full features unlocked$9.99/mo
↳ 82% cancel or failPaid AI features lock until the user starts Plus or Premium.$0.00
Day 60+ — month 2 paidPlus / Premium user is charged again.$9.99 or $29.99
Any month — upgradePlus → Premium ($29.99/mo) for higher caps + premium videodelta $20
Any month — cancelOne-tap. Access remains until end of paid period, then paid AI features lock.$0 (next bill)

B1. First month at each MAU level — Plus and Premium only

Since Marianne committed to a full free month, every new user pays $0 in their first 30 days. B1 now ignores the dummy seed and focuses only on the two paid products we actually want to sell: Plus and Premium.

Source status: the backend confirms current AI code paths and plan-limit fields, but it does not contain a live credit ledger or per-call cost table yet. The limits below use the current expensive model path only. The cheaper future approach belongs in the Cost: Now vs New tab.

Free-month offerWhat user is testingCurrent-code costVerdict
Plus preview 100 try-ons, 5 avatars, 10 What-If images, 100 chatbot messages ~$16.27 Too expensive as-is — a free month for many users must be budget-gated.
Premium preview 300 try-ons, 10 avatars, 30 What-If images, 300 chatbot messages; video not included yet ~$47.46 Do not offer broadly as free month — good paid tier, risky as open trial.

B1 detail — proposed Plus / Premium limits

Cost driverPlus limitPremium limitCurrent-code unitFormula
Virtual try-on100300$0.134limit x $0.134
Avatar creation510$0.268limit x 2 image calls x $0.134
What-If image1030$0.134limit x $0.134
Chatbot messages100 messages300 messages$0.00185message limit x $0.00185; one user message + one AI reply
Premium video0TBDTBDexcluded until cap and vendor cost are approved
Total cost / trial user$16.27$47.46Current-code expensive path only.

Review: the limits are competitive and generous versus public competitors. GlowFit publicly sells 100 monthly credits at $9.99, where 1 HD try-on uses 1 credit and a 5-second video uses 20 credits. FitInView shows credit packs around 100 credits / ~10 try-ons and 1,500 credits / ~150 try-ons. So 100 Plus try-ons is user-friendly, but unsafe on the current Pro Image-only path unless the free-month budget is capped.

B1 budget calculator — what your launch budget can buy

Inputs

InputPlusPremium
Try-ons
Avatars
What-If images
Chatbot messages messages messages
Budget for free month$
Premium share of trials%

Live Output

MetricPlusPremium
Cost / trial user$16.27$47.46
Users budget can cover614210
Mixed plan users covered515
Cost for 10K mixed trials$193,840

B1a. Cost if everyone gets a Plus or Premium free month

New users in free monthPlus current costPremium current costRevenue
1,000$16,270$47,460$0
10,000$162,700$474,600$0
50,000$813,500$2,373,000$0
100,000$1,627,000$4,746,000$0
1,000,000$16,270,000$47,460,000$0

My call: do not offer a Premium free month broadly unless Premium limits and video caps are hard-coded. Plus should be the default free-month preview; Premium should be invite-only or upsell after payment.

B1b. Default launch table — Plus preview focus

MAU in their first month Avg Plus cost / user Total Plus cost now Revenue this month Net first-month P&L
1,000 (new users in free month) $16.27 $16,270 $0 -$16,270
10,000 (new users in free month) $16.27 $162,700 $0 -$162,700
50,000 (new users in free month) $16.27 $813,500 $0 -$813,500
100,000 (new users in free month) $16.27 $1,627,000 $0 -$1,627,000
500,000 (new users in free month) $16.27 $8,135,000 $0 -$8,135,000
1,000,000 (new users in free month) $16.27 $16,270,000 $0 -$16,270,000

Why this is important: the free-month is a paid promotion. We are buying acquisition with AI cost. If we onboard 10,000 brand-new users in a month, the burn depends entirely on the approved free-month limits. That's the decision we must make before launch budget conversations.

The math:
Avg Plus-preview cost / user = $16.27 on the current Pro Image-heavy path — see the current-code breakdown below.
Total Plus-preview cost = free-month users x $16.27 current-code cost.
Revenue = $0 (because everyone is still inside their free month).
Mitigations: approve real caps, implement a credit ledger, and limit free-month access by budget.

B2. Steady state — what we charge once trials start ending (Month 2 and beyond)

From month 2 onwards, the earliest cohort starts converting. This is the table to look at for projected revenue. Conversion math has now been applied.

MAU at steady state Installs (1.5×MAU) In trial (4% of installs) Convert to paid (18% of trial) Plus payers (80%) Premium payers (20%) Monthly revenue from new conversions
1,000 1,500 60 11 9 × $9.99 2 × $29.99 $150
10,000 15,000 600 108 86 × $9.99 22 × $29.99 $1,519
50,000 75,000 3,000 540 432 × $9.99 108 × $29.99 $7,553
100,000 150,000 6,000 1,080 864 × $9.99 216 × $29.99 $15,107
500,000 750,000 30,000 5,400 4,320 × $9.99 1,080 × $29.99 $75,535
1,000,000 1,500,000 60,000 10,800 8,640 × $9.99 2,160 × $29.99 $151,070

The calculation step by step:
Step 1 — Installs: MAU × 1.5 (industry-standard install-to-MAU ratio).
Step 2 — In trial: Installs × 4% (the CC+caps signup rate from the Pricing Study).
Step 3 — Convert: In-trial × 18% (the CC+caps trial-to-paid rate, on day 31).
Step 4 — Plus vs Premium split: 80/20 (Plus is the default; Premium is power-user upsell).
Step 5 — Monthly revenue: (Plus payers × $9.99) + (Premium payers × $29.99).
These numbers are the NEW conversions this month only. Existing paid users carry over and stack on top (see section C for the cumulative compound).

C. Why the paid base GROWS month over month — cumulative math

The table above shows one month's worth of new conversions. But existing paid users keep paying. With 90% month-over-month retention, the cumulative paid base grows over time.

Month after launch New paid customers / mo Retained from prior months Total paying customers Monthly revenue
Month 1 (launch)000$0
Month 2 (first cohort converts)90090$1,259
Month 39081 (90% of 90)170$2,378
Month 6270~450 retained~720$10,073
Month 9540~960 retained~1,500$20,985
Month 12 (peak burn)990~2,210 retained~3,200$44,768
Month 13 — Hybrid routing + caching go live
Month 151,260~4,240 retained~5,500$76,945
Month 181,800~8,200 retained~10,000$139,900
Month 242,600~13,400 retained~16,000$223,840

Retention assumption: 90% month-over-month for monthly subscribers (slightly more conservative than industry medians), 95% for annual prepay. Numbers aligned with Pricing Study Section D so the two tables tell the same story. Revenue uses $13.99 ARPU (80% Plus × $9.99 + 20% Premium × $29.99).

D. Recommended billing system to build

Primary stack

  • Stripe Subscriptions for the main flow. Already wired in code (`StripeSetting` model + Stripe SDK installed). Just needs live keys.
  • Stripe Customer Portal for self-service upgrade / downgrade / cancel. One link, hosted by Stripe.
  • Webhook handlers for: customer.subscription.created, invoice.paid, invoice.payment_failed, customer.subscription.deleted, customer.subscription.updated.
  • SendGrid for transactional emails: trial ending, payment receipt, payment failed, plan changed, cancellation confirmed.

GCC + Egypt payment add-ons

  • Tabby + Tamara — BNPL services. Big in KSA + UAE. Add for Premium annual ($299 in 4 splits). Treat any conversion lift as a beta assumption until provider / checkout data proves it.
  • Mada — Saudi national debit card scheme. Important for broad KSA acceptance; confirm provider support for the legal entity before KSA launch.
  • Fawry — key Egypt local-payment candidate. Adds 1-2 day settlement delay but improves reach for users who do not pay with international cards.
  • Apple Pay + Google Pay — important mobile-wallet options in GCC. Confirm actual share through Stripe / gateway reporting before presenting a percentage.

E. What happens when payment fails (dunning policy)

DayActionUser experience
Day 0 — failStripe attempts charge, failsIn-app banner: "Update payment to keep Plus." Email sent. Full app access continues.
Day 3Stripe retries automaticallyIf success, banner disappears. No interruption.
Day 5Second retry + reminder emailBanner gets red. Push notification.
Day 7Final retry + last warningBanner is sticky. Email + push: "Last 24 hours."
Day 8Lock paid AI featuresUser can update card to reactivate instantly.
Day 9–38 — graceOne-tap "Reactivate at $9.99" with original priceWin-back email weekly. Most reactivations happen days 1-3.
Day 39+Paid AI features stay locked unless user signs up again at current pricingFull data preserved.

Dunning recovery percentages are planning assumptions, not externally sourced facts. Replace with Stripe Billing / gateway recovery benchmarks after the first live cohort.

F. Annual prepay — why it changes everything

The economics

PlanMonthly billAnnual costAnnual NPV*
Plus monthly$9.99$119.88$72 (40% revenue drag)
Plus annual$8.25 effective$99 (17% off)$99 locked
Premium monthly$29.99$359.88$215 (40% revenue drag)
Premium annual$24.92 effective$299 (17% off)$299 locked

* NPV = expected revenue after applying a 90% month-over-month retention curve. Annual locks all 12 months upfront.

Why push annual aggressively

  • 2× the cash up front per user vs monthly (despite the 17% discount).
  • Cleaner retention curve — annual prepay removes month-to-month cancellation risk for the first year.
  • Cuts dunning/support load by 90% — only 1 charge per year instead of 12.
  • Bigger CAC tolerance — you can spend more on ads to acquire an annual user.
  • Stripe + Tabby together make it painless: pay $299 in one shot, or 4 × $74.75 via Tabby.

Target: 30% of paid base on annual by month 12. At our base case 3,000 paid by month 12, that's 900 annual at $99 = $89K committed revenue locked in.

G. Charging-side growth levers (after the free month)

  • Founders' price — first 1,000 paying customers locked at $7.99 Plus / $24.99 Premium FOREVER. Creates urgency and a loyal early base.
  • Refer a friend — both parties get one month free Plus. Goes viral in GCC family/friend networks.
  • Yearly upgrade prompt — month 4 in-app: "Switch to annual and save $20 + lock this price." Strongest conversion at month 4-6 once habit is formed.
  • Win-back campaign — 30 days after cancel: "Come back at 50% off for 3 months." Industry recovers 8-12% of churned users this way.
  • Family plan (post-Phase-2) — Premium for 4 family members at $39.99/mo. Average household in KSA is 5.5 people; styling sisters / wives / daughters together is a real use case.
  • Corporate / wedding-party plans — bulk Premium licenses for stylists, abaya designers, wedding planners. Niche but high ARPU ($500-2000/account).

H. Decisions Marianne needs to make on charging

DecisionMy recommendationReasoning
Auto-charge on day 30 or require explicit upgrade?Auto-chargeLikely higher conversion, but only if day-21 and day-28 notices plus one-tap cancel are implemented cleanly.
What does the user see if they don't convert?Paid AI features locked until they choose Plus or PremiumKeeps the app accessible without treating dummy seed data as pricing.
Annual discount %17% (rounded to $99 / $299)Clean pricing psychology and good cash flow; validate against MENA willingness-to-pay tests.
Offer Founders' price?YES for first 1,000Lock-in + word-of-mouth flywheel.
Failed-payment grace period30 daysProtects recoverable customers; expected save-rate is an internal planning assumption.
Refer-a-friend?YES from launchGCC family networks are huge. Single biggest virality lever.
BNPL (Tabby / Tamara) for annual?YES for Premium annual$299 in 4 splits unlocks more buyers without changing our take-home.
Fawry for Egypt?Phase 2 (after KSA + UAE launch)Worth the 2-week dev effort once Egypt cohort proves out.

Pricing detail — every unit cost we care about

Compact reference of the AI prices behind the dashboard. Source tags map to the References tab; Excel-derived values come from the local cost model and public pricing pages checked May 2026.

Important: the backend does not contain these per-call vendor dollar prices as code constants. The code tells us which models/features are active; public vendor pages tell us the unit costs; the dashboard combines those with proposed request caps.

Image generation (per image)

Model$ / imageNotes
Gemini 3 Pro Image Preview$0.134 (2K)Code default in avatar_gemini.py
Gemini 3 Pro Image Preview (4K)$0.240If higher-res variant is ever enabled
Gemini 3 Flash Image (Nano Banana, 1K)$0.067What the Excel cost model assumed
Gemini 3 Flash Image (0.5K)$0.04533% cheaper, mobile-screen ready, low-resolution preview candidate
Gemini 3 Flash Image (large 2K)$0.101Premium quality renders
Gemini 2.5 Flash Image$0.039Older, still usable for non-hero
FASHN AI (volume tier)~$0.049 list / $0.040 targetNot live in backend today; specialized try-on candidate. $0.040 should be treated as contracted-volume target
Imagen 4$0.040Pure image gen alternative
OpenAI GPT-Image-2Token-pricedImage input/output token pricing; derive per-render cost before modeling
Self-host IDM-VTON (A100, steady state)$0.010Only worth it above ~13K MAU
Replicate IDM-VTON$0.025Mid-scale bridge before self-hosting

LLM (per million tokens)

ModelInputOutput
Gemini 2.5 Flash-Lite$0.10$0.40
Gemini 2.5 Flash$0.30$2.50
OpenAI GPT-5.4 mini$0.75$4.50
Claude Haiku 4.5$1.00$5.00
Gemini 2.5 Pro$1.25$10.00
Gemini 3.1 Pro$2.00$12.00
OpenAI GPT-5.4$2.50$15.00
Claude Sonnet 4.6$3.00$15.00

Arabic-specific LLMs

ModelLicenseNotes
Falcon-H1 Arabic (3B / 7B / 34B)Open weightsTII Abu Dhabi, January 2026. 7B self-host on A10 is target.
Jais 2 (70B)Open weights, commercial OKG42 Inception + MBZUAI. Trained on 1.6T tokens.
AYA-ExpanseOpenStrong Egyptian + Khaleeji dialects.

Video generation (per 5-second clip)

Model$ / 5-secNotes
Veo 3.1 Lite (720p, with audio)$0.255 sec × $0.05/sec from Google pricing
Veo 3.1 Fast (720p, with audio)$0.505 sec × $0.10/sec from Google pricing
Veo 3.1 Fast (1080p, with audio)$0.605 sec × $0.12/sec from Google pricing
Workbook planning assumption$0.75Conservative placeholder carried in the Excel model
Veo 3.1 Standard (720p/1080p, with audio)$2.005 sec × $0.40/sec from Google pricing
Runway Gen-3 Turbo$0.50Alternative provider
Kling 3.0$0.40Cheapest alternative

Other AI costs

WorkloadUnit costNotes
Scan-and-add classification$0.0228 / scanFlash-Lite text + small image extract
Chatbot message$0.00185 / messageOne user message plus one AI reply, estimated at ~2K input + 500 output tokens
Daily routine LLM call$0.0014 / call~3K input + 200 output
Avatar creation (one-time)$0.20–0.402 image-gen calls. Flash base = $0.20, Pro base = $0.40.
Initial wardrobe scan (10 items)$0.5010 items × classify + tag
Background removal$0 (self-host)rembg / U2Net runs locally

Discount levers

LeverDiscount
Context caching (repeated prompts)up to 90%
Batch / Flex API mode50%
Volume Gemini (>1B tokens/mo)~15%
Try-on cache hit (S3+Redis)100% on cache hit

Excel source data embedded in this HTML

This tab copies the key assumptions from MyDressr_AI_CostModel_v4_Lean.xlsx so the dashboard can be reviewed without sending the workbook. Dashboard cards round the values for readability; this tab keeps the exact workbook figures where they matter.

Workbook provenance

ItemEmbedded value
Primary workbookMyDressr_AI_CostModel_v4_Lean.xlsx
Reference workbook also availableMyDressr_AI_CostModel.xlsx
Sheets used here2_Plan_Setup, 3_Prices, 4_Usage, 5_Today_Live, 6_Planned, 7_Scale
Active image model in workbookPro Image Preview
Resolved image price$0.134 / image
Dashboard rounding$1.476 becomes $1.48; $6.936 becomes $7.00; $19.906 becomes $19.91

Plan and code reality

AreaExcel note
Legacy Free seedDummy setup data only; not a pricing source
Plus / PremiumPrices modeled, but not active in code yet
Currently enforced quota fieldsmax_uploads, max_try_ons, max_shares
Dummy seed values10 uploads / 10 try-ons / 10 shares existed for setup, not launch economics
Known mismatchIgnore old dummy seed values for pricing. Final Plus and Premium caps must be approved before launch.

Launch request limits — cost model input

This replaces the old active-day behavior model. Cost should be calculated from the maximum number of AI requests a user can make, because those are the limits we can enforce in code. The old Free seed is dummy setup data; Plus and Premium are the commercial plan decisions.

Feature / request capPlusPremiumCost treatment
Try-on image renders100/mo300/moCurrent-code cost uses $0.134 per image until a cheaper path is implemented.
What-If outfit alternates10/mo30/moSame current image path as try-on unless separately implemented.
Avatar creation5/mo10/mo2 image calls per create, so $0.268/create on current-code pricing.
Stylist chatbot100 messages/mo300 messages/moA message means one user message plus one AI reply. Estimated $0.00185/message.
Scan-and-add classificationTBDTBDKeep separate until the final scan workflow and cost source are approved.
Premium video clips0TBDNot included in B1 current-code cost until real implementation and price are approved.

Historical Excel behavior cost from sheet 5_Today_Live

TierAI costRevenueNetMargin
Legacy unpaid bucket$1.476$0.00-$1.476-
Plus$6.936$9.99+$3.05430.6%
Premium$19.906$29.99+$10.08433.6%

Comparison only: this is the old workbook behavior model. Launch planning should use the request caps above. The workbook's old unpaid bucket is not a launch pricing recommendation.

Historical scale output from sheet 7_Scale

MAUAI costRevenueNet
1,000$2,282$1,399-$883
10,000$22,817$13,990-$8,827
100,000$228,170$139,900-$88,270
1,000,000$2,281,703$1,399,000-$882,703

This is the strongest warning from the workbook: scaling the current default mix multiplies the loss unless cost drops or paid share rises.

Planned-feature add-ons from sheet 6_Planned

FeatureLegacy unpaid unitsPlus unitsPremium unitsUnit pricePlus addPremium add
Daily routine image09090$0.134$12.06$12.06
Stylist chatbot21025$0.00185$0.0185$0.0463
Daily routine LLM03030$0.0014$0.042$0.042
Premium video (Veo)0520$0.75$3.75$15.00
Combined cost if all ship$1.480$22.807$47.054-$12.817 net-$17.064 net

Non-Excel market, legal, competitor, and vendor-price claims in this HTML are directional strategy inputs unless they have a public source or screenshot attached.

Plan limits — Plus and Premium request caps

This is the current launch proposal. It does not use active days and it does not use the old dummy Free seed. It uses explicit feature caps that can become backend limits: Plus is generous for a $9.99 plan, Premium is a true heavy-user tier, and every expensive AI action needs a visible meter.

100
Plus try-ons / month
Generous vs public benchmarks
300
Premium try-ons / month
Power-user cap
100
Plus chatbot messages
Message = user prompt + AI reply
300
Premium chatbot messages
Higher support ceiling

Recommended user-visible limits

FeaturePlus $9.99Premium $29.99Why
Try-on renders100 / mo300 / moPrimary value prop. This is generous, so it must be metered.
What-If outfit alternates10 / mo30 / moCreative exploration without opening infinite image generation.
Avatar creation / refresh5 / mo10 / moAvatar creation is expensive because each create uses two image calls.
AI stylist chat100 messages / mo300 messages / moA message means one user message plus one AI reply.
Scan-and-addTBDTBDKeep separate until the real scan workflow and source cost are approved.
Premium video0TBDDo not promise or price this until implementation and vendor cost are confirmed.

Meter rules to implement

ActionMeter impactNotes
Try-on render1 try-onDeduct from the monthly try-on cap.
What-If alternate1 What-IfSeparate cap so What-If cannot consume all try-ons silently.
Avatar create / refresh1 avatar createBackend cost is 2 image calls, so this needs its own cap.
AI stylist message1 messageOne user message plus one AI reply. Keep chat affordable and clear.
Scan-and-addTBDTrack separately if it remains outside paid AI credits.
Premium videoTBDOnly add after the real cost is known.

Important product rule: limits reset monthly, do not roll over, and every paid plan should show a visible meter.

Estimated current-code AI cost if users hit caps

PlanCurrent-code costRead this as
Plus~$16.27Too expensive for a broad free month unless cost controls are built.
Premium~$47.46Invite-only preview until Premium economics are proven.

This table intentionally does not mention cheaper routing. It uses the current expensive image path so leadership sees the real risk before launch.

My recommendation

  • Your Plus proposal is fair to users but expensive for us today. 100 try-ons at $9.99 is competitive, but the current-code cost is above the subscription price if a user maxes out.
  • Premium should be paid or invite-only during launch. 300 try-ons is a strong heavy-user promise, but it is not safe as a broad free month on current pricing.
  • Do not call anything unlimited. Use concrete limits: 100/300 try-ons, 10/30 What-If, 5/10 avatars, 100/300 chatbot messages.
  • Add paid top-ups later. After launch, sell extra try-on or AI packs only after the real unit cost is measured.

References and number map

This tab is the audit trail for the dashboard. E = Excel workbook, C = backend code, P = public vendor pricing, M = market source, K = competitor source, L = legal / payment source. Anything marked "assumption" should not be presented as fact until measured or screenshot-backed.

Excel and code sources

IDSourceNumbers supported
R-E1Local workbook: MyDressr_AI_CostModel_v4_Lean.xlsxPlan setup, vendor prices, usage inputs, live-feature costs, planned-feature add-ons, scale output.
R-E2Local workbook: MyDressr_AI_CostModel.xlsxOlder reference model, build-vs-buy notes, original pricing sheet.
R-C1Backend audit: avatar_gemini.pyProduction image default uses Gemini Pro Image Preview unless env overrides it.
R-C2Backend audit: views_chat.py, views_chat_outfit.pyChatbot path uses Gemini 2.5 Pro today.
R-C3Backend audit: subscriptions / seeded plansOld Free seed values were dummy setup data only; Plus / Premium prices are modeled but not fully live.
R-C4Backend audit: source-code pricing statusNo live credit ledger, no FASHN routing, no per-call cost table, and no Plus/Premium credit decrementing found. Dashboard dollar costs are vendor-price assumptions until implemented.

Confidence legend

StatusMeaning
VerifiedExact local workbook, code, or public source supports the number.
DirectionalUseful market estimate, but should be cross-checked before investor use.
AssumptionInternal model input, beta target, or observed competitor detail that still needs proof.

Public AI pricing references

IDSourceNumbers supportedStatus
R-P1Google Gemini API pricingGemini Pro Image $0.134 / image, $0.24 4K, Flash Image $0.045 / $0.067 / $0.101, Gemini 2.5 Pro $1.25 / $10, Imagen 4, and Veo 3.1 per-second pricing.Verified
R-P2FASHN API pricing$0.075 on-demand credit, $0.0488 Tier III top-up credit, VTO v1.6 = 1 credit. $0.040 remains a negotiated target.Verified list price
R-P3OpenAI API pricingGPT-5.4 mini $0.75 / $4.50, GPT-5.4 $2.50 / $15, GPT-Image-2 token pricing.Verified
R-P4Anthropic Claude pricingClaude Haiku 4.5 $1 / $5, Claude Sonnet 4.6 $3 / $15, cache and batch discounts.Verified
R-P5Internal infrastructure estimateSelf-host IDM-VTON $0.01/image target, Replicate bridge, 50K-200K MAU own-model threshold.Assumption

Market, competitor, payment, and legal references

IDSourceNumbers / claims supportedStatus
R-M1Shopify / market estimateVirtual fitting room market: $8.27B in 2025 to $30.41B in 2034 at 17.7% CAGR.Directional
R-M2Market Size & TrendsAI digital wardrobe market: $1.2B in 2024 to $5.53B in 2033 at 18.5% CAGR.Directional
R-M3DataReportal KSA, UAE, EgyptKSA and UAE 99% internet penetration; Egypt 82.7%; late-2025 mobile connection counts.Verified
R-K1Fitted App Store listingPublic Fitted app presence and in-app purchase metadata. Exact included AI-credit allowance still needs screenshot backup.Partial
R-K2GlowFit pricing pagePublic benchmark for 100 monthly credits at a $9.99 AI try-on subscription and 1 credit per HD try-on.Verified public benchmark
R-L1Stripe global availabilityStripe supports UAE directly; KSA / Egypt require local PSP, Stripe Atlas, Paystack/partner, or other structure.Verified
R-L2mada, Fawrymada as KSA national payment system; Fawry as Egypt payment candidate.Verified
R-L3SDAIA transfer regulation note, UAE data protection lawsKSA / UAE personal data protection and cross-border transfer caution. Counsel still required before launch.Verified caution

Numbers still treated as assumptions

Number / claimHow to prove it
50% try-on cache hit rateShip cache telemetry and report weekly hit rate by avatar x garment x model x resolution.
Trial request caps, Plus credits, Premium credits, chatbot caps, and video capsThese are product-limit decisions, not external facts. They are informed by R-K1/R-K2 competitor patterns and R-P1/R-P2 vendor costs; keep them in code as hard quotas and revise after beta telemetry.
Trial conversion, dunning recovery, win-back percentagesReplace with live Stripe / gateway cohort data after the first 60-90 days.
Fitted 30 AI credits/month and per-feature credit rulesAttach dated App Store screenshots or in-app screen captures.
$0.040 FASHN targetGet signed quote or email confirmation from FASHN for volume pricing.
Self-host $0.01/image and 50K-200K MAU thresholdRun an actual GPU benchmark with chosen VTO model, batch size, utilization, and media pipeline.
GCC household apparel spend 2-3x global average; "3 of 4" MENA fashion marketsReplace with Euromonitor / Statista / government commerce source before investor deck use.
BNPL conversion lift and mobile-wallet checkout shareUse Tabby / Tamara / Stripe / PSP merchant analytics or run A/B test.
$8.27B
Global virtual fitting room market (2025) → $30.4B by 2034 at 17.7% CAGR [R-M1]
$1.2B
AI digital wardrobe market (2024) → $5.53B by 2033 at 18.5% CAGR [R-M2]
3 of 4
Launch-zone thesis: KSA, UAE, Egypt cover the largest MENA opportunity cluster [Assumption]

Why GCC + Egypt first is the right call

  • Mobile-first adoption: DataReportal reports 99% internet penetration in UAE and KSA, and 82.7% in Egypt; all three markets have very high mobile connection counts. See R-M3.
  • Fashion e-commerce maturity: Namshi, Ounass, Sivvi, Noon prove users are used to paying for fashion online; the open question is who makes AI styling feel native to Arabic and modest-fashion workflows.
  • Modest fashion gap: Abaya, jalabiya, hijab styling, occasion dressing for weddings/Eid/Ramadan — few global wardrobe apps visibly handle these workflows well. This is our wedge to validate.
  • High disposable income on fashion: GCC fashion spend advantage is a thesis, not yet sourced in this HTML. Egypt has the volume and youth-skewed consumer base, but spend multiples need an external commerce source before investor use.
  • Government tailwinds: Saudi Vision 2030 and UAE AI Strategy 2031 favor local AI products. Falcon-H1 Arabic (TII Abu Dhabi, Jan 2026) and Jais 2 70B (G42 Inception) are sovereign Arabic LLMs we can use to differentiate.

Direct + indirect competitors

AppRegionFreePaidTry-on?
WheringUK / GlobalYesOptional supporterOutfit remix only
AclosetKorea / Global100 items$3.99 / $9.99Color analysis
CladwellUS1 outfit/day$7.99 / $49 (human)No
Indyx / StylebookUSTrial$3.99 one-timeNo
Glance AIGlobalLimitedSubscriptionYes (image-based)
Fitted / Fitted+Global App Store listingUnlimited closet, rule-based gen$9.99/mo or $59.99/yr publicly listedYes — App Store listing + in-app credit observations
Namshi / OunassGCCFreeCommerceNo AI styling
ModanisaTurkey / MENAFreeCommerceNo AI styling
MyDressrGCC + EgyptPlus 100 try-ons / Premium 300 try-ons proposed$9.99 / $29.99 (planned)Yes — full avatar VTO + trips

Fitted is the closest direct competitor found in the scan. Public App Store prices are source-backed by R-K1; exact credit allowances and per-feature credit rules should stay marked as competitor-observed assumptions until screenshots are attached. The wedge against everyone else: avatar-based VTO + trip planning + Arabic-native modest fashion.

Fitted competitive deep-dive — they solved the AI cost problem with credits

Fitted is the most relevant competitor we've found. Public App Store metadata proves the paid SKU exists; the credit mechanics below are in-app observations and need screenshot backup before investor use. The useful lesson is the same: a credit system caps the actually-expensive AI calls.

Fitted non-AI tier (the bait)

  • Unlimited Uploads — wardrobe items, no cap
  • Unlimited Fits — outfits created from your closet
  • FittedSocial — social feed of friends' looks
  • Random Outfit Generator — rule-based, not AI (almost-free cost)
  • Neckworth — closet net-worth tracker (parses prices)

Notice what's missing: every AI-driven feature is blocked. The free tier is a smart wardrobe + social, not an AI stylist.

Fitted+ (the AI tier — credit-gated)

  • Smart Outfit Generator — AI vs random (no credit)
  • 30 AI credits/month — competitor-observed allowance; screenshot needed
  • Widgets — home screen daily outfit (no credit)
  • Enhance Image* — 1 credit per use
  • Virtual Try On* — 1 credit per use
  • AskFitted* — chat with AI stylist, observed as credit-gated
  • Import from Fit Pic* — 1 credit per photo

* Each starred feature is observed as credit-gated. Treat the exact 1-credit rule and 30-credit allowance as screenshot-required assumptions.

Their pricing model (public App Store prices, USD-equivalent)

PlanEffective priceAI creditsNotes
Weekly$2.49/wk (~$10.79/mo)Observed, not publicPublic App Store IAP price. Credits need screenshot proof.
Monthly$9.99/moObserved, not publicPublic App Store IAP price.
Yearly$59.99/yr (~$5.00/mo)Observed, not publicPublic App Store IAP price. A $38.99 yearly variant is also listed.
AI credit packs$1.99 / $4.99 / $19.995 / 20 / 100 creditsPublic App Store IAP metadata.
Free trial$00Toggle observed in app flow. Length not publicly visible.

Source: R-K1. Public App Store prices are usable; included monthly AI credits still need dated screenshots.

What 1 Fitted credit actually buys — per-credit AI cost breakdown

Each credit on Fitted+ is consumed by one expensive AI call. Below is the estimated AI cost Fitted incurs per credit type, plus the realistic monthly usage pattern.

Credit-gated feature AI workload Est. cost / use Typical uses / mo Cost / mo
Virtual Try On 1 image gen (FASHN volume tier) $0.040 12 $0.48
Enhance Image 1 image-to-image upscale $0.067 3 $0.20
AskFitted (chat) 1 LLM message exchange (Gemini Flash / Haiku) $0.005 5 $0.03
Import from Fit Pic Garment segmentation + classify (vision LLM) $0.080 4 $0.32
Total typical user (~24 of 30 credits used) 24 ≈ $1.03
Cap-maxing user (all 30 credits on most expensive features) 30 $2.40

Why their cost is much lower than an uncapped model: Fitted's observed credit cap appears to bound the AI spend. Even a power user would be capped around ~$2.40/month of AI in this modeled scenario. MyDressr's current Plus preview is now modeled at ~$16.27 on the current-code image path, which is why cost controls matter before a broad free month.

Their full cost economics

Component$ / Fitted+ user / mo
AI cost (typical 24 credits used)$1.03
Server, storage, bandwidth, support$0.50
Payment processor 3%$0.15
TOTAL cost per Fitted+ user$1.68
Revenue (yearly plan $59.99/yr)$5.00
Net per user / month+$3.32 (66% margin)

Modeled margin, not public Fitted financial data. The strategic lesson is the credit cap, not the exact margin.

What we should learn from them — actions for MyDressr

  • Add a meter system to MyDressr. Every expensive call deducts from a visible cap: Plus gets 100 try-ons, 5 avatars, 10 What-If images, and 100 chatbot messages; Premium gets 300 / 10 / 30 / 300. Solves runaway AI cost.
  • Localize pricing for the Egypt cohort. Public Fitted yearly pricing around $5 / month equivalent makes our planned $9.99 look much higher at face value. Either lower the Egypt SKU or split USD vs local-currency SKUs after validating willingness-to-pay.
  • Lead with yearly, not monthly. Their "MOST POPULAR" yearly card is the default selection. Better cash flow + lower churn + lock the user before competitors poach.
  • Build "Import from Email" + "Fit Pic extraction". Both reduce friction to populate the closet. We currently force manual upload only. Both are 1-credit features on Fitted, so they're proven willing-to-pay AI features.
  • Reposition unpaid access. Keep cheap closet and outfit organization outside paid AI, but move expensive AI calls behind Plus/Premium meters. Aligns cost with revenue.
  • Match the trial offering. Fitted has a one-tap free trial toggle. Our 30-day free month is more generous; lean into "month, not week" as a differentiator.

Spend comparison: our Plus preview vs their typical Fitted+ user

Same time window (1 month). MyDressr is now modeled by hard request limits, not active days. The difference is how each app gates expensive calls.

Cost driver MyDressr Plus preview ($16.27) Fitted+ user ($1.03) Why the gap
Try-ons 100 × $0.134 = $13.40 ~12 × $0.040 = $0.48 We use Pro Image Preview in current code. They appear to use a cheaper bounded credit system.
What-If / outfit alternates 10 × $0.134 = $1.34 0 (Smart Outfit Gen is free, no credit) Their rule-based generator is essentially free; ours hits the image model but is now request-capped.
Chat 100 × $0.00185 = $0.19 ~5 × $0.005 = $0.03 Their AskFitted runs cheaper LLM (Flash/Haiku).
Avatar / Enhance / Import 5 avatars × $0.268 = $1.34 ~3 × $0.067 + ~4 × $0.080 = $0.52 They charge a credit for each; we don't gate at all.
Total AI / preview month $16.27 $1.03 ~15.8× spend difference

The takeaway: hard caps make the risk visible, but the current-code image path is still too expensive for a broad free Plus month. Cheaper routing belongs in the Cost Now vs New tab and must be implemented before open-scale offers.

Side-by-side: Fitted vs MyDressr current plan

DimensionFitted+MyDressr (Plus, current plan)Verdict
Yearly price$59.99 (~$5.00/mo); lower yearly variant also listed~$120 (12 × $9.99, no Egypt SKU)We're roughly 2× more expensive
AI cost containmentCredit system (30/mo cap)Soft quota fields + global capThey're cleaner
Free trialToggle (length unclear)30-day full monthOurs is more generous
Virtual try-on1 credit per try (counts toward 30)Full avatar VTO, 2-step GeminiOurs is technically richer
Trip planningNot visible in screenshotsBuilt-in trip outfit plannerUnique to us
Arabic / modest fashionNot visible (Egypt-localized but no Arabic UI?)Planned: Falcon-H1 / JaisStrategic wedge
Closet populationEmail import + photo extract + manualManual upload onlyThey're easier to onboard
Social feedFittedSocial built-inPlanned, not builtGap
Random outfit generatorUnpaid, no AI (cheap)Not builtEasy add for unpaid onboarding

Strong & weak points — honest read

Based on the May 2026 code audit (90 fixes shipped, 17 client-reported issues) and the AI cost model in your Desktop folder.

STRENGTHS

  • Avatar pipeline is technically advanced — 2-step Gemini (text-only body → face injection), BMI-aware body shape, OpenCV face crop, GFPGAN sharpening, base-avatar cache with MD5 key. None of the competitors have this depth.
  • Trip-based outfit planning with weather + calendar — unique angle vs Whering/Acloset.
  • Stripe + 3 tiers + admin panel + 136 Swagger endpoints — backend is production-shaped.
  • Real performance work done — banner 44MB → 1.4MB (96% smaller), Redis cache layer, lazy loading, no jQuery dupes.
  • Apple Sign-In with proper JWT/JWKS verification — most MENA apps still skip this.

WEAKNESSES

  • Unit economics break if users hit the proposed paid caps on the current image path. Plus can cost about $16.27 against $9.99 revenue, and Premium can cost about $47.46 against $29.99 revenue before video. Cost controls, cache, and cheaper try-on routing are launch requirements, not nice-to-have optimizations.
  • Heavy single-vendor dependency on Gemini (5/8 cost drivers). Geo-restricted in some GCC corridors — needed proxy workaround.
  • No Arabic AI yet. ChatSession + ChatMessage tables exist but no Gemini chat wiring, no dialect handling.
  • Daily routine / What-If outfit engine + Veo video + affiliate checkout are still on the roadmap — pitch promises more than MVP delivers.
  • Subscription billing not connected to Stripe (still test keys); push notifications need FCM key; forgot-password depends on test SMTP.
  • No Hijab / abaya / jalabiya / modest-fashion specific training in any of the AI models we use.

OPPORTUNITIES

  • Modest-fashion AI styling: untouched category, big GCC TAM. Could be the "Whering for the GCC."
  • Sovereign Arabic LLMs (Falcon-H1, Jais 2) are free for non-commercial and cheap to fine-tune. Marketing angle: "made for Arabic."
  • Affiliate revenue layer — Namshi, Sivvi, Modanisa, SHEIN all have affiliate programs paying 5–12%. Already modeled in our DB.
  • B2B white-label for retailers (Ounass, Namshi). Same VTO engine, their catalog, their app.
  • Ramadan/Eid/Wedding-season "occasion stylist" — recurring revenue spike windows.

THREATS

  • Google could raise Gemini prices or rate-limit the current API key. We have no fallback today.
  • Namshi/Noon/Ounass could bolt AI try-on onto their existing user base in 6 months and out-distribute us.
  • SHEIN/Temu are testing generative VTO globally — if they launch in MENA, free users won't pay for ours.
  • Regulatory: KSA PDPL + UAE PDPL — face/body photos require explicit consent, retention rules, and cross-border transfer review. Local-region storage may be needed by policy or country setup, but must be confirmed by counsel.
  • If launch is delayed past Ramadan 2027, we miss the highest fashion-spend window of the year.

NEW features I'd push as team leader

FeatureImpactCostEffort
Arabic AI Stylist (Jais 2 / Falcon-H1)
Dialect-aware chat: Khaleeji, Egyptian, MSA
HighLow2–3 wks
Occasion Mode: Wedding / Eid / Ramadan / Office
Curated outfit packs tied to GCC calendar
HighLow2 wks
Modest Fashion Library
Abaya, hijab styling guide, jalabiya, sportswear-modest
HighMed3 wks
Affiliate "Shop the Look" with Namshi + Sivvi + SHEIN
Revenue stream that doesn't hit subscribers
HighLow4 wks
Group / Family wardrobes
Style siblings, kids, partners in one account
MedLow2 wks
WhatsApp bot for outfit-of-the-day
GCC's #1 messaging channel, removes friction
HighMed3 wks
Virtual closet sharing → social feed
Friends like / save / remix each other's looks
MedLow3 wks
"Will it fit my body" sizing AI
BMI + body shape × brand size charts
MedMed4 wks

MVP improvements (the cleanups)

ImprovementWhyEffort
Switch try-on default to FASHN volume tier (~$0.049 list vs $0.067)~27% saving before any contracted discount, same UX target1 wk
Lower preview-image resolution where acceptableMeaningful image-cost saving; mobile screens often don't need 1K2 days
Aggressive Redis cache on avatar×garment~50% hit rate easily; cache key already exists for base avatars1 wk
Hybrid LLM router: GPT-5.4 mini for chat, Gemini Pro only for hero$0.75/$4.50 vs $1.25/$10 per 1M tokens1 wk
Background tasks: ensure Celery worker + Beat actually run in prodIssue #13 from Marianne — currently fails silently1 day
Stripe Checkout flow + webhook (real keys)Currently can't take a single payment3 days
FCM push + SendGrid SMTPAccount recovery + retention3 days
Add local consent flow for biometric (face) dataKSA / UAE PDPL compliance before launch1 wk
Rate limit + abuse detection on AI endpointsOne bad actor could rack up $1K in Gemini in hours3 days
App Store / Play Store ASO in ArabicHalf the addressable market searches in Arabic1 wk

Cost per user — Now vs New Approach

"Now" = current-code cost if Plus or Premium users hit the proposed monthly caps. The default is Pro Image Preview because production code falls back to gemini-3-pro-image-preview. "New" = cheaper try-on routing, 50% cache at the slider default, Flash for What-If, and Pro retained for avatar creation.

Routing explanation: this is where cheaper AI selection belongs. It means normal try-ons go to the lowest-cost acceptable try-on engine, hero/avatar renders stay on the best image model, What-If uses a cheaper image model, and chat uses a low-cost LLM. The Charging Plan tab stays on current-code cost only.

Per-user monthly cost by paid plan

Total monthly P&L at your slider settings

Breakdown table

TierCost/user NOWCost/user NEWSavingRevenueNet NOWNet NEW

Cheaper / alternative AI options to Gemini

Today's baseline: production code (avatar_gemini.py line 33) defaults to Gemini 3 Pro Image Preview at $0.134/image. That's the number to beat. Every row in the table below shows how much each alternative saves vs that baseline. LLM chat today uses Gemini 2.5 Pro for stylist messages; cheaper alternatives are shown in the right table.

Image generation / Try-on per render — savings vs today (Pro Image Preview)

Model$ / imageSaving vs $0.134Use case
Gemini 3 Pro Image Preview (1K-2K) — TODAY$0.134Code default in avatar_gemini.py
Gemini 3 Pro Image Preview (4K)$0.240+79%Hero / portfolio shots only
OpenAI GPT-Image-2Token-pricedn/aDo not model as a flat per-image cost until token usage is benchmarked
Gemini 3 Flash Image (Nano Banana, 1K)$0.067−50%Drop-in swap; what original cost model assumed
Gemini 3 Flash Image (0.5K)$0.045−66%Low-resolution mobile previews; no quality loss on phone screens
FASHN AI (volume tier)~$0.049 list / $0.040 target−63% to −70%Specialized VTO; recommended for high-volume try-on after vendor quote
Imagen 4$0.040−70%Pure image gen alternative
Gemini 2.5 Flash Image$0.039−71%Older but still usable for non-hero shots
Replicate IDM-VTON (no self-host)$0.025−81%Mid-scale bridge before self-hosting
Self-hosted IDM-VTON on A100 (steady state)$0.010−93%Only profitable above ~6.4K MAU at $0.134 baseline

Single biggest quick saving: moving the active image unit from Pro to Flash 1K drops the proposed Plus cap cost from $16.27 to about $8.23. Deeper savings require the routing model in the Cost Now vs New tab.

LLM (chat, scan-and-add, daily routine) per 1M tokens

Model$ in$ outUse case
Gemini 2.5 Flash-Lite$0.10$0.40Classification — keep, cheapest
Gemini 2.5 Flash$0.30$2.50Helper LLM (already in wardrobe/helper.py)
OpenAI GPT-5.4 mini$0.75$4.50Better quality for similar money, easy A/B
Claude Haiku 4.5$1.00$5.00Best reasoning at this tier; great Arabic
Gemini 2.5 Pro — TODAY's chatbot$1.25$10.00views_chat.py + views_chat_outfit.py
OpenAI GPT-5.4$2.50$15.00Alternative flagship
Claude Sonnet 4.6$3.00$15.00Premium fallback for hard reasoning

The chatbot path is currently overspecced — Gemini 2.5 Pro is being used for outfit-suggestion chat where Flash or Haiku would do the same job at 1/4 the cost. Switching views_chat.py from Pro to Haiku 4.5 saves ~60% on chatbot spend with arguably better Arabic.

Arabic-specific options (the differentiator)

ModelFromLicenseWhy it matters for MyDressr
Jais 2 (70B)G42 Inception + MBZUAI (Abu Dhabi)Open weights, commercial OKTrained on 1.6T tokens with strong Arabic. Run on Azure or self-host. Marketing angle: "Built for the Gulf."
Falcon-H1 Arabic (3B/7B/34B)TII Abu Dhabi (Jan 2026)OpenHybrid Mamba-Transformer, 3B is small enough to self-host cheaply.
AYA-23 / AYA-ExpanseCohere for AIOpenStrong on Arabic dialects including Egyptian and Khaleeji.
Claude Sonnet 4.6 (premium)AnthropicAPIBest non-Arabic-native quality at Arabic; good fallback for nuanced styling advice.

Recommendation: use Falcon-H1 7B self-hosted for high-volume Arabic chat (near-zero variable cost above the GPU), Claude Haiku 4.5 as paid fallback for hard reasoning, Gemini Flash-Lite for classification.

Recommended routing (baseline = Pro Image Preview $0.134)

WorkloadTodayNewSaving
Avatar (hero)Pro Image Preview 1K @ $0.134Keep Pro for the hero shot0% — keep quality
Try-on (volume)Pro Image Preview 1K @ $0.134FASHN AI volume target + 50% cache~82-85%
What-If alternatesPro Image Preview 1K @ $0.134Imagen 4 @ $0.04 or Flash 1K @ $0.067~70%
Daily routine imagesPro Image Preview 1K @ $0.134Gemini 2.5 Flash Image @ $0.039~71%
Low-resolution previews1024px @ $0.134512px @ $0.045~66%
Chatbot (Arabic)Gemini 2.5 Pro $1.25/$10Falcon-H1 7B self-host / Jais~95%
Chatbot (English)Gemini 2.5 Pro $1.25/$10Claude Haiku 4.5 $1/$5 or GPT-5.4 mini~55%
Scan-and-addGemini Flash-LiteKeep Flash-Lite (already cheapest)0%
Background removalGemini callSelf-host rembg / U2Net~100%

Aggregate effect on proposed Plus monthly cap cost: drops from $16.27 on the current Pro-heavy path to about $4.64 with FASHN/list-routed try-ons, Flash What-If, Pro avatars, chatbot meter, and 50% cache. Premium drops from about $47.46 to about $12.60 before video.

Build-your-own-model: when does it make sense?

  • Year-1 cost to build: ~$572K (one-time $140K + annual $432K) — 2 ML engineers, GPU cluster, 50K labeled garment pairs, MLOps stack.
  • Cost per image self-hosted: ~$0.01 vs Pro Image Preview today $0.134 → savings $0.124 per image.
  • Break-even at Pro baseline: ~6,400 MAU (≈350K images / month).
  • Break-even at Flash baseline: ~12,700 MAU (~700K images / month). Switching to Flash first pushes the build-vs-buy break-even further out — that's actually a feature, it lets you delay the ML hire.
  • Do NOT build below 50K MAU regardless. Use Pro/Flash + FASHN + cache. The own-model cost is wasted runway before you have enough volume to amortize.
  • Build at 50K → 200K MAU as a fine-tune on open VTO (IDM-VTON) using MENA-specific data (modest fashion, body diversity, skin tones).
  • Cutover at 200K MAU. Default try-on goes to your own model. Gemini stays as fallback for the long tail.

From 1K to 1M: the viral scaling plan

If the app pops — say a Saudi or Egyptian influencer puts us on TikTok — this is what each stage looks like and what we need ready before that happens.

Stage map

StageMAUFocusAI strategyInfraTeamMonthly AI cost (new)
0. Pilot0–1KHardening, GCC closed betaPure Gemini + FASHN1 EC2 t3.large + Redis + RDS MySQLYou + Marianne + 1 dev$1.0K
1. Launch1K–10KApp Store + ASO in Arabic; Ramadan window+ Caching live, FASHN volume tier, GPT-5.4 mini chat+ CDN (CloudFront), S3, Sentry+ Flutter dev, ASO/marketing$10K
2. Growth10K–50KInfluencer + affiliate (Namshi, Sivvi)+ Arabic LLM (Falcon-H1 7B self-host)+ ECS / Kubernetes, autoscale workers+ ML/data engineer, support$50K
3. Scale50K–200KUAE / Egypt expansion + B2B pilots+ Fine-tune IDM-VTON on MENA data+ Multi-region (Bahrain + Egypt edge), read replicas+ Senior ML, DevOps, BD$200K
4. Viral200K–1MMENA-wide rollout, Morocco / Jordan+ Cutover to owned VTO model for default; Gemini = fallback+ Owned GPU cluster (A100s) for inference+ ML team of 3, CFO, country managers$500K

Total monthly AI cost across MAU scale

Gross margin path (with the new approach)

Margin turns positive around 25K MAU once paid mix exceeds 12% and cache hit rate hits 50%.

Things to have ready before the viral moment

  • Cost controls in-app: daily AI budget per user, soft caps that show when the user has reached today's AI limit, queue-and-retry for hero shots.
  • Autoscaling Celery workers on AWS ECS or Fly.io so a 100× spike doesn't crash try-on queue.
  • Multi-key Gemini rotation (Google rate-limits per API key). 5–10 keys behind a router.
  • FASHN, OpenAI, Anthropic accounts pre-paid with $5K float each — vendor switch must be instant.
  • S3 + CloudFront for all media so MySQL doesn't get hammered by image URL generation.
  • App Store TestFlight + Play Console internal track live and tested 2 weeks before launch.
  • PDPL consent + face-image regional storage review (confirm KSA / UAE / Egypt requirements before production launch).
  • Crisis communication plan — what we tell users if Gemini goes down for 4 hours.

The 90-day action plan I'd run as team leader

Three sprints, each two weeks of build + one week of test/review. Goal: get unit economics positive before public launch and ship Arabic + modest-fashion before Ramadan 2027.

Sprint 1 — Days 1–30

Fix the money leak

  • Add hybrid routing layer (Gemini Pro / FASHN / GPT-5.4 mini)
  • Wire Redis cache for try-on (avatar × garment key)
  • Drop free tier to 512px
  • Stripe live keys + Checkout flow + webhook
  • FCM push + SendGrid SMTP wired
  • Rate limit on /api/avatar, /api/tryon, /api/chat
  • Per-user daily AI budget enforcement

Exit gate: Cost-per-Plus-user under $8/mo at 1K MAU.

Sprint 2 — Days 31–60

Build the MENA wedge

  • Arabic Stylist chat — Falcon-H1 7B self-hosted on a single A10 GPU
  • Modest Fashion library + tags (abaya, hijab, jalabiya, modest sport)
  • Occasion Mode: Wedding / Eid / Ramadan / Office presets
  • Affiliate links wired to Namshi + Sivvi + SHEIN
  • App Store / Play Store Arabic ASO + screenshots
  • KSA + UAE PDPL consent flow on signup + face capture

Exit gate: Closed beta with 200 GCC users, NPS > 30.

Sprint 3 — Days 61–90

Launch & learn

  • Public launch in KSA + UAE first, Egypt 2 weeks later
  • WhatsApp outfit-of-the-day bot (Twilio or Meta Cloud API)
  • Group / family wardrobes
  • Daily routine engine activated for Plus + Premium
  • Influencer campaign — 3 micro-influencers per market
  • Multi-key Gemini rotation + FASHN failover live in prod
  • Weekly cohort review of cost-per-MAU + retention

Exit gate: 5K paid MAU, monthly burn under $5K, ready to brief investors.