To measure gym marketing ROI by club, count the joins each club signed, subtract the joins it would have signed without the extra spend, and value the difference at what a member is worth to you. The “would have signed anyway” number comes from a matched set of your own clubs where spend didn’t change over the same weeks.
Everything else is detail. Important detail, because fitness has two traps that make almost any campaign look brilliant: leads that never sign, and a January that would have happened without you.
What gym marketing ROI by club actually means
Return on investment needs three numbers per club. Get any one of them wrong and the ROI is fiction.
- Extra joins. New agreements signed at the club above what it would have signed without the spend. Not total joins, not leads.
- Value per join. Monthly dues × expected months of tenure, plus enrollment and annual fees you actually collect. Use the tenure of members who joined in the same month of the year, because January joiners often behave differently from September ones.
- Spend that reached the club. Media aimed at the club’s market or radius, split across clubs in that market by your usual rule.
ROI is then (extra joins × value − spend) ÷ spend. You can run it on dues revenue for a headline number, or on contribution after variable costs for a stricter one. Pick one and use it for every club.
Why January and lead counts make every club look profitable
Start with leads. A free-pass download, a tour booking or a form fill costs a few dollars on Meta. A signed agreement costs far more, because most leads never sign and some were members-to-be anyway. ROI measured on leads is ROI on a number your club software never sees.
Then January. Resolutions fill clubs whether you advertise or not, and anything you run that month inherits the surge.
Those are visits, not joins, but joins follow the same calendar. If your test clubs signed 1,500 members in November and December and 2,460 in January, a before-and-after read gives the campaign 960 joins. It earned a fraction of that. The rest was the calendar.
Getting joins by club out of ABC Fitness, Mindbody or ClubReady
You need one count per club per day: new agreements signed. Every major club system can export new-member sales by club to CSV. The work is in agreeing what counts as “new” before anyone looks at results.
| Field | Why it matters | Watch out for |
|---|---|---|
| Club ID and sale date | Ties each join to a club and a week | Use the agreement date, not the first check-in |
| New, rejoin or transfer | Transfers between your own clubs aren’t new members | Count rejoins, but report them separately |
| Membership tier | A premium join is worth more than a base join | Corporate and promo tiers can have very different tenure |
| Presale flag | Keeps founding members from being counted twice at opening | Presales logged in a separate CRM |
| Dues and fees collected | Feeds value per join | Waived enrollment fees are worth $0, not list price |
Keep cancellations in a separate file. They matter for value (tenure) but they’re not what the ads were trying to move this week, and netting them out makes the weekly series twice as noisy.
Worked example: January ROI for six clubs (illustrative)
An 18-club regional chain with $39 monthly dues waives its enrollment fee in January. In two metros it adds $1,000 a week per club of paid social, search and streaming video for six weeks, starting the week after Christmas: six clubs, $36,000 in total. The other 12 clubs keep their normal spend. From past January cohorts, the chain expects a January joiner to stay about 10 months, so a join is worth 10 × $39 = $390 in dues.
| Club | Expected joins (twin) | Actual joins | Extra joins | Cost per extra join | ROI on dues |
|---|---|---|---|---|---|
| Club 1 | 420 | 490 | 70 | $86 | 355% |
| Club 2 | 390 | 450 | 60 | $100 | 290% |
| Club 3 | 370 | 425 | 55 | $109 | 258% |
| Club 4 | 350 | 400 | 50 | $120 | 225% |
| Club 5 | 330 | 375 | 45 | $133 | 193% |
| Club 6 | 300 | 320 | 20 | $300 | 30% |
| All six | 2,160 | 2,460 | 300 | $120 | 225% |
- Naive read. 2,460 January joins − 1,500 in the prior six weeks = 960 “campaign” joins, or $37.50 each.
- Twin read. The 12 steady-spend clubs, weighted to match, say the six would have signed 2,160 anyway. Extra joins: 2,460 − 2,160 = 300.
- Cost. $36,000 ÷ 300 = $120 per extra join, more than three times the naive figure.
- Return. 300 × $390 = $117,000 in expected dues. ROI = ($117,000 − $36,000) ÷ $36,000 = 225%.
- By club. Club 1 returns 355% (70 × $390 = $27,300 on $6,000). Club 6 returns 30% (20 × $390 = $7,800 on $6,000).
The campaign worked. It just worked a third as well as the naive read claimed, and almost not at all at one club. If the chain wants every dollar back twice in dues, the most it can pay for an extra join is $390 ÷ 2 = $195. Five clubs clear that bar. Club 6 doesn’t come close.
Before cutting Club 6, look at why. In January the usual culprit is capacity: if the squat racks are three deep at 6pm, more advertising doesn’t sign more people. It annoys the ones you have.
Measuring presales before a club opens
A new club has no history, so there’s no twin in the usual sense. What you do have is every past opening. Line up their cumulative presales by weeks before opening, not by calendar date, and you get an expected pace with a typical spread around it.
Each week, plot the new club against that band. A club running below the band eight weeks out has time to fix it: more media, a sharper founding rate, a street team at the grocery store next door. A club that’s still below it at week two needs a different conversation. The same comparison, carried past opening day, tells you whether launch media added members or just pulled presales forward. Our guide on how to measure a grand opening covers the post-opening ramp in more depth.
Two rules keep presale ROI honest. Flag presales in the export so they aren’t counted again when members first check in. And value founding members at the founding rate they actually pay, which is usually lower than standard dues.
Capacity, churn and the other things club ROI hides
Peak-hour capacity
Your fullest clubs post the most joins and the least lift. If a club’s 5–7pm floor is consistently packed, treat its ad budget as the first candidate to move, and check whether the extra joins you do get there cancel faster.
January cohorts churn differently
Pull tenure by join month from your club software. If January joiners stay seven months and September joiners stay fourteen, a January join is worth half as much, and the ROI table above should use the smaller number. Don’t borrow an industry average when your own data is sitting there.
Referral bonuses, corporate deals and price promos
A $0-enrollment weekend or a corporate partnership at one club behaves like media: it moves joins at that club only. Log them by club and date, or the comparison will credit your ads with them.
How to plan a club-level test around January
- Pick clubs in pairs. Group clubs that tracked each other closely last year, then pick at random which one in each pair gets the extra spend.
- Start before the surge. Launch in the last week of December so the campaign covers the whole of January, and keep the comparison clubs’ spend flat.
- Run six to eight weeks. Shorter tests can’t separate a few dozen extra joins from normal week-to-week noise.
- Size it first. If a club signs 60 joins a week and your test can detect a 10% lift, you need about 6 extra joins a week per club. At $120 each, that’s $720 per club per week. Spend less and you’re buying an inconclusive result.
- Read it with a tail. Keep counting for two to four weeks after media stops. Some people tour in January and sign in February.
Common mistakes when measuring gym ROI by club
- Counting leads. Free passes and tour bookings are a funnel stage, not a return.
- January vs. December. The single most common way to overstate fitness ROI by a factor of three.
- Counting transfers as joins. A member moving clubs is not new revenue.
- Using list price. Waived enrollment fees and founding rates are what you actually collect.
- One tenure for every month. Use cohort tenure by join month from your own data.
- Even budgets across clubs. Full clubs and clubs with open capacity don’t respond the same way to the same dollar.
- Double-counting presales. A founding member is one join, at presale, not another at opening.
Questions people ask about gym marketing ROI
What is a good marketing ROI for a gym?
It depends on what a member is worth to you, which is why there’s no universal benchmark. Work out value per join from your own dues and cohort tenure, then decide the minimum return you need. A club returning less than that on extra joins, measured against a twin, should lose budget to clubs returning more.
How do I calculate cost per acquisition for a gym?
Divide the spend that reached a club by the extra joins it produced, not by all joins and not by leads. Extra joins are actual joins minus what a matched set of steady-spend clubs says the club would have signed anyway. That gives cost per extra join, the number you can compare with member value.
How do I export new members from ABC Fitness or Mindbody?
Run the new-member or sales report by club for the date range you need and export it to CSV. Include sale date, club, membership type and whether it was a new join, rejoin or transfer. Countlift takes that file as a daily or weekly upload and you map the columns once.
How do I measure marketing during January?
Compare clubs that got extra spend with clubs that didn’t, over the same January weeks. Both sides get the resolution surge, so it cancels out. Never compare January with December or with the same club’s November, because the season alone will make any campaign look like a hit.
Do I need member names or payment data?
No. Club-level ROI needs daily counts of joins by club, and revenue if you want it. Names, contact details and payment information never need to leave your club software for this kind of measurement.
Measured on joins against a twin, most club portfolios split cleanly: clubs where every extra dollar signs members, and clubs that were going to fill anyway. Fund the first group, trim the second, and do it before next January rather than after.
Next step
Put your own locations through the comparison.
Your first location report is free at any size. Bring a CSV of weekly sales and spend, or connect your POS and ad accounts.
Written by The Countlift team at First Byte in The Woodlands, Texas. Questions or corrections? Email hello@countlift.com.