Platform concept · v3 · reviewed

The restaurant already knows.
Nobody has asked it yet.

Connect your data. Know the score. Find the opportunity.

Ask My Restaurant is an AI operating system for independent restaurants. It connects the software the restaurant already runs, turns the numbers into a scoreboard the whole team can read, and ends every answer with a recommendation — never just a report.

The Scoreboard Week ending 18 January
Revenue inc GST
$16,830
▲ +6% vs 4-wk
Guests
99
▲ +4% vs last wk
Spend / head
$167.95
▲ +2% vs yr avg
Beverage SPH
$44.20
▼ −3% vs 4-wk
Wage %
26%
▲ on target
Bev match
35%
▼ −5% vs yr avg
First-time
23%
▲ 23 bookings
Returning
20%
▲ 20 guests
VIPs (6+ visits)
9
▲ +2 this wk
9-course menu
43%
▲ 44 covers
Newsletter
+11
▲ 11% of guests
Dot notes
39
▲ new this wk

Real sample week from the founding restaurant's spreadsheet. Every number carries a trend against last week, the year average, and the rolling four-week average.

The problem

Every restaurant already has the data it needs. It's trapped in six systems that don't talk.

Bookings in Now Book It. Sales in Bepoz. Rosters in Loaded. Accounts in Xero. Guests in inboxes and review sites. The owner reconciles it in a spreadsheet on Mondays — when there's time. AMR brings it together and turns it into actions.

Not another dashboard

Reporting tools stop at what happened. Every AMR answer ends with a recommendation — or an explicit "no action needed," never filler.

Not autopilot

Incumbents pitch "growth on autopilot." AMR's stance is the opposite: computers do the counting so the team does more noticing.

Not enterprise-priced

Avero runs $400–1,200 per location per month. AMR targets the single-site independent at a $100–300 envelope — architecture included.

PlayerWhat it doesWhere it stops
TenzoAI analytics & forecasting, 70+ integrations, multi-siteShows what's happening; doesn't run the operation
NoryAI ops — inventory, staffing, payroll, forecastingWeakest on guest relationships
AveroMulti-location analytics for restaurant groupsPriced out of the independent segment
MarginEdgeInvoice & food-cost automationSilent on guests and marketing
SevenRooms / ResyReservation platforms with guest data & "autopilot" marketingWalled garden — you live on their booking platform
AMRGuest intelligence + coaching + huddle execution over the stack independents already runThe gap all five leave open

The product

Five layers, in order

Each layer earns the next. Data that flows becomes a score; a score becomes understanding; understanding becomes a plan; the plan walks onto the floor at 5:55pm.

1

Connect

Now Book It, Bepoz, Loaded, Xero, Me&U, Google reviews, website analytics — plus a per-tenant forwarding address for feedback email. CSV upload is the universal on-ramp; live connectors replace it source-by-source with zero downstream change. No manual reporting.

2

Scoreboard

The digital evolution of the Monday spreadsheet. Revenue, covers, spend per head, beverage match, wage %, guest segments — every number with its trend, every week with its wins celebrated.

3

Understand

Ask AMR anything in plain English — "Did Michelin increase bookings?" "Who buys the beer?" — and get answers grounded in governed metrics. Analyst, accountant, interpreter. It refuses rather than guesses.

4

Coach

The biggest opportunity, the critical number, three owner focuses ranked by net-profit impact, questions for the team, a weekly game plan. Opportunities persist with status — next Monday asks whether the number moved.

5

Huddle

Tonight's service, table by table: who's returning, who's celebrating, what to ask, what to notice. Phone-first, cached offline, staff-visible — the layer that walks onto the floor.

The noticing engine

Computers do the counting. Humans do the noticing.

Deterministic rules watch the guest graph and the week's bookings. The model writes the story and the questions. Rules find; the model narrates — and every answer a waiter records becomes a dot note that sharpens the next story.

People story · Welcome back

Kim Wilson

Kim's back after her longest absence since 2024. Eleven visits puts her one short of a loyalty milestone. Tonight is the visit that decides whether the gap was a blip or a drift.

  • What has she been up to? Has she travelled?
  • What would make this her best visit yet?
  • Anything coming up worth celebrating here?

The rules behind the stories

  • WELCOME BACKbooked, and away longer than 1.5× their own average gap
  • LOYALTYnext visit is their 5th, 10th, 25th, or 50th
  • AT RISKfirst-timer with no second booking in 60 days
  • LAPSED REGULARquiet for 3× their personal average, no future booking
  • FUTURE REGULARsecond and third visits booked close together
  • CELEBRATIONa stored date or booking note within the next 7 days
  • MISSED DEMANDwaitlist and abandoned bookings we couldn't seat

Thresholds are personal — multiples of each guest's own rhythm, never a fixed number of weeks. A weekly regular quiet for a month means something; a quarterly visitor doesn't.

"Did Michelin increase bookings?"

July 2026 bookings were up 18% on July 2025. First-time guests rose 32%; repeat guests rose 4%.

RecommendationCreate a "Michelin Selected" email sequence aimed at converting first-time visitors into repeat guests — the 32% is only worth what it returns.

The system

Built like a platform, sized like a pilot

A multi-tenant SaaS from day one — shared-schema Postgres with enforced row-level security, one ingestion contract for CSV and API alike, and an AI that is never allowed to do arithmetic.

Sourcesthe software they already run
Now Book ItBepoz POSLoaded XeroMe&UGoogle reviews feedback@ forwardingWixCSV / Excel
Ingestionone contract, any transport
per-source adaptersidempotent, checkpointed syncs PII tokenized at ingestimmutable raw zone (replayable) backfill modedrift alerts
Data platformthe canonical restaurant
Postgres + forced RLSguest graph + identity stability contract staging → canonical → martsmetric registry (one definition per KPI) match review queue
Intelligencedeterministic core, generative shell
noticing rulesopportunity scoring Ask AMR — tools over governed metrics, no free SQL voice-of-guest themeseval harness: the 100 questions recommendation contract
Applicationwhat the team touches
ScoreboardToday's Service (offline-cached) Owner CoachOpportunities Ask AMRMonday 6am report owner / staff roles, enforced in the database
The canonical data model
org · restaurant(tenant, timezone, goals, schedule)        — tenant-local, DST-safe scheduling
guest(emails[], phones[], visit_count, avg_gap_days, segment) — first_time | friend | regular | vip
guest_link(match_confidence, status)                          — the "matches to review" queue
guest_merge_event · guest_redirect(old → canonical)           — identity stability contract
booking · visit(menu_type, bev_match, tips, server_id)
dot_note                                                      — what the team noticed
team_member · shift · huddle_entry
campaign · campaign_result(bookings_48h)
feedback_item · theme · feedback_theme                        — voice of guest, trended
metric_value(metric_key, period, value)                       — the governed metric store
opportunity(evidence, est_profit_impact, status, outcome_metric_key)
story(type, suggested_questions, status)
ai_output(model_id, prompt_version, source_snapshot_ids)      — full provenance
ingest_run · context_event(weather, holidays, Michelin)
audit_log · app_user(role)
API sketch
GET  /v1/scoreboard?period=week&ending=2026-01-18
GET  /v1/huddle/{date}                      POST /v1/huddle/{date}/cashup
GET  /v1/opportunities?status=suggested     POST /v1/opportunities/{id}/status
POST /v1/ask                                POST /v1/goals
GET  /v1/segments/{lapsed_regulars | lapsed_first_timers | celebrations}/export
POST /v1/imports                            GET  /v1/sources/health

Load-bearing decisions

Three bets the whole design rests on

21% → 98%

The AI never does arithmetic

Raw LLM text-to-SQL solves ~21% of real enterprise queries. Grounded in a governed metric layer, frontier models reach 98–100% — and refuse when they can't answer. Every KPI is defined once; the dashboard, the Monday report, and Ask AMR quote the same number or no number.

Deferred deliberately: a typed metric registry in code now; a semantic-layer product (dbt SL / Cube) at ~25 tenants.

3–5×

Shared-schema tenancy, forced RLS

Single Postgres, tenant_id everywhere, row-level security that no code path can bypass — the 2026 B2B default, at 3–5× lower infra cost than siloed models. "Staff can't see wage %" is a database guarantee, not a UI convention.

Discipline: SET LOCAL per transaction, cross-tenant reads proven to fail in CI, and an org layer above the tenant from day one.

$100–300

Buy the plumbing, build the moat

Commodity connectors are bought; first-party adapters for the ANZ indie stack — Now Book It, Bepoz, Loaded, Me&U — are built, because those integrations plus the guest graph are the moat. Narratives are batch-generated and cached; chat is the only interactive LLM surface. The price envelope is an architectural constraint.

Deferred deliberately: Postgres job queue now; Temporal-class orchestration when connector concurrency actually hurts.

Roadmap

Thin vertical slices on production foundations

The vision docs' own warning governs: don't build Version 10 before Version 1 has paying users. Validation artifacts and platform foundations are separated so nothing gets thrown away twice.

Phase 0 · wk 1–4 Validation

No platform code. Write the 100 questions, interview 10 owners, run the manual export-and-upload loop. Gate: owners say "I'd pay for that."

Phase 1 · mo 1–4 Foundation + Scoreboard

Multi-tenant core, PII-tokenized ingestion, historical backfill, metric registry, Scoreboard, Monday report, Ask AMR on the top 20 questions with the full guardrail stack. One pilot tenant, concierge onboarding.

Phase 2 · mo 4–8 Guest graph + Noticing

Live Now Book It + Bepoz adapters, identity resolution with the stability contract, stories, Today's Service with offline cache, staff role, action segments. AMR becomes daily-use. 3–5 pilot tenants.

Phase 3 · mo 8–14 Coach + Voice of guest

Opportunity templates and the accountability loop, review and feedback themes, Loaded/Xero adapters automating wage % and food cost %, goals, context events. Cohort-wide rollout; first paid tier.

Phase 4 · mo 14+ Scale-out

Self-serve onboarding, connector catalog, columnar marts, opt-in anonymized benchmarking — "your beverage match % vs similar restaurants" — and group views for multi-venue operators.

Adversarial review, folded in

The design was attacked before it was built

An architecture review hunted for the failures that are cheap to fix on paper and expensive in production. Verdict: sound direction, conditionally approved — every condition is now in the design.

High · fixed

Immutable storage vs. the right to be forgotten

"Replayable forever" raw data full of guest PII contradicts privacy-law deletion rights. Fix: PII tokenized at ingest, values in a per-guest key vault — deletion becomes a crypto-shred, the raw zone keeps its integrity. Ships in Phase 1, because retrofitting is a migration project.

High · fixed

Guest identity needed a stability contract

Replays and review decisions change matching results over time — and dot notes point at guest IDs. Fix: merges and splits as first-class events, a redirect table consulted by all readers, resolution as a versioned deterministic job. A note on the wrong guest breaks the hospitality promise.

Medium · fixed

The stack outweighed the team

dbt + Cube + Temporal is a platform team's stack; Phase 1 is two engineers and one restaurant. Fix: same interfaces, deferred products — metric registry in code, Postgres job queue, plain versioned SQL — each with a documented trigger for upgrading.

Medium · fixed

Gmail OAuth was a compliance trap

Reading a business inbox puts AMR in Google's restricted-scope regime — an annual five-figure security assessment. Fix: invert the flow. Each tenant forwards feedback email to their own AMR ingest address. Same data, no OAuth.

Medium · fixed

Backfill was missing entirely

The vision docs ask nine-year-lookback questions, so onboarding starts with bulk history: batch identity resolution with triage, segments computed as-of each visit, baselines built before the first Monday report. It doubles as the concierge-onboarding runbook.

Product · refined

A forced recommendation is a bad recommendation

Requiring advice on every answer guarantees filler. The contract now allows an explicit "no action needed" with rationale — and the eval harness scores recommendation specificity, not just presence.