Reconciling badge scan counts when three systems each claim a different total
Reconciling badge scan counts starts by collapsing every scan feed to distinct badge identifiers per day, because entry, session and lead retrieval scanners count different things. Compare the collapsed sets, publish entries, visits and visitors as separate figures, and account for badges seen inside the event that never appeared at an entry scanner.
Two days after the show closes, three numbers land in the same inbox. Access control says 68,400. The session platform says 31,200. The lead retrieval vendor says 96,700. Somebody asks which one is attendance, and the honest answer is none of them.
This happens every year at every show that runs more than one scanner, and it is not a data quality problem. Each of those systems is answering a different question correctly. Access control is counting entries. The session platform is counting seats filled. Lead retrieval is counting conversations claimed by exhibitors. The numbers disagree because the questions disagree.
Reconciling badge scan counts is therefore a matter of finding the one key all three feeds share and comparing on that, which is most of the work in attendee analytics generally. What follows is the reconciliation I would run, and the residual I would expect to be left holding at the end.
Why do entry, session and lead scanners never agree?
Start by writing down what each system physically records, because the wording of the metric is where the argument usually is.
An entry scanner fires when a badge crosses a hall threshold. It fires again when the same person comes back from lunch. It fires a third time when they leave through the wrong door and re-enter. The count it produces is entries, and one person can produce a dozen of them.
A session scanner fires when a badge is read at a room door. One person attending four sessions produces four rows. The denominator here is seats, and the population is only the part of your audience that goes to content.
An exhibitor lead scanner fires when an exhibitor decides to record somebody. That decision is made by a stand assistant with a target. Your operations team has no hand in it. The count is conversations claimed, and its relationship to the number of people on the floor is loose in both directions: a visitor who walks eleven stands generates eleven rows, and a visitor who walks eleven stands without talking to anyone generates none. How many of those rows survive a deduplication window inside a single stand is E11's subject.
UFI's Calculation Standards and Definitions, which is Annex 2 of its auditing rules for UFI Approved Events in the June 2021 version, is unusually clear on this. It separates an entry, defined as each individual who enters the site during hours officially open to the public, from a visit, which is the action of a person entering the event on an open day with an access document, from a visitor, which it defines as a person attending an exhibition counted only once for the entire duration of the fair regardless of the number of visits. It then adds a rule that does most of the work: a person may only be counted once per day. Total visits, in that document, is the number of visitors plus the number of repeat visits.
So there are three legitimate published figures, in ascending order of usefulness and descending order of size: entries, visits, visitors. Your three systems are producing raw versions of the first of those, badly.
Reconcile on distinct badge identifiers per day
The reconciliation only works if you stop comparing systems and start comparing the same key across systems.
That key is the badge identifier plus the calendar date. Every scan row in every system has both, or can be made to have both. Collapse each system to distinct badge-date pairs and the three tables become comparable for the first time.
Take the entry data above. Those 68,400 scan events collapse to 55,000 distinct badge-date pairs, which is the visits figure. Those 55,000 pairs collapse to 25,300 distinct badge identifiers, which is the visitor figure. The arithmetic that matters is at the top of that ladder: 68,400 divided by 25,300 is 2.7 entry scans per person across three days, and 68,400 divided by 55,000 is 1.24 entry scans per person per day.
That second ratio is the one to keep. It says the average attendee crossed the threshold about one and a quarter times on each day they were present, which is what you would expect from a hall with a single main entrance and a food court inside the secure perimeter. If it comes out at 1.8, you have a venue where people go outside to smoke or eat, and your entry scan count has been inflated by building layout rather than by attendance.
Days per person falls out of the same two figures. 55,000 divided by 25,300 is 2.17 days each on a three day show, which tells you more about the health of the show than the headline does.
What the other two systems reconcile to
Run the same collapse on sessions and lead retrieval and the picture completes.
The 31,200 session scans collapse to 11,600 distinct badges. Against 25,300 people at entry, 45.8 per cent of the audience went to at least one session, and the ones who did attended 2.7 sessions each.
The 96,700 exhibitor scans collapse to 19,800 distinct badges, which is 78.3 per cent of the entry population, at 4.9 stands each. That number is worth staring at, because it is the single best measure of whether your floor is working, and almost nobody computes it. It is also the number that tells an exhibitor complaining about traffic that four fifths of the audience got scanned somewhere and they were not on the list.
Now take the union of distinct badges across all three systems. In this example it comes to 25,900, which is 600 more than the 25,300 the entry scanners saw.
The residual is the interesting part
Six hundred people were recorded inside the event by a session scanner or a stand scanner without ever appearing at an entry scanner. That is 2.4 per cent of the entry population, and it is not an error to be squashed. It is a list of specific operational facts, and each one has a cause you can name.
The usual causes, in rough order of size. A press or VIP entrance staffed by a person with a clipboard rather than a scanner. An exhibitor hall door opened for build-out and never re-secured on day one. Badges reprinted at the help desk under a new identifier, so the same human appears twice with one half of the pair missing its entry scan. Staff and contractor badges that route through a service entrance. And a small number of genuine scanner failures where a reader dropped its queue and never resynced.
The reconciliation output I would publish is a short ledger. Entry scan events 68,400. Distinct badge-date pairs 55,000. Distinct badges at entry 25,300. Distinct badges seen anywhere 25,900. Residual 600, with a named cause against each block of it.
That ledger takes an afternoon to build and it ends the argument permanently, because next year you run the same query and compare like with like. It does not reach back to the registration file, where the numbered ledger from registration to attendance is D9's, and it does not settle which figure you report, which is a separate decision with its own rules.
Why the residual should not be quietly absorbed
There is a strong temptation to pick the union figure, publish 25,900, and move on, since it is the largest defensible number and it feels the most complete.
I would publish 25,300 and disclose the 600. Two reasons.
The first is that the entry population is the one you can reproduce next year. A union across three systems depends on which systems you ran, how many session scanners you deployed and how many exhibitors rented kit, and all three of those change between editions. A series built on the union is a sequence of differently shaped numbers sharing a label. Calling it a series is what lets people read a trend into it.
The second is that the residual is mostly not buyers. Press, contractors and reprinted badges make up the bulk of it, and folding them into a headline audience figure is how a reporting layer starts to drift. Which of those categories belong in a professional attendance figure at all is D12's argument, and excluding staff badges from attendance is worth working through separately.
There is one case where the union earns its place, and that is when your entry scanning coverage is genuinely poor. If the residual comes out at 8 per cent rather than 2.4 per cent, the entry feed is not a census any more and reporting it as one is the bigger error. The fix there is operational, and it means more entry scanners and a hall plan that routes people past them.
What is the industry figure you get compared against?
The reconciliation matters more than it looks because the number leaving your building gets compared to a published series.
The CEIR Index, released by IAEE on 4 May 2026 in its 2026 edition, measures year over year change across four metrics: net square feet of exhibit space sold, professional attendance, number of exhibiting companies, and gross revenue. Professional attendance is the audience metric. An entry count will not substitute for it, and neither will a headcount of everybody who held a badge.
UFI's auditing rules take the same position from a different direction. Figures for either visits or visitors are accepted, and in either case the definition of the applicable term has to be clearly understood in the context of its application, which the rules extend explicitly to declarations, media information and promotional information. The standard audit certificate has to carry the total number of visitors or visits as the Calculation Standards define them. What the rules require is a label attached to whichever figure you chose.
So the practical rule is that you may report whichever of the three you like, and you may not report one and call it another. A show that publishes 68,400 without the word entries next to it has said something untrue about itself, and the untruth will be discovered by the first exhibitor who divides their lead count by it. Building the evidence trail that turns a reconciled count into a verified attendance figure is D10's subject.
Where this stops
Reconciling on distinct badge-date pairs fixes the comparison between systems. It cannot fix the badge.
If one human being holds two badge identifiers, every count in this post is wrong by one in the same direction, and no amount of set arithmetic will find it, because both identifiers behave like real separate people all the way through. Reprints at the help desk are the common cause, and the volume is usually between one and three per cent of the file at a large show. That is an identity resolution problem sitting underneath a counting problem, and the counting problem cannot be solved past it.
The second limit is that lead retrieval coverage is not under your control. If 62 per cent of your exhibitors rented scanners this year and 71 per cent rented them last year, the exhibitor-side distinct badge count moves for reasons that have nothing to do with your audience. Any year on year comparison of that figure needs the scanner activation rate published beside it or it is noise.
The third is that none of this tells you whether the 25,300 were the right 25,300. Reconciliation is a completeness measure. It says nothing about quality, and a show can reconcile perfectly to a beautifully evidenced number of the wrong people.
Pull three tables from your last edition, collapse each to distinct badge and date, and count the badges that appear in the stand or session tables but never at entry. That count, divided by your entry population, is the number to put in front of your operations lead before anybody argues about attendance again.
Questions people ask about reconciling badge scan counts
- Why do my entry scanners and lead retrieval scanners show different totals?
- They record different events. An entry scanner fires whenever a badge crosses a hall threshold, including returns from lunch. A lead retrieval scanner fires when an exhibitor chooses to record a conversation, which one visitor can trigger at eleven stands or not at all. Neither is a headcount, so their totals will never match.
- Which badge scan number should I report as attendance?
- Report distinct badge identifiers at entry, and disclose everything you removed or could not see. UFI accepts figures for either visits or visitors, provided the applicable term is clearly understood wherever it is used. The union of every scanning system is larger and looks more complete, but it changes shape whenever your scanner deployment changes.
- How many entry scans should one attendee produce?
- Divide entry scan events by distinct badge-date pairs. On a hall with one main entrance and catering inside the secure perimeter, expect somewhere near 1.2 to 1.3 scans per person per day. A figure closer to 1.8 usually means people are leaving the building to eat or smoke, so the raw scan count is inflated by layout.
Related reading
- Running registration to attendance reconciliation as a numbered ledger every year
- Verified attendance reporting and the evidence trail behind every headline number
- Excluding staff badges from attendance and disclosing what you took out
- How to handle duplicate badge scans without deleting real second conversations