QR code system with Google Sheets for digital safety inspections

Hi everyone! I need help setting up a digital system for our daily safety inspections. Right now we use paper forms that need to be scanned and filed manually. I want to switch to QR codes placed around the building that staff can scan during their rounds.

The idea is simple - worker scans the first QR code to open a protected Google Sheet, then scans codes at each checkpoint to automatically log the time and date. Finally they scan a completion code to finish and save the data.

This would prove they actually visited each location instead of just filling out paperwork at their desk. Can Google Sheets handle this kind of QR code integration? Do the codes need regular updates? Maybe there’s a simpler solution I’m missing?

Thanks for any advice!

honestly sounds like overkill for what u need. we just use a simple app called qr scanner that exports to csv files, then import those into sheets weekly. way easier than making google sheets do everything and doesn’t need any scripting knowledge.

We tried something similar at our warehouse last year and hit the same authentication problems you’re talking about. Google Sheets can’t scan QR codes natively, so you need something in between. Here’s what actually worked for us: make QR codes with simple location IDs, then use a basic scanning app that dumps everything into a shared spreadsheet. The trick is don’t try to make QR codes open Google Sheets directly. Just put the checkpoint ID in the code and let the scanning app handle the data entry with timestamps. Way simpler - no protected sheets or crazy scripts needed. The QR codes stay the same forever, which is one less thing to maintain. Just heads up though - make sure you’ve got solid internet at every checkpoint. We learned that the hard way when scans wouldn’t sync and we lost tracking data.

Google Sheets can’t scan QR codes directly - you need a mobile app that reads codes and sends data to your sheet. I’ve done something similar using Google Forms instead of raw sheets. Create a form with hidden fields for location codes, then generate QR codes linking to the form with pre-filled location data. When someone scans it, the form opens with that checkpoint already selected and timestamps automatically. For sequential scanning, use Google Apps Script to validate the workflow. Each QR code triggers a script that checks if the previous checkpoint was completed before allowing the current entry. The codes don’t need updates unless you change locations, but you might want to rotate form URLs periodically for security. This keeps everything in Google’s ecosystem without needing specialized apps.