Set up a Studio Pass

Create a monthly, class pack, or drop-in pass that gives members access to classes across instructors.

Prerequisites

  • Feature: Studio Pass must be enabled in Settings → Features.
  • Collective Mode must be active.

• Role: Owner

1

Go to Passes in the sidebar

Click "+ Create Pass".

2

Choose pass type

Monthly (recurring auto-renewal), Class Pack (one-time purchase, fixed number of classes), or Drop-in (one-time, single session). Monthly creates a Stripe subscription; the others are one-time payments.

3

Set pass details

Name and price are always required. The class-count field depends on the pass type: Monthly shows Unlimited / Limited (and a number when Limited); Class Pack shows a single "Classes in this pack" field (the total a buyer gets — e.g. enter 2 for a 2-class intro pack); Drop-in implies 1 class so no field appears. Three expiry modes: No expiry (pass never lapses); Valid for N days / weeks / months after purchase (preset shortcuts for 1, 3, 4, 6 months and 1 year — months are counted as 30-day periods); Fixed expiry date (all purchases end on the same calendar date — ideal for class series that all expire on the last session date).

4

Pick a pricing mode (class packs & drop-ins only)

Default is "Fixed price". Switch to "Pay What You Can" to offer sliding-scale pricing — useful for donation-based studios and equity pricing. Set a Minimum (use $0 for no studio-side floor) and a Suggested price (the highest amount you'd charge). Buyers see the range on the widget and pick any amount ≥ the minimum at checkout. Note: Stripe charges have a $0.50 hard floor regardless of what you set, so very small or fully-free claims need to be handled outside the widget. Monthly passes don't support sliding scale since Stripe subscriptions require a fixed price.

5

Restrict to specific classes (optional)

Select which class templates the pass covers. Leave empty to allow all classes. Useful for passes tied to a specific discipline or instructor. This also decides whether buying the pass books the buyer: restrict a drop-in pass to one class and, when that class has a single upcoming session, the purchase books them into it automatically and the teacher is notified.

6

Configure distribution

At the end of each month, pass revenue is attributed to instructors based on class attendance so you can see who earned what. Note: automatic Stripe payouts of instructor shares are currently paused while we upgrade cross-border payouts — for now pass revenue stays with your studio and you pay instructors from it (membership-class instructors can be paid from the "Pay via Stripe" report).

Tips
  • Monthly Limited vs Class Pack: a Monthly Limited pass resets its class count every renewal period (e.g. 8 classes/month). A Class Pack is a one-time bucket that is used up over time with no monthly reset (e.g. a 10-class punch card). If you mean a punch card, pick Class Pack — not Monthly + Limited.
  • Start with semi-auto to review distribution amounts before they're sent to instructors.
  • Stripe fees, Klasly fees, and Studio Fee are deducted before distribution.
  • How the money flows: pass revenue (minus only Klasly's small platform fee) goes to your studio's Stripe balance, and the monthly report shows each instructor's share by attendance. Automatic Stripe payout of those shares is currently paused while we upgrade cross-border payouts, so you pay instructors from your studio balance for now (membership-class instructors via the "Pay via Stripe" report).
  • Comp passes vs gifted classes in distribution: a manually-assigned pass (added via "Assign pass" with no Stripe payment) is excluded from the pool — no money was collected, so counting its classes would pay instructors out of revenue you never received. Gifted classes are different: the giver already paid for them, so a gifted class still counts toward the instructor pool (drawn from the giver's purchase), just not as new revenue. Either way, comp/gift classes still count toward the member's own usage limit.
  • Distributions (each instructor's share by usage) are calculated on the 1st of each month based on the previous month's usage — a report of who earned what. Automatic Stripe payout of those shares is currently paused while we upgrade cross-border payouts.
  • Selling one specific class as a pass? Make it a Drop-in pass and restrict it to that one class. Buying it then books the buyer in, the class appears on the teacher's attendance sheet, and the teacher gets the usual booking notification. Without that restriction the purchase grants the pass only — the buyer still has to book the class themselves, and until they do the teacher sees no one registered.
  • A buyer who reaches checkout from a class row is booked into that class whatever the pass is scoped to. It is the bare pass link (shared by itself, outside the schedule) that relies on the restriction above to know which class was meant.
  • Unused tickets: Passes shows an amber "unused tickets" banner whenever someone holds a paid drop-in ticket that never became a booking. The page behind it lists every such ticket studio-wide — including expired ones and tickets not tied to any class ("Any class") — with filters by status and class. From each row you can book the holder into an upcoming session (the ticket is spent — an expired one can still be honoured this way, at no extra charge) or refund them. Gift-claimed tickets show the gift sender instead of a price.
  • Use "Fixed expiry date" for class series — set the last day of the series so all subscriptions expire together regardless of when each member signed up.
  • Need an unusual duration like 4 months? Use "Valid for…" and type any number — Klasly converts months × 30 days behind the scenes.
  • Class restrictions are enforced at booking time — a restricted pass won't be offered for classes it doesn't cover. They also scope the pass catalog: when a member taps "Get a pass or plan" from a specific class — in the app's My Passes page OR from the "Sign up" button on your website's embedded schedule widget — only the passes valid for that class are shown. Unrestricted passes always appear, and if no pass covers the class the full catalog is shown so the buyer isn't left with nothing.
  • Classes an instructor adds through self-scheduling can't be picked in a pass's class list, so restricted passes never apply to them — members can only use unrestricted passes (or credits) there. A pass with no class restrictions applies to EVERY class, including instructor-added ones; if that's not what you want, restrict the pass to the classes it should cover.
  • See which passes cover a class from the class side too: open Classes → click a class to edit it, and the "Passes for this class" section lists every pass a member could use to book it. Each row shows whether the pass applies to all classes or is specific to this one, with its price; click a pass to jump to its settings. The reverse of picking classes on the pass — handy when you're looking at a class and want to confirm it's actually bookable with a pass.
  • Renewal reminders: Klasly automatically emails members 7 days before their pass expires (and again on the expiry day) so they can buy again before they lose access. Stripe-renewing monthly passes are skipped — Stripe handles those.
  • To edit an existing pass, click "Edit" on the pass card on the Passes page. You can change the name, description, price, class limits, expiry rules, class restrictions, and active/inactive status. Price changes create a new Stripe price under the hood — existing subscribers keep their original price.
  • Change history: the Edit Pass page has a Change history section at the bottom. Expand it to see when the pass was created and every edit since — each row shows who made the change, their role, and when. Useful for confirming a price change landed or tracing who adjusted a pass.
  • Passes vs Class Pricing: Passes can be restricted to specific classes; Settings → Class Pricing is studio-wide credits and subscriptions. Use Passes for class-specific packs; use Products for general studio credits.