Create a QR Code for Your Gym
Most QR advice assumes somebody is holding the thing the code is printed on. In a gym they almost never are. They are two metres back from a class board, or standing at a machine with their hands full, or looking through the window from the pavement. That one difference decides whether your code works.
The tool encodes your link in the browser and uploads nothing. Download the SVG, because the same file has to print at 15mm on a joining card and 300mm on a wall, and only vector survives that.
The Number Under the Preview Is Not the Number for a Wall
Paste a timetable link and the preview says something like 14.8mm. That is a real figure and it is for close range, about 0.4mm per module, which is right for a card in your hand. Print a class board at 14.8mm and nobody on the gym floor can scan it. The working rule is code width of roughly one tenth the scan distance. Two metres wants about 200mm. Three metres wants about 300mm. That is not a small adjustment, it is twenty times the number the preview gave you.
Length matters too, because it decides the module count before size enters into it. A Mindbody booking URL is about 70 characters, which encodes as a version 5 symbol at 45 modules across. Your own /timetable path is 39 characters, a version 3 symbol at 37 modules. Fewer modules means each one is bigger at the same printed width, which is exactly what you want when the reader is standing by the squat rack.
We tested the mirror thing, because a gym is full of them and the obvious worry is that a reflected code is backwards. It read. A code was rendered, flipped left to right and put back through this site's decoder, and it returned the same link, because decoders try the mirrored orientation as well. That is one decoder rather than every scanner app, so do not design around reflections, but stop worrying about them. For the member Wi-Fi in the changing rooms, a Wi-Fi code saves shouting a passphrase across a room, and the print size guide works the distance maths through properly.
How to Make Your Gym Code
Decide how far away it gets scanned
This is the whole job. A code on a joining form is read at arm's length. A code on the class board is read from the middle of the floor. Same link, different files, and the sizes are not close.
Paste the link
Timetable, trial signup, PAR-Q form, or the form-check video for one machine. The code is built in your browser and nothing is uploaded.
Keep it dark and keep the margin
Gym branding runs to black, red and neon. Black is fine. Neon on white is usually not, and the tool measures the ratio rather than letting you find out from the far wall.
Download the SVG and scale it there
SVG has no resolution to lose, so one file prints at 40mm on a card and 300mm on a board. Blowing up a PNG is how a wall code ends up soft at the edges.
Where Each Code Belongs
- The equipment
- A sticker on the frame of a machine, the rack, the cable tower. Points at a form-check video for that one machine. Scanned from a metre while standing, so 100mm across, and it needs to survive being wiped with sanitiser every day.
- The class board
- The timetable poster, the studio door, the whiteboard frame. Read from two to three metres by someone deciding whether to stay. That is a 200 to 300mm code, not the 15mm one the preview quotes for close range.
- Reception
- The joining desk, the trial pass, the waiver clipboard. PAR-Q forms and signups, read at arm's length. 15 to 20mm is plenty here, and this is the only surface where that is true.
- The changing rooms
- The Wi-Fi card, the locker rules, the app download. Wet hands, steam and a phone in a locker. Keep it to one thing and put the text underneath for the people who will type it later.
- The window
- The street-facing glass, the pavement A-board. Scanned from the pavement, sometimes from a car. Biggest code you print, and the one most likely to be a screenshot blown up until it stopped working.
What a Gym Actually Gets Out of It
- A timetable that changes without a reprint
- Point the code at the live schedule. Classes move every term and the board does not have to.
- Form-check video at the machine
- A YouTube short link is 28 characters and encodes as a version 3 symbol. At a metre it wants about 100mm, which fits on the frame of most machines.
- Waivers filled in before the desk
- A Google Form link is around 35 characters, 14.8mm at arm's length. New members fill in the PAR-Q while they wait instead of at the counter.
- Nothing uploaded, no account
- Built in the browser. Your booking link never touches our server, and the printed code carries no dependency on us.
- One SVG, every size
- The same file prints on a trial card and on a three metre banner. No resampling, no soft edges.
- Still works next year
- Static codes have no expiry and no subscription behind them. Equipment stickers outlive most gym software contracts.
Gym QR Code Best Practices
- Size for the distance, then double check it
- The working rule is code width of about one tenth the scan distance. Two metres means roughly 200mm. The millimetre figure under the preview is for close range, so treat it as the floor for a card and nothing else.
- Laminate anything on equipment
- Gym kit gets wiped with alcohol spray daily. Paper and inkjet do not survive a fortnight of that. Vinyl or a laminated sticker does.
- Do not put it where a bar goes
- A code on a rack upright ends up behind a barbell, a towel or somebody's back. Put it where the eye lands and nothing rests.
- Print the link in text as well
- Changing rooms have wet hands and steamed lenses. Some members will type it, some will photograph the card and read it later.
- Neon needs testing before it goes on a wall
- Gym palettes love bright green and orange on white. Contrast is measured as you pick, and a code that fails at a desk fails worse at three metres in mixed lighting.
- One code per machine, not one code for the gym
- A single code that opens a list of every video is a code nobody uses twice. The point is that the machine in front of them is the one it explains.
What This Does Not Do
- No scan counts. A static code holds the address and nothing phones home. Counting needs a dynamic code pointing at a redirect you control.
- It cannot make anyone rebook or leave a review. It removes the typing, not the decision.
- If the tool refuses your neon, that is the contrast gate doing its job, not a bug. Darken the module colour, or read the print size guide before you commit to a run.
- A static code goes stale if you switch booking platforms and the URL changes. Point it at a short address on your own domain, or use a permanent code, and you can repoint it without reprinting.
- Nothing here is gym-only. The same sizing maths runs the estate agent board code and the museum label code, both read from further away than a joining card.
Gym QR Code Questions
How do I make a QR code for my gym?
Paste the link you want it to open, your timetable, trial signup, PAR-Q form or a form-check video, into the tool above. The code is built in your browser, nothing is uploaded, and you can download SVG for print or PNG for a screen. No account, no watermark.
How big should a QR code be on a gym wall?
About one tenth of the distance people scan it from. Two metres means roughly 200mm across, three metres means about 300mm. The millimetre figure shown under the preview assumes close range, so use it for cards and forms rather than for a class board.
Will a QR code scan in a mirror?
It read fine when we tested it. A code was rendered, flipped left to right and put back through this site's decoder, and it decoded the same link, because decoders try the mirrored orientation. That is one decoder rather than every scanner app on every phone, so if a reflected code is the only way somebody can reach yours, put a real one where they can point a camera at it directly.
Can I put a QR code on gym equipment?
Yes, and it is the best use of one in the building. Point it at the form-check video for that machine. Laminate it or print on vinyl, because equipment gets wiped with sanitiser every day and an inkjet sticker will not last a fortnight.
Which link should the class timetable code use?
The live schedule page rather than a PDF. Booking platform URLs are long, a Mindbody link runs to about 70 characters and encodes as a version 5 symbol, so a short path on your own domain prints smaller and lets you repoint it later without reprinting the board.
Can members join the Wi-Fi with a QR code?
Yes, with a Wi-Fi code rather than a link. It carries the network name and the passphrase, so nobody has to read a 20-character password out over the sound of a rack. The passphrase is readable by anyone who scans it, so use the guest network.
Do gym QR codes expire?
Not the ones made here. They are static, so the link lives inside the pattern and nothing is looked up on our servers when a member scans. An equipment sticker keeps working for as long as the link does.
Can I track how many people scan the code?
Not with a static code, because nothing phones home. If you need counts, point the code at a redirect you control, or at a page your own analytics already measures.
More for work and admin
Contact cards, Wi-Fi, and forms people fill in.
- Google review QR codeThe review link forms measured side by side, including the one that opens the star form rather than the listing.
- Google Form QR codeTurn a Google Form link into a code that scans, and see which of your two links prints smaller.
- Wi-Fi QR codeShare a network without reading the passphrase aloud, with the separator characters escaped properly.
Guides worth reading
All guides- Comparisons
Static vs Dynamic QR Codes
What the redirect actually buys you, measured on real encoded codes, and which payloads are worse off for it.
16 min read - Printing
QR Code Sticker Size: The Circle Costs You 30%
The usable square inside a round sticker is 70% of its diameter. Measured minimum sizes for real links, against every common sticker size.
8 min read - Reference
Offline QR Code Generators for Every Device
What each platform already ships, the measured cost of each payload type, and how to check an offline claim yourself.
26 min read


