Skip to main content

March 10, 2026 · Bam Good Time

How to Handle Mahjong Club Finances: Revenue, Passes, and Discounts

Track event revenue, sell series passes and punch cards, offer discount codes, and keep your mahjong club's finances organized — all in one dashboard.

Most mahjong clubs collect $5-$15 per session, but tracking who paid — and managing series passes, punch cards, and discount codes — can get messy fast. Bam Good Time centralizes your club finances: event revenue, multi-session packages, punch card tracking, and promotional discounts all in one dashboard.

Whether you're running a casual weekly game or a 40-player club with multiple pricing tiers, having your finances in one place means less time chasing payments and more time shuffling tiles.

Common Pricing Models for Mahjong Clubs

Every club is different, but most fall into one of these patterns:

  • Per-session fee ($5-$15) — The most common. Players pay each time they show up.
  • Multi-session series — Pay once for a block of events, like a 6-week Tuesday night series.
  • Punch cards — Prepay for a set number of sessions and use them whenever.
  • Seasonal membership — A flat fee that covers all events for a period.
  • Free with optional donations — Pass a jar for room rental or snacks.

Most growing clubs end up using a combination — per-session fees for drop-ins, series passes for committed regulars, and the occasional discount code to fill empty seats.

Event-by-Event Payments

The simplest model is charging per event. A player RSVPs, pays at registration, and shows up ready to play. No passes, no math, no "how many sessions do I have left?"

With Bam Good Time, you can accept credit cards via Stripe when players register online. You can also track Venmo and cash payments at check-in so you have a complete record regardless of how people pay. And if an event is free — a teaching night, a social mixer, a holiday party — you can skip payment entirely and just collect RSVPs.

The key detail: payments go directly to your connected Stripe account. Bam Good Time never touches your revenue. You connect Stripe once during setup, and every credit card payment flows straight to your bank. Standard Stripe processing fees (2.9% + 30 cents) apply, but BGT doesn't add anything on top — the platform runs on a monthly subscription, not a percentage of your earnings.

Series Passes: Pay Once for a Block of Events

Series passes are perfect for structured play — a weekly game that runs for 6 or 8 weeks, a seasonal league, or a beginner class that meets every Saturday in March.

Here's how it works: you create a series, link a group of events to it, and set a single price. Players pay once for the whole series and then RSVP to individual events within it. This gives you the financial commitment upfront while still letting you track attendance on a per-session basis.

Players love it — one payment, done, guaranteed seat, usually at a slight discount. Organizers love it more — predictable revenue before the first tile is drawn, higher commitment (players who prepay show up), and no weekly payment tracking.

Series events don't clutter your club's main event feed. The series shows up as a single card that players can browse, purchase, and then RSVP to each session from within.

Punch Cards: Prepay for N Sessions

Where a series is tied to specific events, a punch card is a flexible pass. A player buys, say, 10 sessions. Each time they register for an eligible event, one punch is automatically deducted. They can use them at Tuesday's game, Thursday's game, or a special weekend tournament — anywhere the card applies.

You create the card, set the number of punches and the price, and mark which events are eligible. When a player with remaining punches registers, the system handles the rest — no manual tracking, no mental math, no crossed-out boxes on a literal card.

Punch cards are especially useful for:

  • Regulars who attend multiple games per week. A 20-punch card at a discounted rate rewards your most active players.
  • Clubs with variable schedules. If your events aren't on a fixed weekly cadence, punch cards give players flexibility that series passes can't.
  • Drop-in players. Someone who plays twice a month can still benefit from prepaying at a bulk rate.

You can offer both series passes and punch cards simultaneously. Some clubs use series passes for their flagship weekly game and punch cards for everything else.

Discount Codes

Discount codes let you adjust pricing without changing the event itself. Bam Good Time supports two types:

  • Percentage-off — Take 20% off, 50% off, or even 100% off (free admission).
  • Fixed-amount — Knock $5 off a $15 event, for example.

You can scope codes to a specific event — useful for one-time promotions — or make them club-wide so they work on any event or package. Players enter the code at checkout, the discount applies, and the adjusted amount is what gets charged.

A few ways clubs use discount codes in practice:

  • New member specials. "First game free" is a powerful way to get someone through the door.
  • Loyalty rewards. Send a discount code to players who have attended 10+ events.
  • Referral incentives. "Bring a friend and you both get $5 off."
  • Filling low-attendance events. A last-minute 50% code can turn an empty Wednesday afternoon into a full table.

Discount codes also work with series passes and punch cards — not just individual events. So you can run a "20% off your first punch card" promotion to get new players started with a package.

Revenue Tracking and Reporting

Collecting money is only half the equation. Knowing where it went — and where it's coming from — is what turns a hobby into a well-run club.

Your Bam Good Time dashboard shows you:

  • Total revenue across all events, broken down by time period
  • Payment method breakdown — how much came in via Stripe, how much was Venmo, how much was cash
  • Per-event earnings — see which games are your moneymakers and which are underperforming
  • Package sales — track series pass and punch card revenue alongside single-event payments

Revenue data helps you make better decisions. If your Thursday game consistently brings in twice the revenue of your Saturday game, maybe Thursday gets the bigger room. If punch card sales spike in January, that's the time to launch new packages. And because Stripe handles the actual payment processing, you also get Stripe's own reporting — deposits, refunds, fees, and payout history — alongside what BGT tracks.

Keeping It Simple

The best financial setup is the one your players barely notice. They register, they pay (or their punch card covers it, or their series pass handles it), and they show up to play. No confusion, no "I thought I already paid," no IOUs.

On your end, it means one dashboard instead of a notebook, a spreadsheet, and a stack of cash in an envelope — so you can spend your time running a great club instead of doing accounting.

If you're ready to get your club's finances organized, start with a free Bam Good Time club and set up your first event. For a broader look at running your club online, check out our complete guide to managing a mahjong club or dive into collecting payments for mahjong events.