Free 20-minute site & search audit for martial arts schools — 6 slots left this month

Should I publish my membership prices?

Updated Aug 28, 2026·4 min read·By Ryan Deming
Short answer

Yes. Hiding them filters out price-sensitive people and excludes you from every AI comparison of local schools.

The objection is real and it still loses

You hide the number because you believe you can sell it. On a tour you can walk someone past the mat, explain why a twelve-person fundamentals class costs more than a treadmill, and close. That works. It works on everyone who calls.

The question is what hiding does to how many people call. Nielsen Norman Group has watched this in usability sessions for years: price is the single most-needed piece of information on a site, and when it isn’t there, participants go to a competitor’s site rather than pick up the phone. That research is B2B and it is old. The behaviour isn’t — in a 2025 survey of 1,040 US homeowners hiring home-service pros, 93% said instant estimates influence who they hire and 77% named hidden costs as a frustration.

Hiding the price does not filter for serious buyers. It filters for people willing to spend a phone call to find out a number — and the parent comparing three schools at 9pm on a Tuesday is not making three phone calls. They call the one that told them.

We publish ours: $497 setup and $147/mo, $547/mo with search work, from $3,800 to buy the build outright. We ask clients to do the same, for the same reason.

What an answer engine can quote

This part is a mechanism, not a study. Google’s guidance for AI Overviews and AI Mode says a page has to be indexed and eligible to appear in Search with a snippet, and tells you to make sure “important content is available in textual form.”

A price that exists only in a sales call is not text. Neither is a rate card saved as a JPG, a PDF price sheet, or a number that appears after someone fills in a form. All three look published to you and are invisible to the thing summarising how much is BJJ in your city.

Schema does not rescue you. Google’s structured data policy is blunt — “Don’t mark up content that is not visible to readers of the page.” You can put a priceRange on your LocalBusiness markup, but it describes a number that is already on the page; it cannot manufacture one. The AI features page says the same thing from the other side: there is no special structured data that gets you into those answers.

No study has measured how many extra citations a published price earns. The argument is simpler than a statistic: an engine cannot quote a number that isn’t there.

Where the number goes

In text, on the program page, next to the thing it buys. Adult tuition on the adult page. Kids on the kids page. A single pricing page that carries the whole card for the person who wants to see it at once.

Above the trial CTA, not below it. Someone who has to scroll past a free-trial button to hunt for a price has already decided you are hiding something, and the button is what they blame.

Publish the parts people otherwise find out on week three: the registration fee, whether the gi is included, whether that monthly figure is month-to-month or a twelve-month agreement, what the second family member pays. The frustration in that hidden-costs number is about the surprise, not the amount.

How to handle tiers and starting at

Most schools have more than one price — kids and adults, gi and no-gi, twice a week and unlimited, a family rate. That is a formatting problem, not a reason to publish nothing.

What you publish Works when Backfires when
Every program, exact figures You have four or five tiers and they’re stable —
“Starting at $X” The floor is a real price real people pay — the 2x/week kids rate, say Nobody is actually on the floor rate
A range, $129–$189 Rates genuinely move with agreement length or family size You’re using it to avoid committing to any number
“Contact us for pricing” You quote per person, which a school does not Always

We use “starting at” on exactly one line — the buyout, where scope really does move the number — and exact figures everywhere else. That’s the test. “Starting at” is honest when the variation is real and a dodge when it isn’t.

If you cannot publish it the price is the problem

The unspoken reason a lot of schools hide the number: it does not survive being read next to the big-box place two blocks away, and the owner knows it.

Publishing forces you to write the answer down — why coached mat time, a real fundamentals track, and a kids’ class that isn’t babysitting is a different product than a keycard and a squat rack. That is the argument you were already making on the phone. On the page, it makes itself at 9pm on a Tuesday while you’re teaching the last class.

Where we sit

We publish ours — $497 to start, $147/mo, $547/mo with the search program, from $3,800 to own the build — which is the only reason we get to push you on yours. It is one of the few things we will argue with a client about, and the argument above is the one we make. Ours, in text.

All answers

Every question school owners ask us, answered straight.

Browse all 12 →