At fifty locations the spreadsheet model breaks. One operations director cannot chase fifty site managers every Monday for completion screenshots, and by the time the numbers are merged they are a week old while the auditor is asking about this quarter.
The usual conclusion is that you need a better tracker. That is half the answer. The other half is that completion tracking is not an administrative nicety at all. It is the evidence layer. Everything below assumes that.
Fifty locations, counted properly
Fifty sites means roughly 750 to 1,500 frontline workers depending on format. It means three to five district managers each owning ten to fifteen sites. It means that in any given week you have starters being inducted, a campaign or procedure change rolling out, and a recurring safety or hygiene topic coming due for half the network.
The volume is not the problem. The problem is that each of those moving parts has its own deadline, and the only people who know the real status are site managers who do not have time to fill in your tracker.
If your method requires a manager to confirm completion by hand, you have built tracking on top of human chase. That collapses somewhere around fifteen sites. Every additional address adds another inbox to ping and another tab to merge.
From asking to receiving
The move is from pull-based tracking, where head office asks and sites answer, to push-based reporting, where people train and the system records it. Every interaction is already a data point: the module opened, the knowledge check answered, the course finished. Nobody has to report it, because it is already there.
A worker finishes the hygiene refresher on a phone at site 37 on a Tuesday afternoon, and it is on the operations director's view before that manager has clocked out. No screenshot, no chase.
The question the dashboard is quietly answering
Here is the part that changes how you build this. The dashboard is not for you. It is for the person who will eventually ask, out loud, what you can prove.
In the Netherlands, Arbowet art. 8 lid 4 requires the employer to supervise compliance with the instructions and rules given. That is a continuing duty, and it is not satisfied by having delivered a session once. Supervision implies you know the current state, per person, and can act on it. The Arbowet prescribes no form of proof, so nobody can tell you your record is the wrong shape. But without a record you cannot demonstrate art. 8 at all, and a supervision claim with no underlying data is a claim.
VCA is more literal. Question 4.1, a must question, requires toolboxmeetings spread across the year covering relevant VGM topics, changes to rules and procedures, and findings from incident investigations. The scheme states what the auditor will ask for, word for word: the list of dates and topics discussed, and the attendance lists of the toolboxmeetings. That is not a paraphrase, it is the document request. If your tracking cannot produce those two artefacts per site, it is not a tracking problem you have, it is a finding.
In Belgium the onthaal adds a third artefact with a different shape. Codex art. I.2-11, second paragraph, 9° requires that the designated member of the hierarchical line signs a document under his own name showing that the necessary information and instructions on welzijn op het werk were given to a starting worker. That one is per person, not per session. A dashboard that only holds group attendance cannot produce it.
So the design brief is not "show completion". It is: dates and topics per site, attendance per session, and a signed record per starter, retrievable by name, months after the fact.
There is a second reason to prefer the automatic record. A manually confirmed completion is a manager's statement that something happened. A system record is a timestamp attached to a person and a course version. When the gap between those two matters, it always matters in the same direction: the manual list is the one that says everyone was present.
Track the version, not just the topic
One thing most trackers get wrong at fifty sites: they record that someone completed "the cleaning procedure", not which version of it. Procedures change. When the question is whether a worker was instructed on the method that was in force on the day of the incident, "completed, March" is not an answer.
Hold the version in the record. It costs nothing when the course is generated from the document, and it is the difference between a training log and evidence.
Five numbers carry the weight
The trap at scale is tracking everything. Five metrics do the work:
- Completion rate by location. The headline, sliced by site. Sort ascending and the bottom three are this week's intervention list.
- Days to completion. Average elapsed time from assignment to finish. If it keeps stretching for a course of a few minutes, the assignment is competing with shift work and losing.
- Overdue count. People past their deadline. This is the auditor number, and it is the one to put in front of a site manager.
- New-starter ramp. Time from hire date to onboarding complete, per site. It surfaces the sites where induction is informal or skipped entirely.
- Refresher coverage. For recurring topics, the share of the workforce currently inside its valid window. This is the number that tells you whether the interval you set is the interval you actually run.
Everything else is derivative. If district managers want more, give them filters rather than more KPIs.
From the rollup to one person, without an export
The rollup's job is to compress fifty sites into one screen. The drill-in's job is to get from that screen to a named individual in about three clicks: pick the lagging site, see its course list, see who is overdue, contact the manager. That is the loop, and it should run in a couple of minutes on a Monday.
If the drill-in requires exporting to a spreadsheet first, the system has failed, because the spreadsheet is exactly the step you were removing. Export belongs at the end, when someone external asks for the file, not in the middle of your own weekly review.
What a site manager should see, and what they should not
Site managers and franchisees get their own scope: their location, their people, their completion view. They do not edit head office assignments and they do not change deadlines on centrally owned compliance content. They see what is theirs and they own it.
This is not only a permissions question, it is a behavioural one. A manager who logs in on Monday and sees their own site next to the network average will act on it without being asked. A manager who only ever receives a chase email from head office learns to wait for the chase.
The same thing, in Aristotl
Open the completion view. Live status filtered by site, group and role. Each row drills through to learner level.
Scope each site manager to their own location. They see the same view, limited to their own people, with no access to central content. That removes the weekly status email in both directions and takes head office out of the middle.
Let the overdue signal come to you. Participants are reminded before the deadline and at the deadline. When something runs late, the site manager is alerted after an hour, the regional manager after four and org admins after a day, so the intervention happens while there is still shift time to use.
Export the record. Every person, location, course, version, completion timestamp and knowledge-check result. That gives you the list of dates and topics per site, the attendance per session, and the per-person record behind a starter's onthaal document, in the form someone else asked for rather than in yours.
Bring your next audit date
Pick the site you are audited on next and one recurring topic. In a demo we set up the completion view for that site and show you the export next to the document request from the scheme itself.