Skip to content

Part 1 of 7 · Visitor check-in logger series ~6 min read

A visitor check-in logger on AWS for a few dollars a month

The alarm goes at ten past three. Somebody carries the visitor book to the assembly point and reads out fourteen names. Nine of those people left before lunch and did not sign out, two are contractors who never signed in, and one name is illegible. That list is the reason the building is not being re-entered, and it is wrong.

An aerial view of a building with a lot of solar panels
Photo by Bernd Dittrich on Unsplash

Key takeaways

  • The roll call is the purpose. Design backwards from it.
  • Checking out is the hard problem; checking in is nearly automatic.
  • Collect a name, a host and a time. Very little else is needed.
  • Delete on a short clock. A visitor log is not an archive.
  • Designed on AWS for about $2 a month.

The whole system on one page

Before any code, here is the shape of what we are designing.

System: visitors checked in and out, producing a roll callThree boxes across the top sit outside the AWS account. On the left, People arriving: visitors, contractors and deliveries. In the middle, Their hosts, who are expecting them. On the right, The assembly point: a phone, outside, possibly raining. Each connects by an arrow to the AWS account container below. Arrivals flow down into the account. Expected visits feed in. Who is inside goes back out. Inside the AWS account are three components in a row. On the left, Check in: thirty seconds, minimal data. In the middle, Check out, the hard part. On the right, the Roll call: current, readable and offline. A note at the bottom says the third box is the product and the first two exist to make it accurate.AWS ACCOUNTPeople arrivingvisitors, contractors,deliveriesTheir hostswho is expecting themThe assembly pointa phone, outside,possibly rainingCheck inthirty seconds,minimal dataCheck outthe hard partRoll callcurrent, readable,offlinearrivalsexpected visitswho is insideThe third box is the product. The first two exist to make it accurate.
Fig 1. Three things outside the account, three pieces inside it. Everything is designed backwards from the roll call on the right.
  • App integration
  • Security & identity
  • Management
  • Analytics
  • Front-end & mobile
  • People

The purpose is the roll call

Visitor management systems are usually sold on security, and for most buildings that is not what they are for. A determined person is not stopped by a screen asking for their name, and the great majority of visitors are exactly who they say they are.

What the log genuinely does is answer one question at one moment: who is inside this building right now? That question is asked during an evacuation, it has to be answered in a car park on a phone with no wifi, and the answer has to be right.

What runs (the inside)

  • Check in. Fast, minimal, and it notifies the host. Parts 2 and 3.
  • Check out. Several mechanisms, because one is never enough. Part 4.
  • The roll call. Current, sorted usefully, and available when the network is not. Part 2.

One visit, end to end

One visitor from arrival through to record deletionA horizontal row of five boxes joined by arrows. Arrives at nine forty: name, host, done. Host notified immediately. On the roll call from that second. Leaves at eleven twenty: taps out, or the host does. Deleted in thirty days, name and all. A note says four of these five steps are easy and the fourth is the whole subject.ONE VISIT, END TO ENDArrives 09:40name, host, doneHost notifiedimmediatelyOn the roll callfrom that secondLeaves 11:20taps out, or the host doesDeleted in 30 daysname and allFour of these five steps are easy. The fourth is the whole subject.
Fig 2. The same system as one line. The check-out step has several mechanisms behind it because no single one works reliably.
  • App integration
  • Security & identity
  • Management
  • Front-end & mobile

In plain words

Somebody arrives at twenty to ten. They type their name and choose who they are visiting from a list. That is the whole check-in: no company field, no car registration, no purpose of visit, no photograph. Their host gets a message saying they have arrived.

From that moment they are on the roll call. If the alarm goes at ten past ten, the assembly point list has their name, their host’s name, and the time they arrived.

At twenty past eleven they leave. Ideally they tap out on the way past; if they do not, their host can check them out from a message; if neither happens, an automatic prompt goes to the host in the afternoon. Thirty days later the record is deleted, because a list of everybody who has visited the building is not something to keep indefinitely.

Design rules that shaped every decision

  • The roll call has to work offline, on a phone, outside.
  • Collect the minimum: name, host, time. Justify anything else.
  • Never collapse into a single check-out mechanism; use several.
  • The roll call shows uncertainty rather than hiding it.
  • Delete on a short clock, automatically.
  • Nobody sees anybody else’s name on the screen.

Why this shape

The paper visitor book has two well-known problems and one that gets less attention. It is not signed out, so it overstates who is present. It is illegible, so the roll call is read out as guesses. And it displays every previous visitor’s name and their host to everybody who signs in, which is a disclosure nobody intended.

All three are fixable cheaply, and the third one is fixed simply by using a screen that shows one person’s entry at a time. That is worth doing on its own.

The next four posts walk through each piece: what the log is actually for, how little you need to collect, why checking out is the hard part, and why contractors are a different problem. One diagram per post, a cost breakdown, and an engineering reference at the end.

All posts