Dynamic Pricing lets a course charge people who join late for the sessions they have left, instead of the full Course/Program Price (term price).
When someone books the whole course, Clevero compares the Course/Program Price with the cost of the remaining sessions, calculated by multiplying the number of sessions left by the Session Price. The participant is charged whichever amount is lower, so they never pay more than the Course/Program Price for the course itself.
Dynamic Pricing is enabled separately for each course or program and is turned off by default. Courses where it remains off continue to use the existing pricing behaviour.
Dynamic Pricing allows you to:
Automatically calculate a fair price for late joiners without editing the course mid-term.
Keep your Course/Program Price as a full-course pricing option.
Apply the same pricing comparison to children's fees, calculated separately from the adult's fee.
Leave other courses and programs unaffected.
Clevero works the price out for each price level, every time someone books.
For example, a course has 8 sessions and this Pricing set up:
Price Level
Session ($)
Course/Program ($)
Membership Fee ($)
Casual
10
80
5
Concession
9
60
No membership Fee
Member
6
50
No membership Fee
Children can also join, with Session Pricing for Children of $5 and Course Pricing for Children of $40.
One session has already run, so 7 are left. Here's what a whole-course booking costs:
Price Level
Session ($)
7 sessions left × Session ($)
Course/Program ($)
Price Level
Casual
10Â
7 × 10 = 70
80
$70
Concession
9
7 × 9 = 63
60
$60
Member
6
7 × 6 = 42
60
$42
Each child
5
7 × 5 = 35
40
$35
Casual, Member and children pay for the 7 sessions left, because that costs less than their Course/Program Price. Concession pays its $60 Course/Program Price, because 7 sessions at $9 would cost $63. The price updates by itself as each session passes, so you don’t need to edit the course.Â
Casual bookings also pay the $5 membership fee on top if they're not a member. The membership fee is never reduced.
So a Casual parent booking with 2 children pays $70 + (2 × $35) = $140, plus the $5 membership fee if they're not a member.
These use the Casual level from the example: $10 a session, $80 Course/Program Price, $5 membership fee, 8 sessions. Children are $5 a session or $40 for the course.
Books before the course starts: 8 × $10 = $80, the same as the Course/Program Price. Pays $80.
Joins halfway, 4 sessions left: 4 × $10 = $40. Pays $40.
Parent and 2 children, 4 sessions left: Parent pays $40. Each child pays 4 × $5 = $20, which is less than $40. Pays $80 in total, plus the $5 membership fee if they're not a member.
A session gets cancelled: The number of remaining sessions decreases, which can reduce the price for participants who book afterwards. The final price still depends on the comparison between the remaining-session cost and the Course/Program Price.
Books one session only: Dynamic Pricing doesn't apply. Pays $10.
Session Price left blank: The whole-course price comes out at $0 and payment is skipped. Fix the course's Pricing.
Check these on the course before you turn it on:
Every price level has a Session Price. If one is blank, whole-course bookings at that level come through at $0.
All sessions are added and shown online. Only sessions with List online ticked, and not cancelled, count toward the price.Â
Your Course/Program Price is lower than paying for every session. For example, 8 sessions at $10 is $80, so set the Course/Program Price below $80 if you want early bookers to get a discount.
Dynamic Pricing is one extra setting on your existing courses and programs. The rest of your setup stays the same.
Open the Course/Program and click Edit.
2. Tick Dynamic Pricing. It appears under the Online Enrolment tab.
3. In Pricing, check that every price level has a Session Price ($). If children can join, check that Session Pricing for Children is filled in too.
4. Click on the Save button.
To see the price participants will get, open the course's booking page from its URL field.
A session counts toward the price only when all of these are true:
It belongs to the course.
It isn't cancelled.
It's listed online.
It hasn't reached its cutoff yet.
The cutoff is the session's Start Time by default. If you set End Booking By to End, a session continues to count towards the price until it finishes.
On the public booking page, sessions that have passed their cutoff show as Expired.
Cancelling a session or unticking List online reduces the number of remaining sessions. This can lower the price for participants who book afterwards.
Children work the same way as adults, but each child's price is worked out separately. Clevero compares two amounts and charges whichever is less:
The Course Pricing for Children, and
the sessions left × the Session Pricing for Children.
In the example above, a child joining with 7 sessions left pays $35 (7 × $5), because that's less than the $40 Course Pricing for Children. A child booking before the course starts pays $40, because 8 × $5 is also $40.
The membership fee is never discounted. It's added on top for non-members and for members whose status is Inactive.
Single-session bookings always use the Session Price.
One-off sessions always use their own activity fee.
Free courses are always $0.
Participants see the dynamic price on the course's booking page, already worked out. They don't see the formula, just the number.
If Allow Individual Session Registration is ticked, the page shows a Per Session and an All Sessions price for each level. The All Sessions price is the dynamic one.
If it isn't ticked, the page shows one Cost per level and a Register for Course/Program button.
When a participant opens the payment page, Clevero locks in the price temporarily to ensure the amount shown matches the amount used for payment.
The price quote expires after 30 minutes or at the next session's booking cutoff, whichever comes first. By default, the cutoff is the session's Start Time. If End Booking By is set to End, the quote expires at the session's end time instead.
If the quote expires or no longer matches the booking, the participant sees the message "The price has changed." They can click Back to details to return to the booking details and confirm the updated price.
When this happens:
The booking is not enrolled.
Any card hold is released automatically.
The participant is not charged.
If the card hold cannot be released, the participant sees "Please contact your administrator", along with the error code [CHRGE:N-RELEASED]. The money may still be on hold and requires manual follow-up in Pin Payments.
Q: Why did one participant pay less than another for the same course?
A: They booked later, when fewer sessions were left.
Q: A participant says the price changed while they were paying. Why?
A: A session started, or 30 minutes passed, while they were on the payment page. They go back and confirm the new price.
Q: Why did a booking come through at $0?
A: A price level has no Session Price, or no sessions are left. Check the course's Pricing and Sessions.
Q: Why didn't the price drop after a session passed?
A: That session may not be listed online, or End Booking By is set to End and the session hasn't finished yet.
Q: Why is a child's fee lower than the Course Pricing for Children?
A: Dynamic Pricing works out children’s prices the same way as adults’. Clevero compares the Course Pricing for Children with the sessions left × the Session Pricing for Children, and charges whichever is less. For example, with $40 for the course and $5 a session, a child joining with 7 sessions left pays 7 × $5 = $35, because that’s less than $40.
Q: Is the membership fee reduced as well?
A: No. The membership fee is always charged in full on top, for non-members and Inactive members.
Q: Does Dynamic Pricing change single-session bookings?
A: No. Booking a single session always uses the Session Price.
Q: Why is the transaction amount slightly higher than the enrolment amount?
A: The difference may be due to a card surcharge. The enrolment amount records the applicable course, membership and children's fees, while the transaction amount records the amount actually charged to the card, including any card surcharge.
Q: Why am I seeing "A price level must be selected" or "Cannot find the requested price level"?
A: The required price level may be missing or may have been deleted. Check the course's Pricing rows to confirm that the required price level exists.
Q: What happens if a card hold cannot be released after a price quote expires?
A: The participant sees "Please contact your administrator" with the error code [CHRGE:N-RELEASED]. The money may still be on hold, so the issue requires manual follow-up in Pin Payments.
Bookings after a session has started
Bookings are not completely blocked once a session has started. A participant who is already on the payment page may still be able to pay for a single-session or one-off booking for a session that started up to 30 minutes earlier.
Prices with more than two decimal places
Prices with more than two decimal places, such as $2.335, may round a cent differently from what you expect. To avoid unexpected rounding differences, keep prices to two decimal places.