Training completion rate: why the report said 81% and the rules said 74%

  • Post category:Learning Data
  • Post published:
  • Post last modified:
  • Reading time:5 mins read
You are currently viewing Training completion rate: why the report said 81% and the rules said 74%

Vantage’s July report said 81.2% of its mandatory training was complete. By its own training rules, the number was 73.9%. Both numbers came from the same LMS data. A gap like this is easy to miss in training completion rate reporting, because nothing in the report looks wrong.

Vantage is a made-up company of 1,200 staff. I built its HR list and LMS exports for a demo, with the kinds of problems that appear when an LMS export meets an HR list. Then I rebuilt its July report and corrected it one rule at a time.

From 81.2% to 73.9%, one correction at a time

The hand-built report was not careless. It counted what the LMS showed. The training rules ask a different question: who needs this course, and is their completion still valid today?

1. People who had left are taken out: 80.8% (−0.4). The report counted every active LMS account, including people who had left and whose accounts were never suspended.

2. Second accounts are merged into one person: 82.5% (+1.7). Some people had two accounts, for example one made with a personal email. Each account counted as a person, so the second one looked like someone with nothing done.

3. Expired completions no longer count: 71.7% (−10.8). The report counted a course as done if it had ever been completed. Fire Safety renews every 12 months, so a completion from June 2024 stopped being valid in June 2025.

4. The HR list decides who needs what: 72.0% (+0.3). The rules use the HR department and job level, not the LMS, and new joiners are not due until their grace period ends.

5. The Arabic induction counts: 73.9% (+1.9). The site induction runs as two courses, one in English and one in Arabic. The report counted only the English one, so 74 people who completed it in Arabic showed as not inducted.

Expired training alone is larger than the whole gap. Two corrections move the number up, not down. So the lesson is not that the real number is always lower. The lesson is that nobody could explain the 81.2%.

The monthly report for the made-up company, with the July check against its own report.

The ranking changes too

By hand, HR & Admin and Finance led, and Operations came last. By the rules, Logistics leads and HR & Admin comes last, at 66.3% instead of 87.2%.

In this data, office staff completed their courses once and did not renew on time, so expired training affected them most. Site departments fell less, because the Arabic induction added back what expiry took away. A manager who followed up on the July ranking would have chased the wrong teams.

Most of these are decisions, not data problems

Look at the five corrections again. Two are about records: people who left, and second accounts. The other three are rules. When does training expire? Who needs which course? Does the Arabic version count?

Someone has to decide each rule, and it should be the person who owns the training: safety, compliance or HR. Take the Arabic version. In my view, it counts for the same requirement only when it is the same training: the same content, the same quiz, the same difficulty and the same goals. But that is the owner’s decision, not the report builder’s. If nobody writes it down where the owner can approve it, the report settings make the decision, and nobody notices.

Matching is the other half. In the demo, the LMS and the HR list did not share a clean employee ID. Each account was matched by employee ID first, then by email, then by name within the same department. 1,283 of 1,305 accounts matched automatically, with no wrong matches. The other 22 went to HR to decide, because two people had the same name in the same department. A name alone is never enough.

The data checks, settled before anyone sees the report. A demo with fictional data.

The full demo, with a 90-second video and a sample monthly note, is on the Monthly Learning Reporting page.

How to check your own training completion rate

Take your last monthly report and ask six questions:

  • Expiry: does it count only completions that are still valid on the report date?
  • Scope: does the HR list decide who is in scope, or every active LMS account?
  • People, not accounts: are second accounts merged into one person?
  • Language versions: does every version that meets the requirement count, and who decided which ones do?
  • New joiners: are they overdue on day one, or in a grace period?
  • Matching: does the report match people by employee ID, or by name?

If the report cannot answer one of these, the number depends on how someone set up the report, not on a rule that anyone approved.

Tell me how your numbers are built today

Which LMS you use, where your staff list comes from, and who reads the monthly numbers. I reply with what your report would show and what the setup involves. No data at this stage.