
Document compliance has a timing problem, and it is costing airlines millions. There is a moment every airline operations professional knows. The gate is open. Boarding has begun. Somewhere in the queue, there is a passenger whose documents are wrong. It might be a visa that’s expired. A transit requirement that wasn’t flagged at check-in. A passport with a name that doesn’t quite match the ticket. The details vary. The outcome rarely does.
The gate agent makes the call. The passenger is denied boarding. Or, worse, they’re not denied boarding. They’re accepted, they travel and at the other end, an INAD (inadmissible passenger) fine arrives.
I’ve spent years working with airlines and ground handlers on the technology underpinning passenger operations. And this particular problem, document compliance at the gate, is one that the industry has quietly accepted as an unavoidable cost of doing business. I think that’s wrong. Not just operationally, but philosophically.
We’ve built the wrong mental model. The way aviation has traditionally structured document compliance is fundamentally backwards. We’ve placed the heaviest burden at the point in the journey where we have the least time, the least information and the least ability to actually resolve a problem.
Gate agents are asked to make rapid, high-stakes compliance judgements with minimal tools, under significant time pressure, with a queue of passengers behind them and a departure slot in front of them. They are not document specialists. They were never meant to be. And yet, in the absence of anything better, we’ve treated the gate as the primary compliance checkpoint.
Related: How the UK Convinces Visitors to Move Their Full-Time
The gate is the last line of defense. The problem is that we’ve allowed it to become the only one.
The result is predictable. Errors are made in both directions. Some passengers who should be denied are accepted, creating carrier liability. Others who have valid documentation are turned away due to unfamiliarity with complex entry requirements. Neither outcome is good for the passenger or the airline.
What’s particularly frustrating is that in most cases, the information needed to make a correct determination was available hours or days earlier. The passenger had a passport. They had a booking. They were going to a destination with known entry requirements. The data existed. We just didn’t use it at the right time.
Why the industry defaults to the gate
This isn’t unique to aviation. Across security-critical industries, there’s a persistent tendency to invest in tools that tell you what went wrong, rather than tools that help you prevent it going wrong in the first place.
Traditional document verification operates the same way. Systems are built to flag known problems when a document is scanned at a physical checkpoint. That works reasonably well when the checkpoint is positioned early enough in the process to allow intervention. At a boarding gate, 90 seconds before a flight, it doesn’t work at all.
Related: Radisson executive discusses AI travel trends
The question I kept coming back to, working on these problems, was: why do we accept this? Why is the industry default to detect the problem at the moment it’s hardest to resolve, rather than earlier, when resolution is actually possible?
Part of the answer is inertia. The gate has always been the checkpoint, so the gate remains the checkpoint. Part of it is the genuine complexity of integrating earlier verification into a check-in flow that already involves multiple systems, partners and touchpoints. And part of it, I suspect, is a failure of imagination about what earlier verification could actually look like in practice.
What changes when you move earlier
The practical difference between detecting a documentation issue at check-in versus at the gate is not just a matter of timing. It changes everything about what you can do.
At check-in, you have days. You can contact the passenger. You can ask for additional documents. You can have a member of staff review a complex case properly, with full context, without a queue behind them and a clock running. You can route genuinely ambiguous cases to a human reviewer
