Skip to content

Practice Sessions — Pricing Scheme & WooCommerce Plugin Spec

Created 2026-02-25
Status for-review
Tags practice-sessionspricingwoocommercepluginfor-review

For Ksenia to review. Covers the sliding scale pricing logic, alumni discount resolution, WooCommerce plugin requirements, and practice platform page update direction. Developed Feb 25, 2026.


The practice sessions file lists 90-minute time blocks. The actual practice duration is 70 minutes, with a 10-minute buffer on each side for arrival and departure. All pricing and descriptions should reference 70 minutes of practice, not 90.

16 sessions total: March 15 – June 27, 2026

  • March: 3 sessions
  • April: 4 sessions
  • May: 5 sessions
  • June: 4 sessions

Base single-session rate: $38.00 CAD pre-tax

Discount increases linearly at 3.5% per additional session purchased in a single transaction, capped at 49% for 15–16 sessions. The discount resets with every new purchase — there is no grandfathering from previous transactions.

SessionsDiscountPer session (CAD)Total pre-taxTotal w/ QC tax
10.0%$38.00$38.00$43.69
23.5%$36.67$73.34$84.32
37.0%$35.34$106.02$121.90
410.5%$34.01$136.04$156.41
514.0%$32.68$163.40$187.87
617.5%$31.35$188.10$216.27
721.0%$30.02$210.14$241.61
824.5%$28.69$229.52$263.89
928.0%$27.36$246.24$283.11
1031.5%$26.03$260.30$299.28
1135.0%$24.70$271.70$312.39
1238.5%$23.37$280.44$322.44
1342.0%$22.04$286.52$329.43
1445.5%$20.71$289.94$333.36
1549.0%$19.38$290.70$334.23
1649.0%$19.38$310.08$356.51

All prices in CAD. QC tax = GST 5% + QST 9.975% = 14.975% combined, applied to pre-tax total. Exchange rate not applicable — practice sessions are priced and sold directly in CAD.

  • Single session ~$44 CAD all-in (comparable to a boutique Pilates class)
  • 5 sessions ~$188 CAD all-in (14% off)
  • 10 sessions ~$299 CAD all-in (31.5% off)
  • Full season (16) ~$357 CAD all-in (49% off) — close to the Spring Study Group early-bird price, which reinforces the value narrative

The existing 20% alumni discount (available to all past educational program participants, excluding campaign-priced products) conflicts directly with the sliding scale for practice sessions.

With a flat 20% alumni discount:

  • Single session drops to $30.40 — cheaper than the 3-session pack rate ($35.34)
  • The 3-pack and 5-pack become effectively irrelevant for alumni
  • The entire incentive structure for volume commitment collapses

Recommended resolution:

  • Exclude practice sessions from the flat 20% alumni discount
  • Alumni instead get access to the sliding scale pricing, which is not available to the general public
  • Frame this as: “As a Baseworks program graduate, you have access to our volume pricing for practice sessions”
  • The flat 20% alumni discount continues to apply to all other eligible products (Primer renewals, future study groups, etc.) as before

This keeps the alumni benefit meaningful, makes the volume incentive coherent, and avoids the pricing contradiction.


A custom plugin is needed to implement the sliding scale at checkout. No existing WooCommerce plugin handles continuous per-unit discount scaling with a per-transaction reset cleanly enough for this use case.

  • Product type: individual practice session passes (single SKU with quantity selector)
  • Discount formula: discount = min((quantity - 1) × 0.035, 0.49)
  • Per-session price: $38.00 × (1 - discount)
  • Total pre-tax: per-session price × quantity
  • Display: show both the per-session price and the discount percentage dynamically as the user adjusts quantity in the cart
  • Reset behaviour: discount calculated fresh on each new order — no memory of previous purchases
  • Tax: standard WooCommerce Quebec tax rules apply (GST + QST on pre-tax total)
  • Access control: pricing available only to logged-in users with the alumni/graduate role (not publicly visible)

The cart/product page should show something like:

Practice Session Pass Quantity: [selector] Per session: $XX.XX (X% off) Order total: $XXX.XX + tax

As quantity changes, the per-session price and discount percentage update in real time.

This can be built as a lightweight WooCommerce extension using the woocommerce_before_calculate_totals hook to apply dynamic pricing, combined with a small JavaScript snippet for real-time display updates on the product/cart page. Claude can assist with drafting the plugin code when development is ready to begin.


Practice Platform — Page Update Direction

Section titled “Practice Platform — Page Update Direction”

The current baseworks.com/practice page publicly displays three subscription tiers (BASE $20/m, CYCLICAL $32/m, DEEP $48/m) with new subscriptions currently closed.

Proposed direction:

  • Remove all public-facing pricing from the page
  • Reframe subscription access as gated to program completions — Primer graduates, Study Group alumni, etc.
  • Replace pricing section with one of:
    • A “contact us” prompt: “Access to our practice platform is available to program participants. Contact us to find out which plan is available to you.”
    • Or: “Upon completing your program, you’ll receive information about continuing your practice on our platform.”
  • Keep the feature descriptions and platform overview visible — the page still serves as a reference for prospective students evaluating the full Baseworks ecosystem

This is not yet a final decision. Patrick and Ksenia to confirm direction before any page edits are made. See also: Practice Platform overview for full restructuring context.