Back to guides

NFC Gym Check-In: How to Set Up Tap-to-Attendance Tags

A gym or studio doesn't need a certified payment terminal to track who showed up — a single NDEF tag tapped at the front desk or door can log a check-in on any phone. Here's how to pick the right tag, write the NDEF URL record, mount it, and lock it against tampering.

Published

Quick answer

A plain NFC tag can handle gym or studio check-in on its own. No custom app, no certified payment terminal. Write an NDEF URL record onto an NTAG213 sticker or card, mount it at the front desk or door, and a member's tap opens a check-in link on their phone. That's a different, cheaper path than an Apple or Google Wallet membership pass tapped at a certified terminal, which needs a managed pass provider and Apple Pay Value Added Services (VAS) hardware. If a small studio just wants a timestamp when someone walks in, a $0.25 tag does the job.

Step-by-step

Pick the tag

NTAG213 holds 144 bytes of user memory — enough for a single NDEF URL record. NXP lists NTAG213/215/216 as the standard chips behind exactly this kind of access-control and attendance deployment. Not sure you'll ever need more room? See how much data fits on an NFC tag. Step up to NTAG215 (504 bytes) or NTAG216 (888 bytes) only if the tag must also carry a member ID alongside the URL.

Write the NDEF URL record

Point the tag at a check-in endpoint — a form, a webhook, a page that logs the tap — not a static page with no action behind it. On iPhone, background tag reading only routes a tap into an app if the URL record is a valid Universal Link. If your check-in page lives inside an app rather than a browser tab, see why iPhone background reading needs a Universal Link. Android reads the same NDEF URL record natively, no Universal Link required, so one correctly-formatted tag works for both platforms.

Mount and test

Pick one fixed location — the front desk counter, a door frame, equipment near the entrance — and keep it there. Staff and members should know exactly where to tap. Test with both an iPhone and an Android phone before you trust it for real attendance data.

Lock the tag

Once the URL is final, lock the tag. It still reads and triggers check-in on every tap; locking only blocks someone from overwriting the NDEF record later.

Common problems and fixes

Nothing happens when I tap. Almost always an NDEF formatting or URL-record issue, not a bad tag. Rewrite the record and re-test.

It works on Android but not iPhone. Check the URL record — a missing or malformed Universal Link is the usual reason an iPhone ignores a tag Android reads fine.

We want an attendance log, not just a redirect. Route the URL to an endpoint that timestamps the tap. This mirrors a pattern already common for time tracking: a tag at a fixed spot triggering an automated clock-in entry, applied here to gym attendance instead of payroll. Planning for daily foot traffic? See how long NFC tags actually last — a locked tag is read constantly but written once, so mount durability matters more than write wear.

A member says the tag looks tampered with. Locking blocks rewriting the record, not physical removal. Check the mount periodically on a tag that takes heavy daily contact.

Doing this on NFCore specifically

You can write, test, and lock a check-in tag right in the NFCore app — pick NDEF URL as the record type, enter your check-in link, confirm the write, then lock it. The same write-then-lock flow works for a related setup: an NFC loyalty card for small businesses that tracks visits the same way a check-in tag tracks attendance. NFCore doesn't require an account and doesn't upload anything you write to a tag. Try it on iOS or Android if you want a check-in tag set up today.

Frequently Asked Questions

What kind of NFC tag should I use for a gym check-in?

A basic NTAG213 sticker or card — its 144 bytes comfortably fit one NDEF URL record. Step up to NTAG215/216 only if the tag also needs to carry a member ID alongside the URL.

Do I need to build an app to make NFC check-in work?

No. A URL record formatted as a Universal Link makes iPhone background reading open the link directly; Android reads the same plain NDEF URL natively. Neither needs a companion app.

How do I stop someone from tapping an old check-in tag after I move it?

Lock the tag once the URL is final. It still reads and triggers check-in on every tap, but the record can't be rewritten if the tag gets removed or relocated.

Will NFC check-in work on Android too?

Yes. Android's NFC stack reads NDEF tags natively, without the Universal Link requirement iOS background reading has — one correctly-formatted tag covers both platforms.

How long will a gym check-in tag last with daily use?

Write-cycle wear isn't the limiting factor, since a locked check-in tag is written once and read on every tap after that. Mount durability and exposure near the reader point matter more.