One restaurant, fully deployed — nothing staged

This is what an FDE engagement looks like.

We embed in an independent restaurant, find where money and time are leaking, and engineer each one away — in a strict order of preference: existing tools first (we don't reinvent what exists), customized to the restaurant's own workflow (no two run alike, even with the same menu), custom-built only when the shelf runs out — and behavioral where the answer isn't software at all. This page walks the engagement at our own restaurant — Wok & Karahi, Spring TX (4.6★, 872 Google reviews; sales doubled in 18 months) — pain by pain. Everything is production. Every number is real, from our POS (absolute $ redacted, nothing else).

Call the live agent — (903) 602-4012 2 of 5 founding pilots signed

Pain 1 · calls died in every rush — most callers never call back

Now every call is answered. And the order lands in the POS.

Built — nothing off the shelf could do this right

No vendor's agent could say our dish names, speak our guests' languages (English + Urdu/Hindi), or write a clean order into Clover with real item and modifier IDs. So we built our own: 28 integrated tools, a 15-persona adversarial QA gate, 206 automated checks — and a rule that it never falsely confirms. If a write fails, it says so.

Watch the flow, then call it — order something, ask what's in the Dum Biryani, ask about catering for 40, try to make it invent a discount. The demo line runs in safe mode: confirm away, the kitchen won't fire your ticket. In production the same order writes straight into Clover.

Result: zero missed calls; orders, reservations, catering leads and complaints all captured — a channel that used to leak now feeds the whole system.

Reenactment of the live agent's real flow

Pain 2 · invisible to the new front door — the site returned 403 to every AI crawler

Now when someone asks an AI where to eat, we're in the answer.

Built — an AEO-native site, rendered from the POS

People increasingly ask ChatGPT and Gemini where to eat — and most restaurants never appear, because assistants can't read their sites. Ours literally blocked them (HTTP 403), and AI thought we were two different restaurants. We rebuilt the site in code: full Restaurant/Menu/FAQ structured data, every dish statically rendered with its real POS ID, one consolidated identity, llms.txt.

Verify it yourself: open wokandkarahitexas.com — or ask ChatGPT for halal near Spring, TX.

Result: 403-blocked → fully machine-readable, one identity — present in the fastest-growing discovery channel.

“best halal food near Spring, TX?” — asked to an AI assistant

Illustration of the mechanism — the before-state is what a 403-blocked site gets. Verify the after-state live in any assistant.

Pain 3 · marketing was set-and-forget — a static site that never learned anything

The website runs its own growth loop: measure, decide, test, ship, verify.

Built — a closed loop, not a marketing retainer

Most restaurant sites are built once and rot. Ours watches its own data — GA4, search queries, what AI assistants rank us for, and what the POS says actually sells — and decides what's most likely to move the goals that matter: direction requests, calls, catering-form submissions, direct online orders. Then it proposes the work itself: new local pages and guides, article drafts, FAQ answers tuned for AI search, sharper CTAs.

The owner approves by replying to an email. Approved changes ship automatically, revertible. Live experiments run as real A/B tests — two-proportion z-tests with minimum-sample gates — so winners stay because they won, not because someone liked them.

Result: a website that compounds instead of rots — running on a schedule today, for ~$10–35/month all-in.

Pain 4 · 27.6% of revenue riding apps that take ~30% and keep the customer

The apps' own drivers now deliver our customer-acquisition channel.

Behavioral — no SaaS company can ship this

Thank you! 🙏

Paying up to 50% extra??
Order direct at wokandkarahitexas.com — cheaper prices, real deals, $7.99 delivery within 5 miles.

QR
Direct orders today
8.8%
On the 30% apps
27.6%

Every third-party order leaves the kitchen with a thank-you note tuned to that order type: the markup the customer just paid, and a QR to order direct for less. DoorDash pays its drivers to hand-deliver our conversion pitch, order after order, at zero marketing cost.

That's the doctrine in one object: the highest-ROI fix for a 30% commission problem was a printed card and the right words — designed from the same POS data that told us which orders to target.

Result: a standing conversion engine against the gap between 8.8% direct and 27.6% on the apps — every point moved is pure margin recovered.

Pain 5 · flying blind — no idea what actually made money

Now the restaurant's own data decides what we build next.

Built — measurement first, everything else follows

Before deploying anything at any restaurant, we measure where the next dollar is. This is that engine on our own POS — 90 days, 1,501 paid orders, $58.18 average ticket. The owner can also just ask it questions in plain English.

Where the revenue comes from

Share of revenue by channel · 90 days

Dine-in
44.9%
Takeout (direct)
27.0%
DoorDash
13.8%
Uber Eats
12.5%
Grubhub
1.3%

What actually sells

Top dishes by revenue, relative to #1 · 90 days

Chow Mein
100
Fried Rice
67
Dum Biryani
44
Mongolian
43
Sesame
42
Karahi
39
+63%higher ticket when a guest orders from both cuisines — found here, now steered by the menu, the site, and the phone agent
66.7%of revenue lands in the dinner window — staffing, prep and promos follow it
$64.94 vs $54.67weekend vs weekday ticket — pricing tuned per day
43 orders ≥ $150untracked feast demand in 90 days — the catering channel the data said to build

Result: the agent's upsells, the site's content, the menu's steering and the commission fight are all decisions this data made — judgment by measured dollars, not vibes.

Pain 6 · the owner was the bottleneck — everything needed him, nothing informed him

The owner runs all of it from his inbox.

Built — command & control for someone who runs a kitchen, not a laptop

An owner doesn't want another dashboard login — he wants to know what happened, what's proposed, and to say yes or no. So the system reports to him and waits for his approval on anything that matters: a daily sales report every morning, a weekly email proposing specific website changes he approves by replying, SMS alerts when something needs eyes, and a weekly digest of what the phone captured — complaints, feedback, reservations, new vs returning callers.

Nothing irreversible happens on its own. Approvals are gated, everything ships revertible, and failures alert loudly instead of hiding. This is why the restaurant runs without him standing in it.

Result: a semi-absentee owner with full command — the daily report, the approve-by-reply engine, and the alert rails are all running today.

the owner's morning — recreations of the real reports the system sends

Pain 7 · 54% of orders were anonymous — the apps knew our customers, we didn't

Now the restaurant remembers its regulars. The apps don't own them anymore.

Built — a guest memory the owner owns

The delivery apps keep the customer's name, number and habits for themselves — we found only 32 identifiable repeat customers in 1,501 orders. So we built the guest layer the restaurant owns: the phone agent recognizes a returning caller and offers "the usual," a receipt-scan spin-the-wheel turns a DoorDash customer into a known direct one on the spot (SMS-OTP identity, abuse prevention, staff redemption flows), and every interaction feeds one guest history.

Result: loyalty in the first ten seconds of the second call — and a customer list that belongs to the owner, not the apps.

Incoming call · (832) ···-··41
NamePriya S. — returning caller
The usualButter chicken · extra naan
PrefersMild · pickup · last visit 12 days ago
“Good to hear from you again, Priya! The usual?” ✓

Opportunity 8 · not a leak — money nobody was chasing

The data found a catering business hiding inside the restaurant. We built it a door.

Built — discovered by measurement, unlocked by engineering

An FDE doesn't only fix what hurts — it finds what's missing. The POS showed 43 orders over $150 in 90 days that nothing was tracking: feast demand with no catering channel, at margins far above dine-in. So we built the door: the phone agent sizes catering from a headcount, a portion calculator turns people into exact trays, occasion pages catch the searches, and a form routes real inquiries to a human.

Result: a catering channel where none existed — 8–10× the average ticket per order, found by the same measurement every deployment starts with.

“We're feeding about 40 people — what do we need?”
Chicken Chow Mein2 full trays
Chicken Karahi1 full + 1 half tray
Naan50 pieces
Quote routed to a human ✓ — the agent never guesses on a $400 order

Illustrative output — the live portion calculator's real math grounds the phone agent's catering answers.

Pain 9 · three delivery tablets, orders re-typed by hand, lost in the rush

And sometimes the fix is boring: three tablets became one POS.

Chosen & wired — the right existing tool, set up right

Not every win needs to be clever. This one needed the FDE judgment call: knowing which of the 100+ integration tools actually works, and wiring it into Clover properly — we don't rebuild what you can buy, and we do the wiring every vendor skips.

Result: live 1+ year — re-typing gone, and the lost, late, wrong orders with it. Simple, unglamorous, high-yield. The doctrine doesn't care about wow; it cares about the result.

Why this compounds

One loop, owner in command. The AI writes to the same POS it learns from.

The voice players stop at the phone. The marketing platforms never touch the POS. Toast closes the loop — but only for Toast restaurants. Tap any node:

the owner —
approves everything,
sees everything
The phone — answers every call, writes orders into the POS, and captures demand, complaints and feedback nobody was collecting. Feeds the guest history and the owner's digest.

The same engagement also produced

One founder, AI-leveraged — and the architecture is reusable.

~21,000 lines of production Python, 8 scheduled pipelines, 7 deployed apps — built and operated by one person using AI agents as the engineering team. The next restaurant is data + config. Also in this deployment:

Behavioral · running 1+ yrReview engine — ~400 → 872 Google reviews at 4.6★ in a yearA "scan me" card only when a guest is visibly happy; unhappy guests get the owner's personal card before Google does. $2 of cardstock, our highest-ROI play. (Verifiable on Google now.)
BuiltNo-shows & reservationsThe agent books tables against the restaurant's real seating rules, confirms by text, and reminders cut the empty-table problem — no host stand required.
Advisory + auditThe apps quietly short youWrong charges, bogus refunds, missed payouts — we audit the delivery apps' statements and claw back what's actually owed, then keep watching.
DeployedStaff questions at 6pm on a SaturdayAn employee handbook Q&A assistant, a conversational POS assistant, and an MCP server exposing the restaurant to AI tools — the small tools that keep a shift smooth.
Running dailyAutomation fleetEight scheduled pipelines — reports, newsletter with retry, AEO guard, reply-reader — all fail-closed: allowlisted senders, dry-run defaults, kill switches.
Built & battle-usedM&A-grade deal-room infrastructureFor a confidential transaction: self-hosted NDA e-sign, two-tier proof-of-funds gating, per-recipient watermarks, IP/forwarding detection, and an autonomous daily funnel optimizer with significance-tested A/B. Same doctrine, harder problem.

Want the live tour? On a screen-share we'll open the analytics dashboard on real dollars, place a call to the agent, and watch the pieces talk to each other. First two pilot restaurants signed in Spring, TX.

Abbas Zoeb · azoeb27@gmail.com · azrestaurantpartners.com