Use person types in WooCommerce Bookings to charge different amounts for adults and children on the same booking form.
Scenario
↑ Back to topA theater charges 30 US dollars per adult and 15 US dollars per child for a three-hour performance. A booking for two adults and one child should cost 75 US dollars, before tax or other charges.
Setup and configuration
↑ Back to topBefore you begin, install and activate WooCommerce and WooCommerce Bookings. Create a bookable product with the duration and availability your service needs, then test these prices on a test site. This example uses a fixed three-hour block and US dollars, with no additional cost rules or taxes.
- Edit the bookable product under Products. In Product data, enable Has persons.
- On Costs, set the product’s Base cost and Block cost to 0. Leave Display cost empty so Bookings calculates the displayed price. Person-type prices are added to product costs, so a nonzero product cost would add another charge.
- On Persons, set Min persons to 1 and Max persons to 6. These limits apply to the combined number of adults and children in one booking; choose limits that suit your business.
- Leave Multiply all costs by person count unchecked for this example. Each person type’s base cost already applies to every person of that type.
- Select Enable person types, then select Add Person Type twice. Expand each person type and enter the settings below.
| Person type | Settings |
|---|---|
| Adult | Person Type Name: Adult Base Cost: 30 Block Cost: 0 Min: 0 Max: 6 |
| Child | Person Type Name: Child Base Cost: 15 Block Cost: 0 Min: 0 Max: 6 |
Setting each type’s Min to 0 lets customers book without that type—for example, adults without children. The overall minimum of one still applies. Description is optional text shown beside the quantity field; entering a price there does not configure the charge. The screenshot uses descriptions of 30 US dollars and 15 US dollars.
Use Base Cost for a charge that applies once per person for the booking. A person type’s Block Cost adds a charge per booked block, so leave it at zero for this example.

If each attendee uses one seat, enable Count persons as bookings on Persons and set Availability > Max bookings per block to the show’s seat capacity. For example, a capacity of 50 allows up to 50 attendees across bookings for that time slot. This capacity setting is separate from the maximum of six people in one booking.
Select Update, or Publish for a new product, to save your changes.
Customer view
↑ Back to topCustomers enter the number of adults and children, then choose an available date and time. For two adults and one child, the booking form should show a cost of 75 US dollars and an enabled Book now button.

Verify the prices
↑ Back to topOn an available date and time, check these combinations before accepting bookings. The expected totals exclude tax, coupons, and other charges.
- One adult and no children: 30 US dollars.
- No adults and one child: 15 US dollars.
- Two adults and one child: 75 US dollars.
- Zero people, or more than six people combined: the booking cannot proceed.
If the price is unexpected
↑ Back to topIf Adult and Child fields are missing, check that Has persons and Enable person types are enabled and both types have been saved. If the total is too high, check product and person-type base and block costs, the multiplier, cost rules, and taxes. Changing Description alone does not change the price.
If an adult-only or child-only booking is blocked, check the minimum for each person type and the combined minimum. If a valid group cannot book a time, check the combined maximum and remaining slot capacity. After changing settings, reload the product page and choose the date and time again.
Questions and support
↑ Back to topSomething missing from this documentation? Still have questions and need assistance?
- If you have a question about a specific extension or theme you’d like to purchase, contact us to get answers.
- If you already purchased this product and need some assistance, get in touch with a Happiness Engineer via our support page and select this product’s name from the Product dropdown.