Core Features

Pricing Rules

Dynamic pricing with dimension multipliers, compound conditions, and min/max caps.

How the Pricing Engine Works

BookingMachine's pricing engine is a pure function that runs identically in the widget (for instant quotes) and on the server (for validation). The server always re-validates — it never trusts the client-side calculation.

The Pricing Algorithm

Quotes are calculated in this exact order:

  1. Base price — The starting price you set for the service

  2. Dimension multipliers — Stacked (multiplied together) based on customer selections

  3. Conditional rules — Compound conditions applied as surcharges or discounts

  4. Add-ons — Flat amounts added for each selected add-on

  5. Package discount — Percentage discount if booking a package

  6. Recurring discount — Percentage discount for recurring bookings

  7. Min/max caps — Final price clamped to your configured minimum and maximum

  8. Banker's rounding — Final amount rounded to nearest cent using banker's rounding

Dimension Multipliers

Multipliers are stacked (multiplied together). Configure dimensions in Dashboard > Services when editing a service.

Stacking Example

If SUV = 1.3x and Poor Condition = 1.5x, the combined multiplier is 1.3 x 1.5 = 1.95x. A $100 base price becomes $195.

Conditional Rules

Create compound conditional rules in Dashboard > Services > Pricing Rules:

Rule TypeExampleHow It Works
Distance surcharge> 20 miles = +$15Flat fee or percentage based on distance from base location
Time-of-dayBefore 8 AM or after 6 PM = +15%Surcharge for early morning, evening, or after-hours
Weekend surchargeSaturday/Sunday = +20%Automatic premium for weekend bookings
Loyalty discount5+ bookings = -10%Discount for returning customers after N bookings
CompoundXL + Poor = +20%Combine multiple conditions into a single rule

Min/Max Caps

Set minimum and maximum price caps per service. If the calculated price falls below the minimum, it's bumped up. If it exceeds the maximum, it's capped. Prevents extreme quotes from unusual dimension combinations.

Configure min/max caps in the service editor under "Price Caps".

Testing Prices

Use the price calculator in Dashboard > Widget to preview quotes. Select dimensions and add-ons to see exactly what customers would be quoted before going live.

Tip: The pricing engine has 70+ automated tests. Your configured rules are evaluated deterministically — the same inputs always produce the same quote.