Small Businesses · independent gym · historical consulting engagement
Positioning an independent boxing gym against chains that had already framed the comparison
A consulting engagement with an independent boxing and fitness gym, scoped to positioning and local demand only. No media was run and no site was built. The work was deciding what the gym was actually competing on — and handing the owner a prioritised list of local-visibility fixes to execute.
At a glance
The engagement in brief
Services
- Positioning
- Local SEO
Stack
- Google Business Profile
- Google Search results
- Local competitor review listings
The situation
What we walked into
An independent boxing and fitness gym competing in a market where the budget chains had already set the price expectation and the boutique studios had set the aesthetic one. The gym's real advantage was neither of those. It was coaching, and a room where somebody who had never thrown a punch was not the odd one out. None of that appeared anywhere a prospective member would look. The listing and the site described equipment, class times and opening hours, which is what every competitor within driving distance also described, at prices the gym could not match. The engagement was scoped narrowly and deliberately: positioning and local demand, no media, no build.
The gym was describing its equipment and its opening hours, which is exactly what the chain two miles down the road was describing, at half the price.
What we found
The diagnosis
01
An independent cannot win a comparison its competitors have already framed
Once the category conversation is about price per month and square footage of equipment, an independent single site loses on both, permanently. The only available move is to change what is being compared, and that is a positioning decision rather than a marketing one.
02
The proof was in the room and none of it was findable
The coaches and the existing members were the entire case for the gym, and neither appeared in the listing, the reviews the gym was asking for, or anything else a prospective member could reach before walking in. The asset existed; the distribution did not.
03
Local demand for a gym is intent-split before it is seasonal
Someone looking for a place to train competitively and someone looking for a way to start exercising again are two different searches with two different anxieties, and a single generic description answers neither well. The seasonal pattern sits on top of that split rather than replacing it.
04
Naming the boundary of the engagement was part of the value
A positioning engagement that quietly expands into delivery ends up doing both badly and billing for one. Stating in writing that this scope produced a positioning statement, the language that follows from it, and a prioritised list — and produced no campaigns and no pages — is what kept it honest.
What we built
The system
We reviewed the local competitor set as a prospective member would encounter it: search results, profiles, reviews and the claims each competitor was making. That produced a clear picture of the comparison already on the table and the two positions nobody was occupying. From there we built a positioning statement on coaching quality and on being a room a beginner can walk into, rather than on price or facilities, and wrote the language that follows from it in the places the owner would actually have to use it. The engagement closed with a prioritised list of local visibility fixes handed to the owner to execute. OmniFlow did not run media, build pages or manage listings under this scope, and this entry does not imply otherwise.
The sequence
How it was delivered
Weeks 1–2
Local market and competitor review
Competitor set mapped as a prospective member encounters it, claims catalogued
Owner: OmniFlow
Week 3
Positioning workshop
The comparison the gym can win, tested against what the room can actually deliver
Owner: OmniFlow + owner
Weeks 3–4
Positioning statement and language set
One statement, plus the wording for the profile description, the site and the phone
Owner: OmniFlow
Week 4
Prioritised list and handover
Local visibility fixes ranked by effort against effect, handed over for the owner to execute
Owner: OmniFlow → owner
Outcome
Results
This entry carries no measured outcome, and that is the honest state of it. The engagement predates OmniFlow's current measurement standard, it was scoped to consulting rather than delivery, and the visibility work was executed by the owner rather than by us. If profile access for the historical window still exists, pull views and enquiry counts from the sources named above and publish them with the window stated. If it does not, this entry stays what it is: a record of a positioning decision and the reasoning behind it, with no performance figure attached to it at all.
Measured in Google Business Profile Insights and the client's own enquiry records, historical engagement; window and data availability to be confirmed at publication. Supplied by the client and used with permission; identifying details removed. Cited: BrightLocal *Local Consumer Review Survey*; WordStream/LocaliQ (range-width point). ---.
Reporting
What you would actually see
These are the surfaces this engagement is run and measured from, shown with representative figures built around the benchmarks cited on this page. Every account we run reports into views like these, and you keep ownership of all of them.
These are demo dashboards. They show the reporting surfaces this engagement is run and measured from, with representative figures generated around the published benchmarks cited on this page — not a client account and not a client result. Live reporting for your own account replaces every number here.
Google Business Profile
Small Businesses · all locations
Calls
237
+100.0%
Direction requests
450
+80.0%
Website clicks
759
+90.0%
Searches shown
9,241
+110.0%
Calls from the profile, by month
Dashed line marks the month the engagement started.
| How customers search | Searches | Share |
|---|---|---|
| Discovery — category, product or service | 6,703 | 72.5% |
| Direct — business name or address | 1,880 | 20.3% |
| Branded — related brand | 554 | 6.0% |
Method
How this is measured
4 of the figures on this engagement are not published yet. Rather than estimate them, this is the standard they will be held to: the system each is read from, and the exact definition and window that will be used. Nothing appears above until it has been pulled from the system named here.
| Figure | Read from | How it is defined | Status |
|---|---|---|---|
| Local competitors mapped | the positioning workbook | count from the competitor set used in the engagement, if the workbook is still on file | Not yet published |
| Google Business Profile views, engagement window | Google Business Profile Insights | pull the engagement window from the profile's own reporting only if access still exists | Not yet published |
| Membership enquiries per month | the client's own enquiry records | monthly across the engagement period, from the client's records rather than a platform | Not yet published |
| Local visibility fixes handed over | the handover document | count the prioritised list items, and how many were implemented, if the owner will confirm | Not yet published |
Honestly
What we would do differently
The engagement stopped at the handover. A positioning statement that nobody is contracted to implement is a document rather than a change, and we built no check-in into the scope, so we do not know how much of the language ever reached the listing. On a consulting-only engagement of this shape now we attach a thirty-day and a ninety-day review to the handover as part of the scope, specifically so that the question of whether anything happened is answerable.
Next
Start the same conversation
Start the same conversation
Tell us what you are working on and we will say plainly whether this is the right shape of engagement for it.