Buddy punching is one worker clocking in for another who is late or absent. In schools and clubs the same thing is called proxy attendance: a student signs in for a friend. It is the first objection anyone raises to QR attendance, and it deserves a straight answer rather than a feature list.
Written by QR to Sheets, a product that records QR scans into Google Sheets. We are saying plainly that it does not solve this problem on its own, because a page that claims otherwise is the page that gets quoted back at its author the first time a card is lent.
What a scan actually proves
A scan proves that a particular code was shown to a particular camera at a particular time. It does not prove that the person holding the code owns it. A QR code is a printed token, exactly like a swipe card or a PIN: it can be lent, photographed, screenshotted and forwarded in a group chat within seconds.
So the honest question is not whether a QR code can end buddy punching. It is who, or what, is watching at the moment of the scan. Every control that works is a version of that.
The free route makes proxy sign-in easiest
The most common free setup is a Google Form whose QR code is printed on the wall. People scan the poster with their own phone and type their name or ID. It is free, it works, and it is the most proxy-friendly design there is: the form URL can be submitted from the car park, from home, or by one person for five absent friends, and every response looks identical.
- Nothing is witnessed. The phone belongs to the person signing in, so the only check is their honesty.
- The code on the wall is the same for everyone, so one photo of it signs anyone in from anywhere.
- The Limit to 1 response setting requires a Google sign-in and limits each account to one response. A friend with the absent person's details can still submit, and a friend with two accounts can submit twice.
- Google Apps Script can add checks, but it faces the same limit: code running on a phone cannot see who is holding the phone.
Workflow changes that make proxy sign-in harder
None of these is a technology fix, and all of them are cheap. They work by putting a person back into the moment of the scan.
- Reverse the direction. A supervisor or teacher scans each person's card at the door, looking at the face while the camera reads the code. This is the single biggest change, and it costs nothing.
- Give each person their own code instead of one shared poster. A proxy then needs the absent person's physical card, not a photo of the wall.
- Put a fixed scanning station where somebody can see it: a staffed counter or a doorway in view, not a back corridor.
- Read the log for clusters. Several different codes scanned within a few seconds on one phone usually means one person scanning several cards.
- Spot-check against a headcount now and then. A weekly check finds a pattern; daily suspicion does not.
- Encode an ID rather than a name, so a found or photographed card is less useful to whoever has it.
What QR to Sheets does and does not do here
This is the product we make, so treat this as vendor material. A staff member opens a scanner link in the phone browser and scans each person's printed code; each scan becomes a timestamped row in your own Google Sheet, naming the link that recorded it. That supports the staff-scans model above, and it records presence. It does not take a photo, it does not match a face or a fingerprint, and it does not record location.
Two things help at the margin, and neither closes the gap. Scans come only from devices registered to the workspace, and once its device limit is reached a new phone that opens the link is refused. That binds a device, not a person: a registered phone can still be handed to someone else. And a repeat of the same code on the same link within 12 hours shows an amber Already scanned badge with the words Saved anyway, which is a prompt to look up, not a proof of anything.
| Capability | Shared Google Form QR poster (free) | QR to Sheets |
|---|---|---|
| Cost | Free | Free for 300 scans, then 7 USD per registered device per month |
| Who holds the phone | The person signing in | A staff member, or a fixed station in view |
| Can sign in from anywhere | Yes, the form URL works anywhere | Only from a registered device, which can still leave the site |
| A photographed code | The wall poster signs in anyone | A photo of a personal code still scans |
| Witnessed | No | Yes, when a staff member does the scanning |
| Proves who presented the code | No | No |
| Photo, face or fingerprint check | No | No |
When you need more than a QR scan
If the record decides someone's pay, this is the wrong tool, and a spreadsheet of scans is a weak record in any wage dispute. In the United States the Fair Labor Standards Act requires the employer to keep hours worked each day and each workweek, and where the employer's records are inadequate the burden of proof shifts to the employer. In the EU, the Court of Justice's 2019 CCOO ruling requires an objective, reliable and accessible system for measuring daily working time. A sheet an administrator can retype answers neither.
Purpose-built time and attendance systems address identity with supervised kiosks, photo capture at clock-in or biometric readers, and they add supervisor approval, locked pay periods and audit trails. Biometrics bring their own obligations: several jurisdictions regulate collecting them, Illinois' Biometric Information Privacy Act being the best known. Take proper advice before choosing that route.
Where QR attendance does fit is presence without pay attached: volunteer rotas, school and club registers, contractor site sign-in for a fire roll call, and event crew check-in. There, a witnessed scan into your own spreadsheet is a clear improvement on a clipboard, and that is a fair claim to make.
Frequently asked questions
Can a QR code prove who clocked in?+
No. A scan proves a code was presented to a camera at a time, not who presented it. Any QR attendance tool claiming otherwise is overselling. Identity comes from whoever is watching the scan, or from a system built to check it, such as a supervised kiosk with photo capture or a biometric reader.
Do personal QR codes stop buddy punching?+
They make it harder, not impossible. With one shared poster, a photo of the wall signs in anyone. With personal codes, a proxy needs the absent person's card or a screenshot of it. That still works if nobody is watching, which is why who holds the scanner matters more than the code.
What is the cheapest way to reduce proxy attendance?+
Have a staff member scan each person at the door rather than letting people scan a shared code on their own phones. It costs nothing extra, it moves the check back into the room, and it works with any scanner, including the free Google Forms route typed by a supervisor.
Would GPS or location stop it?+
Location shows where a phone was, not whose hand it was in, and a lent phone is in the right place. QR to Sheets does not record location at all. If identity matters, location is the wrong control; supervision or a purpose-built time clock is the right one.
Is a QR scan log good enough for payroll?+
No. It records presence. It does not calculate hours, has no approval step or locked pay period, and anyone who can edit the sheet can change the record. For wages, use a time and attendance system built for record-keeping duties, and take advice for your jurisdiction.