Pricing Model
How each price component is added together in the booking flow.
Ticket Only bundles and Dinner Show packs are fixed group add-ons. Base admission remains charged per guest; selected bundles and packs are added once.
Decision Matrix
| Scenario | Booking Path | Bundle | Add-ons / Preorder | Formula |
|---|
| 1 | Ticket Only | Selected | N/A | Price = ticket-only(showSlug) × Guest Count + bundle(slug) |
| 2 | Ticket Only | No Bundle | No Addon | Price = ticket-only(showSlug) × Guest Count |
| 3 | Ticket Only | No Bundle | With Addon | Price = ticket-only(showSlug) × Guest Count + SUM(addon(slug)) |
| 4 | Ticket With Dinner | No Pack | N/A | Price = ticket-with-dinner(showSlug) × Guest Count |
| 5 | Ticket With Dinner | With Pack | N/A | Price = ticket-with-dinner(showSlug) × Guest Count + pack(packSlug) |
Lookup notation:
ticket-only(showSlug) — returns the show-only price for a given show (e.g., ticket-only("jazz-night") = 550,000) — see Jazz Night
ticket-with-dinner(showSlug) — returns the show + dinner price for a given show (e.g., ticket-with-dinner("jazz-night") = 1,150,000)
bundle(slug) — returns the bundle price for a given bundle slug (e.g., bundle("the-solo-feast")) — see Ticket Only Bundles
pack(slug) — returns the pack price for a given pack slug (e.g., pack("the-solo-toast")) — see Dinner Show Packs
addon(slug) — returns the addon price for a given addon slug — see Fulfillment Items
Legend:
Price Lookup Tables
ticket-only(showSlug) — Show only, no dinner
Returns the show-only price for a given show.
| Show | Slug | Price |
|---|
| Jazz Night | jazz-night | 550,000 |
| Vietnamese Cultural Dinner Show | vietnamese-cultural-dinner-show | 750,000 |
| Wild Cards Variety | wild-cards-variety | 850,000 |
| Midnight Hotel | midnight-hotel | 950,000 |
| Le Grand Cabaret | le-grand-cabaret | 850,000 |
| The Magic Cabaret | the-magic-cabaret | 850,000 |
ticket-with-dinner(showSlug) — Show + dinner course
Returns the show + dinner price for a given show.
| Show | Slug | Price |
|---|
| Edible Cinema | edible-cinema | 1,350,000 |
| Jazz Night | jazz-night | 1,150,000 |
| Vietnamese Cultural Dinner Show | vietnamese-cultural-dinner-show | 1,390,000 |
| Wild Cards Variety | wild-cards-variety | 1,490,000 |
| Midnight Hotel | midnight-hotel | 1,590,000 |
| Le Grand Cabaret | le-grand-cabaret | 1,490,000 |
| The Magic Cabaret | the-magic-cabaret | 1,490,000 |
Scenario Details
Scenario 1 — Ticket Only + Bundle
Price = ticket-only(showSlug) × Guest Count + bundle(bundleSlug)
The Ticket Only admission price is charged per guest. The selected bundle is a fixed group price for the matching guest-count tier and is not multiplied by guest count. See Ticket Only Bundles for all bundles.
Scenario 2 — Ticket Only, No Bundle, No Addons
Price = ticket-only(showSlug) × Guest Count
Guest pays only for show access. No food or drink pre-ordered.
Scenario 3 — Ticket Only, No Bundle, With Addons
Price = ticket-only(showSlug) × Guest Count + SUM(addon(addonSlug))
Guest adds pre-order food/drink items after Menu Review on top of the ticket.
Scenario 4 — Ticket With Dinner, No Pack
Price = ticket-with-dinner(showSlug) × Guest Count
Base Ticket With Dinner offer: seat + dinner course. Pack is optional.
Scenario 5 — Ticket With Dinner + Pack
Price = ticket-with-dinner(showSlug) × Guest Count + pack(packSlug)
Pack prices are fixed group add-ons on top of the base Ticket With Dinner offer. See individual pack pages for pack prices.
Ticket With Dinner — Base Offer
The Dinner Show offer is show-specific — each show has its own ticket-with-dinner price. The base offer always includes 2 fulfillments:
| Fulfillment | Slug | Quantity | Notes |
|---|
| Seat Admission | seat-admission | 1 | Show access for one guest |
| Dinner Course | dinner-course | 1 | Fixed per show — varies by show theme and menu |
These 2 fulfillments are always included. Packs add additional fulfillments on top of this base.
Children Guidance
Children do not have separate ticket products or discounted child tiers. isChildrenAllowed is only a content-suitability indicator in the booking UI. It helps guests understand whether the show content may be suitable for children, but the decision is entirely up to the guest. Every attending guest, including children, uses the same admission price because House of Legends is an intimate theater with limited seats.
Ticket With Dinner — Packs
Packs are add-on offers available in Choose Experience. They add extra fulfillments on top of the base (Seat Admission + Dinner Course).
Each pack has its own fixed group add-on price for the matching guest-count tier.
| Pack | Slug | Additional Fulfillments |
|---|
| The Solo Toast | the-solo-toast | Signature Cocktail |
| The Romantic Pack | the-romance-pack | Single Rose, George XV Brut |
| The Trio Pack | the-trio-pack | Chateau Baratet (bottle), Souvenir Polaroid |
| The Celebration Pack | the-celebration-pack | George XV Brut, Souvenir Polaroid |
| The Grand Pack | the-grand-pack | Chateau Baratet (bottle) ×2, Souvenir Polaroid |
| The Legend Pack | the-legend-pack | Chateau Baratet (bottle), George XV Brut, Souvenir Polaroid |
Pack price lookup: pack(packSlug) — returns the pack price for a given show (varies by show). See individual pack pages for prices.
Ticket Only — Bundles
Bundles are pre-composed food and drink packages added on top of Ticket Only admission. See Ticket Only Bundles for all bundles and prices.
Individual Add-ons
Extra items available after Menu Review only for the Tickets Only “No Extra Bundle” path. Add-ons are hidden for Dinner Show, VIP, and Tickets Only bookings with a selected bundle.
Note (a)
Scenario 1 uses fixed group bundle pricing. Ticket Only admission is still charged per guest. The bundle price is a single group add-on for the selected guest-count tier, so it is added once and never multiplied by guest count.