Fill the tables: 10 AI skills for bookings, no-shows and quiet nights

quiet-night

fill a dead Tuesday without cheapening the place

How the two work together

Claude thinks it through. Paste the Claude prompt into Claude Code, or drop the folder into your skills folder. Claude does the judgement: what to look for, what is worth doing, what is right.

Codex gets it done. At the hand-off point Claude runs Codex on your machine with one command and passes it the Codex prompt. Codex does the mechanical part and hands the result back. Claude checks it before you see it.

No API key to set up: Claude calls the Codex you already have installed. If Codex is not installed, Claude does that half itself and tells you.

Prompt for Claude

---
name: quiet-night
description: Turns your deadest night into a bookable offer that holds your prices, with the advert written to the UK advertising rules and the break-even worked out before you publish. Use when a midweek service is empty, when you are tempted to put 50% off on social media, or when a quiet-night deal you already run is not paying.
---

# Fill a dead Tuesday without cheapening the place

You give this eight weeks of covers by day and hour, your menu with rough food costs, and what it costs you to open that night. You get back the one night worth attacking, an offer built so it cannot leak into your busy services, the number of covers it has to do before it makes you a penny, the advert written to the advertising code, and a way to tell in three weeks whether it worked or just moved Friday's customers to Tuesday.

## What it does

1. **Find the dead night from the till, not from the feeling.** Pull eight weeks of covers by day and by hour, and put them in one grid. Then add a second grid of spend, because a Tuesday doing thirty covers at £38 a head is not the problem that a Wednesday doing fifty at £19 is. Mark the service with the biggest gap between what the room could hold and what it did, and check whether the gap is the whole night or one part of it. Very often the dead night is really a dead first sitting, 17:30 to 19:00, with a respectable 20:00. That distinction decides everything downstream, because an offer aimed at the whole night gives money away to the people who were coming anyway.

2. **Work out what one more cover is actually worth before you decide what to give away.** Take the average spend on that night, take off the food and drink cost of what they order, and you have the contribution one extra guest brings. Then take the cost of opening that night at all: the staff on the rota, the kitchen running, the lights, the linen. Divide one into the other and you have the number of covers that night needs before it stops losing money. Write that number at the top of the plan in bold type. Every decision afterwards is measured against it, and most quiet-night offers fail because nobody ever calculated it, so a deal that adds twelve covers at a giveaway price feels like a success while costing more than closing.

3. **Build a fence around the offer instead of cutting your prices.** A rate fence is the condition that separates who gets the lower price from who does not, and the whole art of a quiet-night offer is choosing a fence your regulars accept. Sound fences for a restaurant are the day itself, the arrival time, a fixed shorter menu, a set number of covers released, and a booking made in advance rather than at the door. A bad fence is one that a guest experiences as arbitrary, and the research warns about exactly that: Wirtz and Kimes note that a manager who charges more for a better table "may first want to check if other restaurants are using the same practice", because "The risk associated with being the first to introduce a RM pricing policy may outweigh the potential financial benefits associated with that policy." Choose the fence first, then the price.

4. **Frame it as a discount from your normal price, never as a premium on your busy nights.** This is the single most useful finding in the pricing research and it costs nothing to apply. Wirtz and Kimes, writing on fairness perceptions of revenue management pricing, put it plainly: "given a choice, managers should always frame price differentials as discounts rather than surcharges. This will not have a significant impact on perceived fairness for those familiar with the RM pricing practice but will lead to improved fairness perceptions for those less familiar with it." The paper explains why with a worked example, where the same £10 gap is presented either as a premium on Friday and Saturday or as a discount Monday to Thursday, and notes that consumers "perceive prices framed as gains (i.e., discounts in a pricing context) as fairer than those framed as losses (i.e., surcharges or premiums), even if the situations are economically equivalent." So your Tuesday offer is a Tuesday offer. Your Saturday price is never described as a Saturday supplement.

5. **Add something instead of taking money off, wherever the maths allows it.** A glass of something on arrival, an extra course, the chef's snack, a bottle of wine with a table of four, a coffee and a slice. The reason is arithmetic rather than sentiment: a £6 addition that costs you £1.80 protects your menu price and leaves the guest better off, while £6 off the bill costs you the full £6 and teaches everyone what your food is really worth. Reach for a straight price cut only when the offer is a fixed early menu at a genuinely different specification, in which case say what the specification is: two courses, a stated choice, served between stated times.

6. **Write the advert to the rules, because the rules are what a competitor complains about.** The UK advertising code requires that "Price statements must not mislead by omission, undue emphasis or distortion" and that "Quoted prices must include non-optional taxes, duties, fees and charges that apply to all or most buyers". If you say "from £15", the code's rule on such claims is that "Price claims such as 'up to' and 'from' must not mislead by exaggerating the availability or amount of benefits likely to be obtained by the consumer", so the £15 option must be genuinely available on the night, not one dish at the end of a list. The sales promotion rules go further and require that marketing communicate "all applicable significant conditions or information where the omission of such conditions ... is likely to mislead", which for a restaurant means the days it runs, the times it runs, the sittings it covers, whether booking is required, the closing date, and anything you are excluding such as bank holidays or Valentine's Day. Put all of it on the post itself, not behind a link.

7. **Never manufacture urgency you cannot evidence.** Schedule 20 of the Digital Markets, Competition and Consumers Act 2024 lists commercial practices which are in all circumstances considered unfair, and one of them is "Falsely stating that a product will only be available for a limited time, or that it will only be available on particular terms for a limited time, in order to elicit an immediate decision and deprive consumers of sufficient opportunity or time to make an informed choice." If you write "only 10 tables left" there must genuinely be ten, and if you write "this week only" the offer must genuinely end. The honest version does the same job: release a real number of covers per night, say what the number is, and let it sell out. Scarcity you can prove is stronger than scarcity you invent, and it is the version that survives someone screenshotting the post three weeks running.

8. **Make sure it cannot leak into the nights that already work.** Write the exclusions before you write the copy: the offer does not apply on Friday or Saturday, does not apply in December, does not apply alongside another offer, does not apply to the private room, and is not available to a booking made for a date when you were already full. Then hold back the last tables. If the room seats sixty, release the offer on twenty-five of them and keep the rest at the normal price, because the guest who was coming anyway should not be paying the promotional price. This step is what separates an offer that adds covers from one that discounts the covers you had.

9. **Measure three things after three weeks and be willing to stop.** Covers on the target night, spend per head on the target night, and covers on your busy nights over the same period. The third is the one everybody forgets. If Tuesday is up twenty covers and Friday is down eighteen, you have bought yourself a large pile of work and a smaller pile of money. Compare each against the break-even number from step 2 and against the same weeks last year if you have them. Then do one of three things: keep it as it is, change one element of it, or stop it and say so honestly on the same channel where you announced it. An offer that runs for a year because nobody looked at it is how a good restaurant becomes a cheap one.

## Then it checks

1. The dead night is identified from a stated number of weeks of covers, shows covers and spend per head by day, and names whether the gap is the whole service or one sitting.
2. The break-even cover count appears as a single number with the arithmetic beside it: average spend, cost of sales taken off, and the cost of opening that night.
3. The offer is described as a discount or an addition to the normal price, and no version of the copy describes the busy nights as carrying a supplement.
4. The advert carries the days, the times, whether booking is required, the closing date, and every exclusion, all on the advert itself and none of it behind a link.
5. Any "from" price names a dish or option genuinely on the menu that night, and any claim about limited numbers states a real number that matches the covers released.
6. The measurement plan names three figures to collect, including covers on the busy nights, and states the date the offer will be reviewed.

Any check fails: name it, redo that step once. Failed twice: say what is wrong and stop.

## Rules
- Public information only.
- Never invent a fact, a number or a quote.
- Anything sent in someone's name says whose name it is.
- Never publish an offer whose break-even cover count has not been worked out. A quiet night filled at a loss is worse than a quiet night, because it also costs you a kitchen brigade and a weekend of goodwill with your staff.
- Never write a scarcity claim, a closing date or a "last chance" that is not literally true. It is on the list of practices that are unfair in all circumstances, and it is the easiest thing in the world for anyone to check by looking at last month's post.
- Never let a quiet-night price be available on a night that sells out anyway. If there is no fence, there is no offer, only a price cut.
- Never repeat the same offer continuously for more than a stated period without reviewing it. A permanent discount is not a promotion, it is your new menu price, and it will be treated as such by the people who pay it.
- This output is a working document prepared for the owner's accountant, solicitor or advertising adviser to check before it is published. It applies published advertising rules and arithmetic to figures you supplied. It is not legal advice on advertising or consumer protection law.

## Built from
- Jochen Wirtz, National University of Singapore, and Sheryl E. Kimes, Cornell University School of Hotel Administration, "The Moderating Role of Familiarity in Fairness Perceptions of Revenue Management Pricing", https://ecommons.cornell.edu/bitstream/1813/72398/1/Kimes18_Moderating_role.pdf, no publication date shown on the page, read 14 September 2026: the discount-not-surcharge framing rule in step 4, the definition and choice of rate fences in step 3, and the warning about being first in your market with an unfamiliar pricing practice.
- Committee of Advertising Practice, UK Code of Non-broadcast Advertising and Direct & Promotional Marketing, section 3 "Misleading advertising", https://www.asa.org.uk/type/non_broadcast/code_section/03.html, no publication date shown on the page, read 14 September 2026: rules 3.17, 3.18 and 3.22 on price statements and "from" claims, which set what the advert in step 6 must and must not say.
- Committee of Advertising Practice, UK Code of Non-broadcast Advertising and Direct & Promotional Marketing, section 8 "Sales promotions", https://www.asa.org.uk/type/non_broadcast/code_section/08.html, no publication date shown on the page, read 14 September 2026: rule 8.17 on significant conditions and the requirement for a prominent closing date, which is the checklist behind step 6 and check 4.
- Digital Markets, Competition and Consumers Act 2024, Schedule 20, "Commercial practices which are in all circumstances considered unfair", https://www.legislation.gov.uk/ukpga/2024/13/schedule/20, read 14 September 2026: the banned practice of falsely stating limited availability, which is why step 7 requires a real released cover count instead of invented scarcity.

Prompt for Codex

# quiet-night

## You are given
A folder from a UK hospitality venue containing at least eight weeks of covers and sales as a till or bookings export with a date and a time on every row, the room capacity by area, the menu with selling prices and either dish food costs or a food and drink cost percentage, a rota or payroll extract giving the staff cost of opening each night, the other costs of opening that night if the owner has them, and a settings file naming the offer the owner wants to test: the mechanic, the covers to release, the start date, the closing date and the exclusions. Column names vary and some rows carry a time but no cover count.

## Produce
Write into an `output/` folder next to the inputs:

1. `covers-grid.csv` with these columns in this order: `day_of_week`, `service`, `half_hour_band`, `weeks_counted`, `covers`, `covers_per_week`, `capacity`, `pct_of_capacity`, `gap_to_capacity`. One row per half-hour band per day, from first to last seating.
2. `spend-grid.csv` with columns: `day_of_week`, `service`, `half_hour_band`, `covers`, `sales_ex_vat_gbp`, `spend_per_head_gbp`, `cost_of_sales_pct`, `cost_of_sales_source`, `contribution_per_cover_gbp`.
3. `target-night.csv` with columns: `rank`, `day_of_week`, `service`, `covers_per_week`, `capacity`, `gap_to_capacity`, `spend_per_head_gbp`, `contribution_per_cover_gbp`, `gap_is_whole_service_or_one_sitting`, `weakest_half_hour_band`. Sorted by `gap_to_capacity`, largest first.
4. `break-even.csv` with columns: `line`, `value`, `unit`, `source_file`. One row per step: average spend per head, cost of sales taken off, contribution per cover, staff cost of opening, kitchen cost, light and heat, linen, other, total cost of opening, break-even covers, covers now, covers short. `break_even_covers` is the total cost of opening divided by the contribution per cover, rounded up to a whole cover.
5. `offer-spec.csv` with columns: `element`, `value`, `source_file`. One row each for: target night, target sitting, fence, mechanic, value to the guest in pounds, cost to the venue in pounds, covers released, covers held back at the normal price, start date, closing date, review date, and one row per exclusion.
6. `advert-copy.md` - the post text, with every significant condition printed on the advert itself and nothing behind a link.
7. `significant-conditions.csv` with columns: `condition`, `wording_on_advert`, `present`, `source_file`. One row each for: days it runs, times it runs, sittings covered, booking required, closing date, released cover count, and one row per exclusion. `present` is `yes` or `no`.
8. `claims-check.csv` with columns: `claim_as_written`, `claim_type`, `figure_claimed`, `figure_in_offer_spec`, `matches`, `evidence_file`. `claim_type` is `from_price`, `scarcity`, `closing_date` or `discount`. Every `from_price` row names a dish genuinely on the menu that night.
9. `measurement-tracker.csv` with columns: `week_commencing`, `target_night_covers`, `target_night_spend_per_head_gbp`, `busy_night_covers`, `break_even_covers`, `covers_above_break_even`, `notes`. Rows prefilled with the week commencing dates from the start date to the review date, and the baseline weeks from the supplied export filled in. Forward weeks left blank.
10. `exceptions.csv` with columns: `field_or_row`, `missing_field`, `what_it_blocks`, `source_file`.
11. `README.md` - weeks counted, the date range, the target night and sitting with the arithmetic behind it, the break-even cover count, and everything that could not be computed.

## Rules
- Write files only. Never publish, post, schedule or upload the advert to any website, social account, booking page or advertising platform. The owner publishes it.
- Never write an advert before `break-even.csv` carries a computed `break_even_covers`. If any cost of opening is missing, leave the advert undrafted, write the reason in `exceptions.csv`, and say so.
- Every cost of opening must come from a supplied file. Never estimate a staff cost, a utility cost or a cost of sales percentage. A missing line goes in `exceptions.csv` and is excluded from the total with a note, never filled with a trade figure.
- Every scarcity or availability number in the advert must equal `covers released` in `offer-spec.csv`. Every closing date in the advert must equal the closing date in `offer-spec.csv`. Record any mismatch in `claims-check.csv` and do not ship the claim.
- Every `from` price must name a dish that appears in the supplied menu at that price and is available on that night. If no dish matches, delete the claim and record it.
- The advert describes the offer as a discount from the normal price or as an addition to it. No wording anywhere may describe a busy night as carrying a supplement, a premium or a surcharge. Scan the copy for those three words and record any hit.
- Every significant condition must appear in the advert body. A condition present in `offer-spec.csv` but absent from the advert is written with `present` set to `no` and blocks the draft.
- The offer must be fenced. If `offer-spec.csv` has no fence, or the exclusions do not exclude the nights that already fill, do not draft copy and say why.
- Percentages to one decimal place, money to two. British English, £, DD Month YYYY dates. No em dashes, no emoji.

## Return
The absolute paths of the files written, the weeks counted and the date range, the target night and sitting with its gap to capacity, the break-even cover count with the arithmetic beside it, the covers released, the closing date and review date, every row in `significant-conditions.csv` with `present` set to `no`, and every row in `claims-check.csv` where `matches` is `no`. State that nothing has been published, and that the advert is a working document for the owner's accountant, solicitor or advertising adviser to check before it goes out.

Built from the best public work on this

Sources for quiet-night

Everything below was opened and read on 14 September 2026. Nothing is cited that could not be loaded.

1. Jochen Wirtz and Sheryl E. Kimes, "The Moderating Role of Familiarity in Fairness Perceptions of Revenue Management Pricing"

https://ecommons.cornell.edu/bitstream/1813/72398/1/Kimes18_Moderating_role.pdf, no publication date shown on the page, read 14 September 2026.

Hosted on Cornell's eCommons repository, by Jochen Wirtz of the National University of Singapore and Sheryl Kimes of the Cornell School of Hotel Administration. The paper reports two experiments testing how familiarity with a pricing practice, the way a price difference is framed, and whether a customer ends up on the good or bad side of the price, together affect whether people think the price is fair. Study 1 was set in a restaurant context.

Step 4 takes its instruction verbatim from the managerial implications: "given a choice, managers should always frame price differentials as discounts rather than surcharges. This will not have a significant impact on perceived fairness for those familiar with the RM pricing practice but will lead to improved fairness perceptions for those less familiar with it." The mechanism is quoted from the framing section: consumers "perceive prices framed as gains (i.e., discounts in a pricing context) as fairer than those framed as losses (i.e., surcharges or premiums), even if the situations are economically equivalent." The paper's own worked example is a hair salon that can present the same £10 difference either as a Friday and Saturday premium or as a Monday to Thursday discount, which is the exact choice a restaurant faces when it decides how to talk about a quiet night.

Step 3's insistence on choosing the fence before the price comes from the paper's treatment of rate fences, which it describes as what "allow customers to self-segment", with physical fences such as seat location and non-physical ones such as customer age or time. The caution in step 3 is quoted directly: a manager considering a surcharge for better tables "may first want to check if other restaurants are using the same practice", because "The risk associated with being the first to introduce a RM pricing policy may outweigh the potential financial benefits associated with that policy. The policy may be successful, but it can take a while to achieve that success, and customer goodwill will suffer in the process." The paper also prescribes explanation as the remedy, saying familiarity "can be enhanced in a number of ways, including brochures, signage, and employee explanations of price differentials", which is why the advert in step 6 carries the whole shape of the offer rather than a headline.

Where the skill departs from the source: the paper is academic, uses role-play scenarios rather than observed bookings, and is not about filling a quiet night at all, it is about whether variable pricing is seen as fair. The skill borrows only the framing rule and the fencing logic, and does not carry over any of the significance testing or claim any effect size for a UK restaurant. It also goes beyond the paper in one important respect: the paper is neutral about discounting, while the skill's step 5 pushes owners towards adding value instead of cutting price. That preference comes from the contribution arithmetic in step 2, not from the research.

2. Committee of Advertising Practice, UK Code of Non-broadcast Advertising and Direct & Promotional Marketing, section 3, "Misleading advertising"

https://www.asa.org.uk/type/non_broadcast/code_section/03.html, no publication date shown on the page, read 14 September 2026.

The CAP Code is the rule book the Advertising Standards Authority enforces against UK advertising, including a restaurant's own social posts, emails and window cards. It is the right authority here because a quiet-night offer is an advertisement, and the complaints that follow a badly written one go to the ASA rather than anywhere else.

Three rules shaped step 6 and check 5. Rule 3.17: "Price statements must not mislead by omission, undue emphasis or distortion." Rule 3.18: "Quoted prices must include non-optional taxes, duties, fees and charges that apply to all or most buyers", which for hospitality is the rule behind stating a price that already includes VAT and not springing a service charge in a way the advert did not prepare anyone for. Rule 3.22, on the phrasing every offer reaches for: "Price claims such as 'up to' and 'from' must not mislead by exaggerating the availability or amount of benefits likely to be obtained by the consumer." The section also carries rule 3.27, that "Marketers must make a reasonable estimate of demand for advertised products", and rule 3.28 on disclosing where supply at the advertised price may not be possible, which is why step 8 asks how many covers are actually being released.

Where the skill departs from the source: the code governs the advert, not the commercial sense of the offer. The skill treats compliance as the floor rather than the aim, and spends more of its length on the break-even count and cannibalisation than on the wording, because an offer can be perfectly compliant and still lose money on every cover it brings in. The skill also does not attempt to say whether a particular advert would be found in breach, which is the ASA's job on the facts of the advert.

3. Committee of Advertising Practice, UK Code of Non-broadcast Advertising and Direct & Promotional Marketing, section 8, "Sales promotions"

https://www.asa.org.uk/type/non_broadcast/code_section/08.html, no publication date shown on the page, read 14 September 2026.

Section 8 is the part of the code that applies once an advert becomes a promotion, which a quiet-night deal is. Rule 8.2 sets the standard of behaviour: "Promoters must conduct their promotions equitably, promptly and efficiently and be seen to deal fairly". Rule 8.9 removes the escape hatch most restaurants reach for, making clear that phrases such as "subject to availability" do not relieve promoters of their obligation to do everything reasonable to meet demand.

The operative rule for step 6 is 8.17, requiring that marketing communications state "all applicable significant conditions or information where the omission of such conditions ... is likely to mislead". The list of what counts as significant includes how to participate and any costs, start and closing dates, restrictions on participation, and the promoter's name and address, and closing dates must be prominent unless the promotion is limited only by availability. That list became check 4's requirement that the days, times, booking requirement, closing date and every exclusion sit on the advert itself.

Where the skill departs from the source: the code is written for promoters in general, much of it about prize draws and free mail-ins that a restaurant will never run, so the skill extracts only the significant conditions discipline and translates it into the specific list a hospitality offer needs, adding items the code does not mention by name such as which sittings the offer covers and whether bank holidays are excluded.

4. Digital Markets, Competition and Consumers Act 2024, Schedule 20, "Commercial practices which are in all circumstances considered unfair"

https://www.legislation.gov.uk/ukpga/2024/13/schedule/20, read 14 September 2026.

From the official publisher of UK legislation. Schedule 20 is the list of practices that are banned outright, with no need to show that any consumer was actually misled, which is what makes it a harder line than the CAP Code. It is the successor framework to the old unfair trading regulations and the Competition and Markets Authority enforces it.

The entry that drives step 7 and one of the hard rules is the false urgency ban: "Falsely stating that a product will only be available for a limited time, or that it will only be available on particular terms for a limited time, in order to elicit an immediate decision and deprive consumers of sufficient opportunity or time to make an informed choice." Also relevant and quoted in summary rather than in full are the bait advertising entries, which cover inviting purchases at a stated price where the trader has reasonable grounds for believing it cannot supply at that price, and the entry on providing materially inaccurate information about market conditions or availability.

Where the skill departs from the source: the Schedule is a legal prohibition and the skill does not attempt to interpret it. It converts the ban into an operational rule that is easy to obey, which is to release a real number of covers and print that number, rather than to reason about whether a given claim was false. The skill also says nothing about the enforcement regime or penalties, since an owner's practical question is what to write on the post, and the answer is the same either way: write the true number or write nothing.

Best public prompt we found for this job

The closest thing published is semperi/restaurant-marketing-skills, https://github.com/semperi/restaurant-marketing-skills, at 1 star, described as "Agent skills for independent restaurant marketing - review replies, review analysis, and menu copy. From the team behind Semperi." Star count read from https://api.github.com/search/repositories?q=restaurant+marketing+prompts&sort=stars&order=desc on 14 September 2026, not from a blog or a search snippet. A narrower query for restaurant promotion offer generator repositories returned a total count of zero. The rest of the field is zero-star: MirkoTP2000/gastronomy-brain, Sayemnyc/restaurant-ai-playbook and Karlo612/Food-Studio-catalogue-.

The idea worth taking is the framing used by Sayemnyc/restaurant-ai-playbook, which describes itself as including "a real ROI framework, and the failure modes the vendor decks don't mention". That is the right instinct and it is why step 2 puts a break-even cover count at the top of the plan and step 9 insists on checking whether the busy nights fell.

What was not copied, and why: none of these touch the CAP Code, Schedule 20 or the economics of a discount. They generate copy. Generating copy is the easy half and the dangerous half, because a well-written post for an offer that loses £4 a cover simply loses money faster. This skill deliberately spends its first two steps on arithmetic before a word of the advert is written, takes its pricing psychology from peer-published research rather than from marketing blogs, and ends with a rule that an offer must be reviewed or stopped, which no public prompt found here includes.

Want this running in your business?

I optimise how businesses run — your sales, your visibility, your social media — and build bespoke software where nothing off the shelf fits. The first conversation is free. Work starts from £150 a day.