How a Global Staffing Firm Unified Learner Progress Across Multiple LMS Platforms

A global staffing and talent solutions firm prepares specialists for client placements through structured learning and runs a different learning management system in each of its regions. Every system produced its own standard reports, nobody could see across them, and the only way to compare was to merge the exports by hand. OnPoint Insights built custom connectors into each platform, combined them into one model, banded every learner by engagement, and put the result inside the SharePoint portal that hiring managers and clients already use.

One view, every LMS

Learner data from the separate regional platforms, integrated automatically into a single dashboard.

Red, yellow, green

Every learner banded automatically on 90-day engagement metrics.

Shared in SharePoint

Dashboards embedded in the portal hiring managers and clients already use.

The problem

Learning data in every region, and no view across any of it

For a staffing business, readiness is the product. A specialist’s skills are what gets placed, what the client is paying for, and what the next engagement depends on. So the question that matters most, whether a given person is actually ready, is also the one that is hardest to answer when the training records sit in a different system in every region.

Each learning platform produced its own standard management reports, which described that platform and nothing beyond it. Building any view across them meant exporting, merging and transforming by hand, and the API behind the data capped how much could be pulled at a time. The result was a picture that was always partial and always out of date.

What was getting in the way

  • Several learning management systems across different offices, each producing only its own standard reports.
  • Combining them meant manual integration and transformation, which was slow and prone to error.
  • The GraphQL API limited how much data could be retrieved in a single request, so no complete dataset could be assembled.
  • There were no clear per-learner metrics, so nobody could distinguish a specialist who was progressing from one who had stalled.
  • Learning could not be compared between time periods, so there was no way to see whether engagement was improving.

Our approach

Get all the data out, agree what progress means, then put it where people work

What we found

The API limit was the first wall and the obvious one. The harder problem was that each platform described learning in its own terms, so the work was less about retrieving data than about agreeing what progress meant across all of them before anything could be compared.

What we did

Custom connectors, built to get past the limit. Custom Power Query M queries and connectors pull learner data from each platform through its GraphQL API, working around the per-request cap so the full dataset reaches Power BI.

One model that absorbs the next platform. . A flexible data model combines the learning systems with SharePoint and is built so another platform can be added later without rebuilding it.

Learners banded automatically. A rule set scores minutes of content consumed, modules completed and certificates earned across a 90-day window, and bands each learner red, yellow or green. It was tuned repeatedly against real data rather than set once.

Delivered where people already work. Dashboards embedded in the SharePoint portal that hiring managers and clients already use, with learner records held in SharePoint lists and period-on-period comparison built in.

The choice we made

We chose to build the dashboards directly into the SharePoint portal the business already used every day, rather than delivering them through a separate Power BI workspace. It was the more demanding build, and the one that made the reporting part of people’s daily work: hiring managers and client teams see learner progress in the system they already have open, with no second tool to log into.

BUILT ON
  • Power BI Power BI
  • GraphQL GraphQL

The results

What changed for the business

Learner progress stopped being something the business compiled and became something it could look at.

Learner status at a glance

The red, yellow and green bands over a rolling 90-day window mean a hiring manager sees where a specialist stands without reading a report, and can compare one period against another.

Manual consolidation gone

Automated integration and custom connectors replaced the exporting and merging of reports from each platform, removing both the delay and the transcription errors that came with it.

Focus areas, person by person

Per-learner metrics show where each specialist needs development, so training is targeted at the individual rather than issued to everyone and hoped for.

Let's Connect

Facing a similar challenge?

Talk to our data and AI team about where you are today and what good looks like. 30 minutes, no obligation.

Book a consultation
Professional customer service agent on a support call
More Case Studies
Next Case Study
Contact Us

Collaborate with us

We're here to answer your questions and help you find the right solution.

Client-oriented
Results-driven
Problem-solving
Transparent

"*" indicates required fields

This field is for validation purposes and should be left unchanged.