Case study · Fitness

A gym site that shows the price

The category standard is to hide membership fees behind an enquiry form. That form is the reason the enquiries are bad.

IronCore

Fitness · 5–8 days · ₹12,000–₹22,000

Go and use the build

Membership prices are published, on the page, without a form

Every plan shows its price, its length and what it includes.

The BMI calculator comes before the lead form, not after

It gives the visitor something useful in exchange for engagement, and it does so without asking for anything first.

The situation

What goes wrong here

Gyms almost universally hide pricing. The reasoning is that a conversation converts better than a number, so make them call. What actually happens is that the visitor comparing four gyms at eleven at night closes the tab, because three of the others published a figure and one did not.

The enquiries that do come through a price-less form are the worst kind: people who have no idea what the gym costs, a large share of whom disqualify themselves the moment they hear. Staff time goes into calls that were never going to convert, and the owner concludes the website does not work.

The third problem is that a gym decision is not really about equipment. People commit to a gym because of who trains there and who teaches — and that is the thing most gym sites show least of.

The decisions

Every one of these had a cost

A decision with no trade-off is a feature list. Each of these names what was given up, because that is the part a client needs to agree with before the project starts — not after.

  1. 01

    Membership prices are published, on the page, without a form

    Every plan shows its price, its length and what it includes. The visitor who is out of budget leaves — which is the correct outcome, since they were never a customer, and they leave without consuming a phone call. The visitor who stays has already accepted the price, so the conversation starts at 'when can I come in' instead of 'so how much is it'.

    What it cost

    Competitors can see the pricing. They can also see it by walking in or making one phone call, so the secrecy was never real — it only ever cost the business the customers who would not do either.

  2. 02

    The BMI calculator comes before the lead form, not after

    It gives the visitor something useful in exchange for engagement, and it does so without asking for anything first. Someone who has just calculated their BMI is measurably closer to acting than someone who has just scrolled past a hero image, and asking for a phone number at that moment is a reasonable trade rather than a toll gate.

    What it cost

    It is a small piece of interactive code to build and maintain rather than another static section. Cheap, and it is the only element on the page that gives before it takes.

  3. 03

    Trainers get names, photographs and specialities

    Membership is a decision about people. Real trainer profiles do work that no amount of equipment photography does, and they give the gym something no competitor can copy — the actual staff.

    What it cost

    It creates an ongoing content obligation: when a trainer leaves, the page has to be updated or it starts lying. That maintenance is real and belongs in the conversation up front.

  4. 04

    Class timetable as a table, not a downloadable image

    A timetable posted as a JPEG is unreadable on a phone and invisible to search. As page content it is legible, zoomable and indexable — and it answers the second most common question after price.

    What it cost

    Someone has to update it when the schedule changes. Same obligation as the trainer profiles, and the same answer: it belongs in the maintenance plan.

In the build

  • Membership plans with published prices
  • Class timetable as real page content
  • Trainer profiles with photos and specialities
  • BMI calculator
  • Lead capture form
  • WhatsApp button

Built with

  • Next.js
  • Tailwind CSS
  • WhatsApp deep links

You provide

  • Membership plans and prices
  • Trainer photos and short bios
  • Class timings
  • Logo, if one exists

Nothing starts until the scope, timeline and price are agreed in writing.

Measured

How this build actually performs

Taken from the finished build under throttled conditions, not from a score card. All six concept builds share a foundation, so they share these numbers.

Chromium at 412×915, 4× CPU throttling, 1.6 Mbps with 150 ms latency, cold cache — a mid-range Android phone on a typical Indian mobile network, not a developer's laptop. Includes the analytics the live site loads. Measured 2026-09-08.

Largest contentful paint
1.58–2.16s
When the main content is actually on screen. Google treats anything under 2.5s as good.
Cumulative layout shift
0
Nothing moves after it appears — no mis-taps caused by a button jumping.
JavaScript over the wire
429 kB
Compressed, as actually sent — 259 kB of site code plus 170 kB of Google Analytics.
Total page weight
~613 kB
Everything: markup, styles, fonts, scripts and analytics.

Honestly

What this is and isn’t

A concept build. The gym, the trainers and the class schedule are invented. The argument about publishing prices is not a stylistic preference — it is the reason this build is shaped the way it is, and a gym owner who disagrees should say so before the design stage, because it changes the whole page.