Marlowe & Finch Planning · Floor plan & covers
Floor-plan & covers optimiser

The room was laid out once. The guests changed.

The floor was set at fit-out, five years ago, for a town that booked in fours. Today 58% of parties are twos — and every two seated at a four-top strands two chairs the book counts as sold. The optimiser re-runs the room against the bookings actually walking in the door, and prices what a refit is worth before a dollar is spent. Read by Eleanor Marlowe, Owner

Covers, Friday dinner
58 → 68
Same room, same service hours — layout C
$ per head
$84 → $88
Counter and window two-tops sell the dearest seats
Annual gross uplift
+$289k
260 dinner services at +$1,112 each
Refit it pays for
$68k
4.3-month payback — the uplift sets the budget

When the book says full, 14 chairs are empty

Twelve months of bookings (UC1 phone + UC2 web chat) against the physical table mix. 84 m² dining room, Tanjong Pagar.

Who actually books

Parties of two58% of bookings
Threes & fours29%
Fives and larger13%

What the floor offers

Two-tops2 of 13 tables — 15%
Four-tops11 of 13 tables — 85%
The mismatch: on a "full" Friday — every table taken — seven twos sit at four-tops. 34 of 48 seats are occupied: 71% seat utilisation while the phone agent turns parties away.
A spreadsheet you set once

Every restaurant runs this optimisation exactly once — at fit-out, on instinct, before a single booking exists. Then the booking mix drifts for years and nobody re-runs the sum, because re-running it means moving furniture.

The house already holds the data to do it properly: a year of party sizes from the phone and chat agents, spend per head from the till, and the room's measured geometry. The optimiser searches thousands of legal layouts — legal meaning every fire-egress aisle, accessibility route and service path is respected — and scores each one in covers, dollars per head and dollars per square metre.

It doesn't redesign the room's character. It prices the gap between the room you have and the room your bookings are asking for — and hands you the budget that gap justifies.


Three rooms, scored

Same 84 m², same kitchen, same staff. Friday-dinner figures at 1.7 turns; schematics indicative.
As built

A — Today's floor

11 four-tops · 2 two-tops · 48 seats
Covers / Friday service58
$ per head$84
Revenue / service$4,872
Revenue / m² / service$58
Most covers

B — Pack the floor

Banquette of 9 joinable two-tops · 6 four-tops · 46 seats
Covers / Friday service74+16
$ per head$79
Revenue / service$5,846+$974
Revenue / m² / service$70
Recommended

C — The dearest seat

8 banquette two-tops · 5 four-tops · chef's counter of 6 · 42 seats
Covers / Friday service68+10
$ per head$88+$4
Revenue / service$5,984+$1,112
Revenue / m² / service$71+$13

The finding: the most covers isn't the most money. Layout B seats the most people; layout C — fewer, dearer seats, with the chef's counter selling the tasting and the pairing — wins on both revenue and dollars per head. Maximise covers per dollar of guest, not covers alone.


The uplift sets the budget

From layout score to a capital decision — what the refit may cost because of what it returns.
Layout C · the capital case

$289k a year buys a $68k refit

The uplift is the budget's ceiling, worked backwards: at a 65% gross margin the layout returns ~$188k of contribution a year, so a $68k fit-out clears in 4.3 months. Anything under ~$94k pays back inside six.

Banquette joinery, north wall9 m upholstered, 8 joinable two-top positions $31kinstall
Chef's counter extension6 seats facing the pass, service gantry $24kinstall
Tables, chairs, rewire two circuits8 marble two-tops; lighting over the counter $13kinstall
The optimiser's verdict · plain words

"Layout C returns $1,112 more per service. At 260 services a year that's $289k gross, ~$188k contribution — a $68k refit pays back in 4.3 months. Spend up to $94k and you're still inside a six-month payback."

Covers +10 / service $88 per head Payback 4.3 months Budget ceiling $94k
Drag a table, the sum re-runs

The operator isn't handed a fait accompli. Nudge the banquette, keep the window deuce Eleanor loves, drop the counter to four seats — every drag recomputes covers, $ per head and the payback live. The optimiser proposes; the owner decides what the room is.


Where it refused to pack the room

The honest beat: asked for 60 seats, the optimiser said no — and showed its working.
Clearance guard · constraints held

"Get me 60 seats in here."

Pushed for 60 seats, an unconstrained packer will happily oblige — and hand you a room that fails its fire inspection and exhausts the floor staff. This one treats the codes as hard walls, not suggestions. 60 seats is not a layout this room can legally hold; the guard capped the search at 54 and explained every centimetre it refused to give.

Held

Fire egress, 1.2 m main aisle — SCDF Fire Code escape-route width to both exits. The 60-seat packing narrowed it to 0.9 m. Non-negotiable; the optimiser will not trade escape width for chairs.

Held

Accessible route, 900 mm — BCA Accessibility Code path from door to accessible seating and the WC. Two proposed deuces pinched it. Removed before the layout was ever shown.

Kept

Service path to the pass — 750 mm runner's line from kitchen to the banquette, a house rule rather than a code. Tighter than ideal at one pinch; flagged for the walk-through, kept with a warning.

The rule: code clearances are constraints, never variables. The optimiser searches only the layouts that pass SCDF egress, BCA accessibility and the house service paths — then maximises within them. A room that seats 60 and fails inspection is worth $0 a head.


Under the hood What this is today — and where the optimiser should go next

This page is a concept. The room, layouts and dollars are hand-built to tell one refit's story honestly; nothing here ran against a measured floor. The shape of the real thing: a constraint solver over the room geometry — table footprints, SCDF egress aisles, BCA accessibility routes, service paths — scoring candidate layouts against the party-size distribution the booking agents (UC1 / UC2) already collect and the spend-per-head the till already knows. The language model narrates trade-offs and writes the capital case; the optimiser does the arithmetic. It's the rare use case that monetises data the house already has at a moment — fit-out, refurb, new site — when real money is about to be spent on instinct.

On the roadmap

  1. Measure the room properly. A laser-measured plan or a phone LiDAR scan, once — garbage geometry in, garbage layouts out. The codes are checked against real centimetres or not at all.
  2. Earn the demand curve. The party-size mix must come from the actual booking history, including the parties turned away — the phone agent logs the noes, which is precisely the demand the current room can't see.
  3. Score in dollars, not seats. Covers, $ per head, $ per m², and the variance across the week — a layout that wins Friday but dies Tuesday needs to show that, honestly.
  4. Keep the owner's hand on the room. Drag-to-edit with live re-scoring; protected tables ("the window deuce stays") as first-class constraints. It proposes; it never decides what the room is.
  5. Treat the budget as the output. The deliverable isn't a pretty floor plan — it's a payback-dated capital case a bank or a landlord can read. Uplift, contribution, ceiling, payback. That's what makes it a set-up / install budgeting tool rather than a toy.
Where this sits in the roadmap — the expansion use-case brief: UC21 — Floor-plan & covers optimiser (expansion brief) → Concept mock-up — illustrative data, not a live system. Expansion candidate (UC15–UC21).