eatcookjoy.com/sf — the EatCookJoy operating model, written for San Francisco. A full-stack feasibility study, regulatory map, 100-chef onboarding playbook and household acquisition strategy for the 5 km radius around Union Square. Same brand voice as eatcookjoy.com — cooked from scratch, with joy — applied to the densest food wallet on the West Coast, benchmarked against Shef, Take a Chef, Yhangry, Foodnome and the premium Bay-Area private-chef agencies.
A 5 km radius drawn around Union Square contains roughly 520,000 residents in 245,000 households, a population older, wealthier and more food-curious than any other West-Coast catchment of similar size. This is where Year-1 supply and demand both live.
Within 5 km of Union Square; ranked by HH-income × density × delivery feasibility for a chef-comes-to-home model.
The US personal-chef market is large, fragmented and structurally tailwind-positive. National platforms (Shef, Take a Chef, Yhangry) treat SF as one of many; agencies (Big City Chefs, Montclair Chef, Private Chefs Inc) serve only the $250k+ UHNW slice. The mid-market — the "Tuesday-habit" $1,000–$1,800 booking — is wide open.
| Layer | Definition | Value | % of TAM |
|---|---|---|---|
| TAM — US Personal Chef Services | All in-home meal preparation, hourly & per-event | $15.9B | 100.0% |
| TAM 2033 forecast | CAGR 6.7% · market.us / Grand View | $30.4B | 191.2% |
| SAM — SF MSA capture | 4.7M people · HH-income weighted | $418M | 2.63% |
| SAM — 5 km bullseye | 520k pop · 78k $200k+ HHs | $94.8M | 0.60% |
| SOM Y3 (realistic) | 8% bullseye penetration | $7.6M | 0.048% |
| SOM Y5 (stretch) | incl. corporate & ECJ-UAE cross-sell | $48.6M | 0.305% |
| Capital required to capture SOM Y3 | Pre-seed + Series A | $1.8M + $7M | — |
SF has the densest private-chef supply in the US. But supply is split between a commodity-delivery layer (Shef, sub-$30/dish), a premium-agency layer ($200–$500/person event chefs), and a long tail of one-person operators. The gap — a branded, vetted, subscription-friendly $1,000–$1,800 booking — is exactly where Take a Chef and Yhangry are growing fastest.
| Player | Model | Bay-Area Supply | Client Price | Chef Take | Strategic Gap We Exploit |
|---|---|---|---|---|---|
| Shef | Delivery — MEHKO & commercial kitchens | Hundreds | $7–$25 / dish | ~80% | No in-home cooking; not an experience |
| Take a Chef | Marketplace, in-home events | 372 chefs | $113–$137 /pp | ~82% | Spanish HQ · no SF brand · slow onboarding |
| Yhangry | Marketplace, in-home, US expansion | ~40 chefs | $40–$60 / hr | 80% (20% comm.) | Still UK-led · no SF community team |
| MiumMium | All-inclusive global marketplace | Listed | ~$50 + tip | Margin retained | Generic positioning · no SF focus |
| Foodnome | MEHKO marketplace | Limited | $10–$25 / dish | ~86% | SF County not opted-in to MEHKO |
| Big City Chefs | Boutique agency · 20+ yrs | Curated panel | $180–$350 /pp | ~70% | Premium-only · no tech / subscription |
| Montclair Chef | UHNW long-term placement | Few · vetted | $140k–$300k /yr | salary | Not gig · long lead time |
| Private Chefs Inc | Estate-staffing agency | Curated | $180k–$300k /yr | salary | Same · long-term placement only |
| Naked Kitchen SF | Venue + chef bundle | In-house | $50–$150 /pp | salary | Venue-bound · not at-home |
| SF Private Chefs | Boutique dinner-party agency | ~20 chefs | $1,500+ event | ~75% | Premium-only · manual booking |
| Sources: company websites · TechCrunch · Sifted · Inc · KQED · Forrager · MEHKO.org · May 2026 | |||||
We are not Big City Chefs. We are the recurring weekly meal-prep + monthly dinner-party brand at $99–$249/week subscription. Same brand voice as eatcookjoy-uae.com.
Shef owns delivery. We never compete on that axis. Every booking is a chef arriving at the customer's kitchen with groceries, cooking, plating, cleaning.
Chefs vetted in-person. Customers reached door-to-door, lobby-board, school WhatsApp groups. National players can't beat us on density.
SF's 35% Asian population, 16% Hispanic, large Persian/Indian/Filipino communities = supply of immigrant-chef talent Shef-style platforms already prove monetisable.
California's AB 626 (the Microenterprise Home Kitchen Operations Act) allows home cooks to legally sell cooked meals from their own kitchens — but only in counties that have opted in. San Francisco County has not. This is not a blocker. It is a moat.
| Model | Legal Requirement | SF County (5km core) | San Mateo | Alameda / Berkeley |
|---|---|---|---|---|
| Chef-comes-to-home (in-home cook) | Food Handler Card · personal insurance · LLC | ✅ Legal today | ✅ Legal | ✅ Legal |
| Catering / off-site cooking | Commercial kitchen + Cottage Food permit | ✅ Legal (shared kitchens) | ✅ Legal | ✅ Legal |
| MEHKO home-cook → consumer | County-issued MEHKO permit · AB 626 | ❌ Not authorised | ✅ Authorised 2021 | ✅ Berkeley · Alameda authorised |
| Cottage Food (shelf-stable only) | CFO permit · CDPH | ✅ Legal · low-risk foods | ✅ | ✅ |
| EatCookJoy / SF defaults to the in-home chef model — chef brings groceries, cooks in client's kitchen, leaves. No MEHKO needed. | ||||
For weekly meal-prep customers who want fresh-cooked food delivered rather than cooked in their kitchen, we activate a San Mateo County MEHKO satellite. San Mateo opted into AB 626 in 2021; a single MEHKO-permitted chef can serve up to 30 meals/day, $50k/yr per AB 626. Twelve MEHKO chefs in San Mateo = a $600k delivery-meal product layered on top of the in-home brand.
EatCookJoy / SF is a marketplace, not a delivery brand. We monetise the relationship, not the meal.
| Lever | Charged To | Rate | Market norm | Notes |
|---|---|---|---|---|
| Platform commission | Chef | 30% | 18–30% | Chef nets 70% of every session fee · groceries pass-through at cost · tips 100% to chef |
| Groceries | Client (pass-through) | at cost | at cost / 10% markup | Billed at receipt cost · not commissionable · not in GMV |
| Tips | Client → Chef | 100% chef | 100% chef | Optional · not solicited at checkout · zero platform clip |
| Chef-paid insurance pass-through | Chef | ~3% | 2–5% | Optional · we discount premium via group buy |
| Subscription concierge | Client (premium) | $29/mo | $25–$49 | "Joy+" — priority booking, free Sunday-Supper swap, dietitian consult |
| Effective platform commission on a $1,200 booking | $360 | 30.0% | Before payment-processing · groceries & tips excluded |
QuickBooks-style P&L for a single $1,200 dinner-party booking (Pacific Heights, 8 guests, 4 courses, chef-shops-and-cooks). Chef commission is 70% of the session fee — groceries billed at cost pass-through, tips 100% to chef.
| Line item | Notes | USD | % of GMV |
|---|---|---|---|
| Gross Booking Value (GMV) | Session fee · groceries & tips excluded | $1,200 | 100.0% |
| Groceries (pass-through, at cost) | Billed on invoice at receipt cost · not commissionable | ~$220 | — |
| Tips (optional) | 100% to chef · zero platform clip · not in GMV | $0–$200 | — |
| Total client invoice (typical) | $1,200 GMV + ~$220 groceries (+ optional tip) | ~$1,420 | — |
| Payment processing | Stripe 2.9% + 30¢ on full invoice | ($41.48) | 3.5% |
| Chef payout (70% of GMV) | Settled T+2 · groceries + 100% tips also paid out | ($840) | 70.0% |
| Chef insurance pass-through | $15 event · Thimble GL $1M | ($15) | 1.3% |
| Platform gross profit / event | 30% commission − processing − insurance | $303.52 | 25.3% |
| Variable CX cost | ~12 min support · $24/hr | ($4.80) | 0.4% |
| Variable marketing (paid + referral) | ~$60 blended CPA ÷ 6 events | ($10) | 0.8% |
| Contribution margin / event | $288.72 | 24.1% |
| Cohort math · Sunday Supper $249/wk session fee (groceries billed separately) | Per HH / yr | % of revenue |
|---|---|---|
| Average customer · 9 mo retention | $9,711 | 100.0% |
| Less chef payout 70% | ($6,798) | 70.0% |
| Less processing 3.1% | ($301) | 3.1% |
| Less variable CX + ops | ($420) | 4.3% |
| Contribution / HH / yr | $2,192 | 22.6% |
| Blended CAC (target) | $140 | — |
| LTV / CAC ratio | 15.7× | payback 0.8 mo |
| Line item | USD | % of net rev | Notes |
|---|---|---|---|
| GMV (session fees · groceries & tips excluded) | $3,900,000 | — | 3,250 events × $1,200 avg |
| Net revenue (30% commission) | $1,170,000 | 100.0% | Chef nets 70% of every session fee |
| Cost of revenue (processing, insurance) | ($183,000) | 15.6% | Processing on full invoice incl. groceries |
| Gross profit | $987,000 | 84.4% | |
| Marketing & growth | ($420,000) | 35.9% | Y1 land-grab; declines to 20% in Y2 |
| Chef ops & community | ($240,000) | 20.5% | 2 FTE + onboarding events |
| Tech & tools | ($180,000) | 15.4% | 1 PT eng · Bubble/Webflow/Stripe stack |
| G&A (legal, finance, insurance) | ($150,000) | 12.8% | CA F&B counsel · CPA · D&O |
| Year-1 EBITDA | ($3,000) | (0.3%) | Self-funded · near-breakeven on the 30% commission · no outside capital required |
| Year 1 | Year 2 | Year 3 | |
|---|---|---|---|
| Chefs active (Y-end) | 100 | 220 | 410 |
| Households served | 1,300 | 3,800 | 8,700 |
| GMV | $3.9M | $11.4M | $24.6M |
| Net revenue (30% commission) | $1.17M | $3.42M | $7.38M |
| EBITDA | ~$0 | $640k | $2.4M |
| Funding required | $0 | $0 | $0 |
100 chefs is the magic number for a chef-comes-to-home marketplace in a 5km radius: it gives every Pacific Heights / Marina household an option within 30 minutes' drive, allows demand-side density for subscription retention, and matches the supply Take-a-Chef took eight years to build in SF (372 chefs across the entire Bay Area). We will do this in nine months with a structured funnel.
| Channel | Detail | Apps / mo | Cost / app | Conv. to active | CAC / chef |
|---|---|---|---|---|---|
| Referral · existing chefs | $300 per signed-and-active chef bonus | 35 | $0 | 22% | $300 |
| Culinary school alumni | SF Cooking School · Le Cordon Bleu · CCA partnerships | 30 | $5 | 14% | $36 |
| Diaspora WhatsApp / FB | Filipino, Persian, Indian, Mexican, Brazilian community groups | 25 | $0 | 10% | $0 |
| Indeed.com / Culinary Agents | Job posts · structured ad spend | 20 | $28 | 7% | $400 |
| Instagram chef outreach | Manual DMs to SF-tagged cooking creators < 25k followers | 15 | $3 | 9% | $33 |
| Pop-up & supper club poaching | EatWith / Resy Local events | 10 | $8 | 15% | $53 |
| MEHKO permit-holder lists | San Mateo / Alameda public records | 8 | $2 | 18% | $11 |
| Press & podcasts | Eater SF · KQED · The Bold Italic | -- | -- | -- | earned |
| Blended chef CAC | 9-month average | 143/mo | $8.40 | 11.5% | $87 |
The brand voice is "smart friend who cooks a lot." Grade 6–7 language, US measurements, black text on white, red for emphasis (≤10% of any view), Inter font, no fluff openers. Identical to eatcookjoy-uae.com but localised for Pacific Heights, Marina, SoMa.
Tech-comp couple in Pacific Heights or Russian Hill. Two kids under 10. HH income $280k–$650k. Cooks once a week, exhausted. Has tried Munchery, Sun Basket, Methodology — wants someone to actually be in her kitchen.
Pain: Sunday-night meal planning · weeknight 6:30pm chaos · kids' allergies · husband's macro tracking.
Hook: "Get your Sundays back."
Buys: Sunday Supper $249/wk · ARPU $9.7k/yr
Founder / VC / partner in Marina or Hayes Valley. Hosts dinners monthly — work, friends, in-laws. Will pay $1,200–$3,500 per event for a chef who plates beautifully and disappears quietly.
Pain: reservations for 12 are impossible · the house chef they tried left to Atherton · catering trays kill the vibe.
Hook: "A restaurant in your dining room. Without the Resy refresh."
Buys: Dinner Party · ARPU $4.8k/yr
Single 30s–40s in Hayes Valley, Mission or Castro. Tracks macros, prefers specific cuisines, doesn't trust restaurant kitchens for allergies. Pays a premium for a chef who actually understands gluten-cross-contamination.
Pain: menu personalisation · cultural-cuisine authenticity · grocery shopping.
Hook: "Your diet, properly cooked, at home."
Buys: ECJ Box (MEHKO) + monthly events · ARPU $3.2k/yr
| Channel | What we do | Spend % | CAC | Payback |
|---|---|---|---|---|
| Referral (Maya → Maya) | $50 credit each side · IG-friendly card | 15% | $25 | 0.4 mo |
| Lobby boards & doormen | 20 Pac-Hts / Marina luxury condos · printed monthly cards | 8% | $45 | 0.7 mo |
| Pre-school / school WhatsApp groups | Hamlin, Town, SF Day, Live Oak parent reps | 5% | $30 | 0.5 mo |
| Instagram organic + Reels | 3 chefs / week IG carousels + TikToks from skill plan | 12% | $80 | 1.3 mo |
| Meta paid | Lookalike of ECJ-UAE Maya cohort · Pac Hts / Marina / Marina Bay | 20% | $140 | 2.3 mo |
| Google Search | "private chef SF", "Sunday meal prep", branded protect | 10% | $165 | 2.7 mo |
| SEO blog factory | 3 long-form blogs/wk · Sunday Prep template · recipe schema | 5% | $40 | 0.7 mo |
| Email · ECJ Sunday Prep | 4–7-word subject lines · Saturday 9am · open-rate target 38% | 3% | $0 | retention |
| Press & podcast | Eater SF · KQED · 7×7 · The Cut founder profile | 5% | earned | — |
| Founder dinner-club seeding | South Park Commons · SHL · Kleiner alumni · partner events | 7% | $60 | 1 mo |
| Corporate (SoMa wedge) | 4 founders' offices · upsold to home accounts | 10% | $95 | 1.5 mo |
| Blended household CAC | 9-mo average post launch-month | 100% | $140 | 2.3 mo |
EatCookJoy / SF is a high-trust marketplace, not a logistics company. Our ops job is to make matches obvious, payouts instant and disputes invisible. Built on no-code rails so we get to product-market-fit on $90k of tech spend, not $900k.
| Layer | Tool | Cost / mo | Why |
|---|---|---|---|
| Marketplace front-end | Webflow + Wized + Memberstack | $280 | SEO-first · matches ECJ-UAE stack |
| Booking + scheduling | Cal.com OSS + Make.com | $150 | Two-way calendar sync with chefs |
| Payments + payouts | Stripe Connect Express | 2.9% + 30¢ | 1099 tax forms · T+2 payouts |
| Identity / background | Checkr | $35/chef | SOC-2 · CA-compliant |
| Insurance | Thimble + NEXT | $11–$25/event | On-demand GL $1M |
| Reviews + reputation | Trustpilot embed + native | $95 | Public trust signal |
| CRM + email | HubSpot Starter + Klaviyo | $345 | Saturday Sunday Prep email |
| Analytics | GA4 + Posthog + Mixpanel | $200 | Funnel + retention |
| Support | Intercom Lite + Front shared | $180 | SLA < 22 min in-day |
| AI co-pilot | Stackbirds Agent → Claude API | $420 | Chef onboarding · review moderation · email drafts |
| Run-rate tech spend | ~$3.1k | $37k/yr · scales linearly |
Day 1 of week 1 is the day the pre-seed closes. Every milestone below is owned, dated and trackable.
| Risk | Likelihood | Impact | Mitigation |
|---|---|---|---|
| SF passes hostile gig-economy law | Low | High | Borello-compliant contract · CA marketplace exemption · LLC indemnity |
| Shef enters in-home cooking | Medium | Medium | Subscription lock-in · Joy+ · local community moat |
| Chef supply churn > 25% / quarter | Medium | High | 70% chef commission + 100% tips + groceries pass-through · monthly skills clinic · top-chef bonus |
| Insurance claim > $25k | Low | Medium | Thimble GL $1M · ECJ excess $5M D&O · 24-hr incident SOP |
| Food-safety incident | Low | Severe | ServSafe mandatory · 30-min onboarding video · client allergy form |
| CAC inflation (Meta · Google) | High | Medium | SEO + referral + lobby-board mix < 50% paid |
| Tech downtime / Stripe outage | Low | Medium | Manual payout backup · WhatsApp ops channel · status.eatcookjoy.com |
| Founder bandwidth (split UAE/SF) | Medium | High | SF GM hire week 8 · Stackbirds AI co-pilot · weekly UAE/SF sync |
EatCookJoy / SF is self-funded by the 30% platform commission on every session fee, plus the parent's existing AI/tech engine and the UAE ops backbone. The milestones below are operational, not capital-raise gates.
NPS > 60 · weekly retention > 78% · founder-led trust signals captured.
Channel mix proven · CAC payback < 1 mo on the 30% commission · cohort retention flat by month 4.
San Mateo MEHKO satellite live · Joy+ at 8% attach · press cycle complete.
Self-funded · independent of any new capital · ECJ-UAE cross-traffic data flowing.
Snapshot audit of eatcookjoy.com and the planned /sf regional landing page. Detail, ranking targets and on-page checklist live on the companion page /eatcookjoy-playbook-US-SF/seo/ ↗.
| Signal | Status | Score | Notes / Action |
|---|---|---|---|
| robots.txt | Empty / default | 0/10 | Add sitemap reference, allow rules, block /admin |
| XML sitemap | Not surfaced | 2/10 | Generate /sitemap.xml — include /sf, /services, /ecj-chefs, /blog |
| City-page architecture | /sf exists, neighborhoods missing | 4/10 | Build /sf/pacific-heights, /sf/marina, /sf/soma with LocalBusiness schema |
| Title tags & meta | Generic on /sf | 5/10 | Rewrite with "Private Chef San Francisco" + neighborhood + AED-equivalent USD price hooks |
| Schema markup | Missing | 1/10 | Add LocalBusiness · Service · FAQPage · Recipe · Review JSON-LD |
| Hreflang | None — risk of UAE/US dedup | 0/10 | Add en-US ↔ en-AE pair for /sf ↔ eatcookjoy-uae.com |
| Page speed (LCP) | ~2.9s mobile | 6/10 | Inline critical CSS, lazy-load below-fold images, preconnect fonts |
| Content depth (cost guides) | 3 posts live | 4/10 | Ship 12 cornerstone posts in 90 days (cost guides, chef profiles, comparisons) |
| Backlinks (DR) | DR 18, 47 RDs | 5/10 | Target Eater SF · 7×7 · KQED · The Bold Italic · culinary-school alumni links |
| Core "private chef SF" SERP rank | Not in top 100 | 1/10 | City-page + 3 cost-guide cluster · 60 days to top-50, 120 days to top-20 |
| GEO / AEO (LLM answer surfaces) | No structured Q&A | 2/10 | FAQPage schema + HowTo + Speakable schema for Perplexity / ChatGPT Search / Gemini citations |
| Composite SEO health (out of 100) | 30/100 | Same band as the UAE site pre-relaunch · 12-week dual-site plan exists | |
Full comparison lives on the deployed UAE page at /eatcookjoy-uae/demo-upgrade/comparison/ ↗. Headline read-out below.