All guides
School events guide

How to run school open day check-in with QR codes and a Google Sheet

Check families in at a school open day with QR passes and Google Sheets: registered and walk-in queues, the follow-up list, and when a visitor system fits.

By the QR to Sheets team 11 min readUpdated 6 October 2026

Short answer

School open day check-in works best as two queues feeding one Google Sheet: pre-registered families show a QR pass that staff scan at the desk, and walk-in families fill a short form on a tablet.

A free Google Form behind a QR poster records who filled it in, but it cannot separate a registration from an arrival, catch families who registered twice, or keep a Saturday morning queue moving.

QR to Sheets adds the staff-scanned half: a scanner link on each desk phone appends a timestamped row per family to your Google Sheet, free for one phone and 300 scans, then 7 USD per registered device per month.

An open day, open evening or admissions event has a different job from daily attendance. Nobody is being marked present for a register. The school wants two things: a calm welcome at the gate, and an accurate list afterwards of which families actually came, so admissions can follow up with the ones who did and chase the ones who registered and stayed home.

This guide covers the free route first, then where it breaks on a busy morning, then a setup that keeps registrations, arrivals and walk-ins in one Google Sheet the school controls. It is written by QR to Sheets, which sells one of the options, so read the product sections as vendor material.

Can a free Google Form handle open day check-in?

For a small event, yes. Make a Google Form with the parent's name, email, the child's year group of interest and how they heard about the school. Print a QR code that opens it, put the poster at the gate, and every family that scans it adds a timestamped row to the linked spreadsheet. It costs nothing and takes twenty minutes to set up.

It starts to break in four places once more than a few dozen families arrive in the same half hour.

Add patchy wifi in the school hall and a fifth problem appears: a form submitted with no signal fails, and the parent walks off assuming it worked. If the event is small enough that a printed list and a highlighter would do, they genuinely do, and they do not fail when the wifi does.

Pre-registered families and walk-ins: two queues, one sheet

The fix is to stop forcing one mechanism to cover both kinds of visitor. A registered family already exists in your spreadsheet, so they should present something that identifies that row. A walk-in does not exist yet, so they have to type something, and they may as well type it once, at the desk.

Registered families: a pass that carries an ID

Give every registration row a family ID in its own column, for example OD-0001 upwards. Then turn each ID into a QR code. Two ways work without any code of your own. Paste the ID column into the free bulk QR code generator and print a desk list with each code beside the family surname, so families need to bring nothing and staff scan the code on the list when the family gives their name. Or email each family their own code before the day so they can show it on a phone.

Emailing a different image to every family is the part a spreadsheet cannot do on its own. A mail merge add-on or an Apps Script can do it for free if someone on staff is comfortable maintaining one. QR to Sheets offers two built-in routes, covered below: its Forms feature issues a code at the moment a family registers, and its Events add-on emails a code to every family on a list you already have.

Walk-ins: a form on a tablet at the desk

For families who did not register, leave a short form open on a school tablet beside the welcome desk, with a member of staff nearby to reset it between families. The useful property is timing: because the family completes the form at the desk, the submission time is their arrival time. Their form row is their registration and their check-in in one. Add a hidden or preset answer such as Walk-in so the rows can be told apart later. The trade-offs of a shared device are covered in the guide to a shared check-in tablet.

Link the walk-in form and the registration form to the same spreadsheet. Google Forms adds each one as its own responses tab, so registrations, walk-ins and the arrivals from the desk scanner all sit in one file, each on its own tab.

How many phones at the desk, and whose?

Staff phones scan the family's pass. The families do not scan anything with their own phones. That direction matters for three reasons: a member of staff sees who is in front of them, one known phone is easier to keep charged and working than two hundred unknown ones, and with QR to Sheets each phone that scans takes a device slot, so a scanner link printed on a poster for parents to open would try to register every parent's phone.

If the hall wifi drops, scans are kept on the phone and sent when the signal returns, still carrying the time they were made. A repeat scan, such as a family who goes back to the car and comes in again, is recorded and flagged with an amber notice rather than refused. Leave that default on: the follow-up formula below counts a family once however many rows they have.

Registered versus arrived: building the follow-up list

Say the registrations tab is called Registrations, with the family ID in column F, and the scanner link writes to a tab called Arrivals. A scanner link appends one row per scan with the scan time in column A and the scanned value, the family ID, in column B. Two formulas in the Registrations tab do the rest.

Be clear which tools put what where. A QR to Sheets scanner link appends a row per scan to your Google Sheet, which is what the formulas above read. A QR to Sheets form with per-registration QR codes is different: the registration row reaches the sheet, but the check-in at the door is recorded in QR to Sheets against that submission and is not written to the sheet. That route suits a door headcount; it does not give admissions an arrived column without extra work. The per-submission QR code guide covers it in detail, including that checking a family in that way never takes a device slot.

If you would rather not maintain formulas at all, the QR to Sheets Events add-on imports the registration list from your Google Sheet, emails each family a personal QR code, and when staff scan it with the check-in scanner link, writes the check-in time back to that family's row. Families who register late are picked up when you re-sync, and only the new ones are emailed. It costs 25 USD per month on top of a paid plan.

Google Form + QR poster (free) compared with QR to Sheets
CapabilityGoogle Form + QR poster (free)QR to Sheets
CostFreeFree for 1 phone and 300 scans; then 7 USD per registered device per month
Who does the work at the gateEach family types on their own phoneStaff scan a pass; walk-ins use the desk tablet
Registered versus arrivedMatched by hand from namesA COUNTIF on the family ID, or written back by the Events add-on
Families who registered twiceFound by reading the listFound by checking the family ID and email column before the day
Hall wifi dropsThe submission failsScans are kept on the phone and sent later with their scan time
Which entrance a family usedOnly if you add a questionRecorded from the scanner link's name
ID screening and badgesNoNo; use a visitor-management system for that

Timezone, multiple campuses and the date on every row

Set the QR to Sheets workspace timezone to the school's own zone before the day. Scanner rows are written in that zone, so 9:05 at the gate reads 9:05 in the sheet, not the UTC equivalent. Check the spreadsheet's own time zone under File, Settings as well, and submit one test walk-in so you can see that the form timestamps agree with the scanner rows.

A workspace has one timezone. Several campuses in one city are simply several scanner links in one workspace. Campuses in different time zones are better run as separate workspaces, each with its own sheet, than as one sheet with times that mean different things on different rows.

Parent and child data in a school spreadsheet

Open day registrations hold personal data about parents and, indirectly, children. A few habits keep that manageable.

None of this is legal advice. Your school's own data protection and safeguarding policies decide what you collect and how long you keep it.

When a visitor-management system is the better buy

Search for school visitor check-in and most results are visitor-management vendors, and for good reason: they do things a spreadsheet tool does not. As of 2026-10-06, Raptor's own pages describe scanning a government-issued ID, screening the name and date of birth against sex offender registries and the school's own alert lists, and printing a visitor badge with a photo; its EventSafe product sells event tickets with payment and applies the same screening to attendees. SchoolPass describes ID or photo scanning, QR visitor badges, watchlist alerts including non-custodial parents, and pre-registration links for events. Lobbytrack describes ID scanning, badge printing, watch list alerts and evacuation tools. None of the three publishes a price on those pages.

Those are the right tools when visitors walk into a building where pupils are present and your policy requires identity screening, printed badges or an evacuation list. QR to Sheets does none of that. It records presence: which code was scanned, at which entrance, at what time. It does not check an ID, prove who is holding a pass or print a badge.

Admissions CRMs are the other serious option. EnrolHQ, for example, describes QR code check-in on the day of an open day, staff marking attendance and writing notes, and follow-up invitations to families who attended. If your admissions team already runs one, use its check-in, because the arrival lands where the follow-up happens.

QR to Sheets fits the space between: an open day, open evening or campus tour where your visitor procedures already cover safeguarding, and what is missing is a fast desk and a timestamped arrival list in a Google Sheet you own.

Pricing, stated plainly. One phone at one gate, one scanner link and under 300 scans in total costs nothing. More phones cost 7 USD per registered device per month, so three phones across two entrances is 21 USD for the month, and you can cancel afterwards. QR to Sheets Forms includes 1 form and 10 trial submissions free; a real registration form needs the paid plan. The Events add-on is 25 USD per month on top.

Step by step

  1. 1

    Decide what admissions needs on Monday

    Usually it is a list of families who registered, a mark against the ones who came, the time they arrived, and the walk-ins nobody knew about. Design the day backwards from that list.

  2. 2

    Collect registrations into a Google Sheet with a family ID

    One row per family, not per child, with a short ID such as OD-0042 in its own column. The ID is what goes in the QR code, so it must never change once a family has it.

  3. 3

    Give each registered family a pass

    Email each family a QR code that encodes their ID, or print the codes on a desk list beside each surname so families need nothing at all. Either way the code carries the ID, not a name.

  4. 4

    Set up one scanner link per entrance on staff phones

    Name each link after the place, such as Main gate or Junior campus, so every row says where the family came in. Staff phones scan; parents do not scan with their own phones.

  5. 5

    Put a walk-in form on a tablet at the desk

    Families who did not register fill a short form there. Because they complete it at the desk, the submission time is their arrival time, so the form row is both their registration and their check-in.

  6. 6

    Build the follow-up list from the two tabs

    A COUNTIF against the arrivals tab marks each registered family as arrived or not, and the walk-in rows are added below. That one tab is the list admissions works from.

Frequently asked questions

Do parents need an app to check in at an open day?+

No. A registered family shows a QR code on their phone or on paper, or gives their name so staff can scan the code on a printed desk list. Walk-ins fill a short form on a tablet at the desk. Only the staff scanning use a phone, and that runs in the browser with no app and no account.

How do I handle families who turn up without registering?+

Give them a short walk-in form on a tablet at the desk rather than registering them on the spot in the main list. Because they complete it there, the submission time is their arrival time, so the form row is both their registration and their check-in. Mark those rows as walk-ins so admissions can tell them apart.

Should the QR code contain the family's name?+

No. Encode a short family ID such as OD-0042 and keep the name in the spreadsheet. A dropped or photographed pass then reveals nothing, and an ID survives a family registering under one parent's name and arriving with the other.

Can parents scan a poster with their own phones instead?+

With a Google Form, yes, and that is the free route. With a QR to Sheets scanner link, no: each phone that scans takes a device slot, so the scanner link belongs on staff phones and the poster belongs on a form.

How do I get a list of families who registered but did not come?+

Give each registration a family ID, scan that ID at the desk with a scanner link that writes to an arrivals tab, and add =IF(COUNTIF(Arrivals!B:B, F2)>0, "Yes", "No") beside each registration. Filter on No. The QR to Sheets Events add-on does the same job by writing each check-in time back to the family's row.

Does this replace our visitor-management system?+

No. It records which code was scanned, where and when. It does not scan ID documents, screen visitors against any list, print badges or prove who is holding a pass. If your policy requires those for visitors on site, keep your visitor-management system and use this only for the open day arrival list.

What does a one-day open day cost?+

One phone at one gate under 300 scans is free. Premium is 7 USD per registered device per month for every phone, billed monthly, so two phones for an open day is 14 USD for that month. Emailed passes from the Events add-on add 25 USD per month.

Try it on your own Google Sheet

Connect Google, create a scanner link, and share the URL with your team. The free tier covers 300 scans, and nobody you share it with has to install anything.

Start for free

No credit card required

Keep reading