16 min read

Know Exactly Who’s Learning and Who’s Stuck

Shashank Dubey
Content & Marketing, Wbcom Designs · Published Sep 7, 2026 · Updated Sep 8, 2026
Learnomy analytics dashboard showing student completion rates and course performance

A course selling well and a course actually working are two different facts, and most dashboards only show you the first one. Enrollments climb, revenue looks healthy, reviews are decent, and underneath all of that, most of the people who bought the course never finished it. Nobody notices, because nobody built a screen that makes that specific problem visible.

That’s not a hypothetical. It’s the exact situation we found sitting in a real Learnomy install’s own Analytics dashboard, with real enrollment numbers and real completion rates, and it’s worth walking through exactly what those numbers say, because they make the case for this feature better than any description could.

This is the final article in this series, and it’s arguably the one that ties every other feature together. The multi-instructor commission split only matters if the courses being split are actually delivering value. The curriculum builder only matters if what gets built actually gets finished. The mobile offline sync only matters if students are engaged enough to keep coming back on their phones. Every feature covered so far in this series produces content, access, and payment flow, and analytics is the one screen that tells you whether any of it is actually working, for real students, at the granularity of an individual name and an individual course rather than a comforting aggregate.

The dashboard that surfaces the uncomfortable number

Here’s the actual Analytics screen, reporting period selector, headline stats, and a live Top Courses table, captured from a working install, not a demo built to look impressive.

Learnomy Analytics dashboard showing a 30-day reporting period selector and stat cards for total revenue, new enrollments, course completions, and average rating

A reporting period toggle, 7 Days, 30 Days, 90 Days, 1 Year, sits right at the top, because “how is the academy doing” is a different question depending on the window you’re asking it over. Below that, four numbers that matter to a site owner far more than a vanity pageview count: Total Revenue, New Enrollments, Course Completions, and Average Rating.

Now here’s the actual Top Courses table from the same screen, unedited:

Learnomy Top Courses analytics table showing enrollment counts, completion percentages, revenue, and star ratings per course, with most completion rates under 20%

Read the Completion column carefully. “Web3.js & DApp Development: Full Stack Web3”, 52 enrollments, a 4.3-star rating, $79.30 in revenue, and a 1.4% completion rate. “C++20: Modern C++ for Performance”, 44 enrollments, 3.8 stars, 1.7% completion. “Java 21: Master Object-Oriented Programming”, 43 enrollments, 1.6% completion. Out of the ten courses on this Top Courses list, only two, “CSS Layout Mastery” at 24.4% and “TypeScript for JavaScript Developers” at 16.3%, clear even one in five enrolled students actually finishing.

This is precisely the number a revenue-only dashboard would never surface. Every one of these courses looks fine by the metrics most course platforms lead with: enrollments are respectable, ratings are decent-to-good, some are generating real revenue. If you only ever looked at enrollment count and star rating, you’d have no reason to worry about a single one of them. The completion column is the one that tells a different, much more useful story: most of the people who signed up for these courses are not finishing them, and a course-seller who never looks past enrollment and rating would have no way of knowing that.

Why completion rate is the metric that actually matters

It’s worth being explicit about why this specific number deserves more attention than it usually gets. Enrollment tells you your marketing and sales page worked. Rating tells you the people who did finish thought it was good. Neither one tells you anything about the 80-98% of people, in the numbers above, who started and didn’t finish.

That gap matters for reasons that go well beyond curiosity. A student who doesn’t finish a course doesn’t leave a review, rarely refers a friend, and is far less likely to buy your next course. If your business model includes anything downstream of completion, a certificate, a community, an upsell to an advanced course, a job-placement claim, an uncompleted course produces none of that value, no matter how many people paid for it. Revenue at the point of sale and value actually delivered are two different numbers, and completion rate is the metric that tells you how far apart they are.

There’s also a direct connection to the multi-instructor commission structure covered earlier in this series. An instructor whose course shows healthy enrollment and revenue but a near-zero completion rate isn’t necessarily a bad instructor, but it’s a signal worth investigating together, whether the problem is pacing, unclear expectations set on the sales page, a difficulty spike early in the curriculum, or something structural in how the course is built. Without a completion-rate column, that conversation never happens, because the problem is invisible in every other number on the page.

Finding the specific students, not just the aggregate number

Knowing that a course has a 1.4% completion rate tells you there’s a problem. It doesn’t tell you who’s stuck, or why. For that, the Analytics dashboard hands off to a dedicated Students screen, built around exactly this question.

Learnomy Students admin screen listing 360 students with columns for enrolled courses, completion rate, last active date, and joined date, with a search bar and activity filter

This is a real list of 360 students, searchable by name or email, filterable by an “Any activity” dropdown, with an Export CSV button for anyone who wants to work the data in a spreadsheet. But look at what the columns themselves reveal without any filtering at all. Mia Taylor: 8 courses, 13% completion, Last Active Never. Bianca Ibrahim: 8 courses, 13% completion, Last Active Never. Chioma Jones: 8 courses, 0% completion, Last Active Never. Ella Cohen, Rachel Green, Sandra Simmons, Ryan Sanchez, Jacob Hale: all showing “No enrollments,” 0% completion, Last Active Never.

“Last Active: Never” next to a real enrollment count is the single most actionable phrase on this entire screen. It’s not a student who’s struggling with difficult material, it’s a student who enrolled and hasn’t opened the course once. That’s a completely different intervention than a student who’s actively working through lessons but stuck on one difficult module. One needs a re-engagement email; the other needs a targeted check-in on a specific piece of content. A dashboard that only reports an aggregate completion percentage can’t tell you which situation you’re actually looking at, a per-student list with a “Last Active” column can, immediately, without any additional digging.

This is also where the “Any activity” filter dropdown earns its place on the screen. Rather than scrolling through 360 students individually looking for the ones worth worrying about, a site owner can filter down to exactly the segment that needs attention, inactive students, low-completion students, or whatever activity slice the filter supports, turning a wall of data into an actual worklist.

Per-course grading, not just per-course completion

Completion tells you whether a student finished. It doesn’t tell you whether they actually learned the material, or just clicked through it. That’s a separate question, and it has its own dedicated screen: the Gradebook.

The Gradebook’s own description states its purpose plainly: “Each Course’s weighted grade from its Quizzes, assignments and standards packages. Open a Course to set the weighting and review every Student.” On the live install, this list spans 162 courses, each with its own Students count, Class average, and Pass rate columns, and an “Open gradebook” action that drops into per-student grading detail for that specific course.

The distinction between the Gradebook and the Analytics completion numbers matters. A course could plausibly show reasonable completion, students are clicking through every lesson, while its class average and pass rate on the actual quizzes tell a worse story: people are finishing the course without absorbing the material it’s supposed to teach. Conversely, a course with low completion but a high pass rate among the students who did finish suggests the content itself is solid, and the problem is more likely pacing or drop-off early on, not quality. Reading completion rate and gradebook pass rate together, rather than either one alone, is what actually tells you where a specific course’s real problem lives.

Revenue context, not revenue in isolation

The Analytics dashboard doesn’t stop at completion and enrollment, it also breaks revenue down in a way that connects directly to the commission structure covered elsewhere in this series. The Revenue Breakdown panel on the same screen shows Total Revenue, Platform Share, Instructor Share, Transaction count, and Average Order Value, side by side. And notably, when there’s genuinely nothing to report, this particular 30-day window shows $0.00 revenue, the dashboard says so honestly: “No revenue recorded for this period yet. Revenue will appear here as Students enroll in paid Courses or subscribe to membership plans.” rather than showing a broken chart or a misleading zero with no context.

That honesty matters for the same reason the completion percentages matter: a dashboard that only shows favorable numbers, or hides an awkward truth behind a vague chart, isn’t actually giving you a decision-making tool, it’s giving you a highlight reel. The value of this Analytics screen is specifically that it doesn’t do that. It shows courses with genuinely low completion rates sitting right next to their revenue and rating numbers, and it shows a genuine zero-revenue period as exactly that, with an explanation of what would need to happen for the number to move.

Getting the data out, not just looking at it

Every one of these screens ends with the same capability: an Export CSV button, and on the Analytics page specifically, a full Export Data section offering both CSV and PDF for Revenue, Students, and Courses independently. That matters for a reason beyond convenience. A completion-rate problem across 162 courses and 360 students isn’t something you fix by staring at an admin screen, it’s something you fix by pulling the data into a spreadsheet, sorting by the worst-performing courses, cross-referencing which instructors are affected, and building an actual remediation plan. A dashboard that shows you the problem but locks the data inside its own UI is only half a tool. Export is what turns “here’s a concerning number” into “here’s a working document I can act on.”

The grading queue: where “stuck” becomes a specific, actionable item

Completion rate and the Students list both tell you that someone is stuck. Neither tells you what’s sitting in front of you to actually act on right now. That’s what the Grading section is for, visible as a numbered badge in the sidebar (an “8” was showing live on this install) counting exactly how many student submissions are waiting on a manual review: essay-style quiz answers, assignments, anything that needs a human eye rather than an auto-graded multiple choice check.

This is a genuinely different category of “stuck” than a student who’s simply inactive. A student sitting in the grading queue is actively engaged, they did the work, submitted it, and are now waiting on the instructor side of the relationship to respond. An unaddressed grading queue is one of the more common, quietly damaging failure points in a course business: a student does everything right, submits an assignment, and then hears nothing for two weeks. That delay reads to the student as abandonment, regardless of how good the actual course content is. The numbered badge exists specifically so that queue can’t silently grow unnoticed the way it would if grading were buried three clicks deep with no visible count.

Put together with the completion and activity data, the grading queue closes the loop on the “who’s stuck” question with three distinct answers instead of one blurred-together number: students who never started (visible via “Last Active: Never” on the Students screen), students who started but haven’t finished (visible via completion rate, course by course), and students who did the work and are waiting on you (visible via the Grading badge). Each of those needs a different response, and each is now a specific, countable thing instead of a vague sense that “engagement could be better.”

Three ways site owners actually use this data

The solo instructor checking in weekly. For someone running a handful of courses personally, the workflow is lightweight: a weekly glance at the Analytics Top Courses table to spot any course whose completion rate has dropped, a check of the Grading badge to clear anything waiting, and an occasional filter through Students for anyone who’s gone quiet after a strong start. The value here isn’t a complex reporting habit, it’s that the numbers exist at all, in one place, without needing a separate spreadsheet or a third-party analytics plugin bolted on.

The academy owner running a large, multi-instructor catalog. With 162 courses and 360 students, as this install’s real numbers show, nobody is reading every row by hand. This is where the CSV export and the “Any activity” filter earn their keep, pulling the Students export into a spreadsheet monthly, sorting by completion rate, and flagging the bottom decile of courses as a standing agenda item in instructor check-ins. The Gradebook’s per-course pass rate becomes the second-pass filter: a course with low completion AND a low pass rate among finishers gets prioritized over a course that’s merely slow to finish but teaching effectively.

The compliance-driven program tracking mandatory training. For a corporate or certification-style program, “who hasn’t finished” isn’t just a business health question, it’s frequently a reporting requirement to someone else, a compliance officer, an accrediting body, a client contract. Here the Students list’s per-person completion percentage and Last Active date are the literal source data for that report, and the CSV export is how it leaves the admin dashboard and becomes the document someone actually has to produce on a deadline.

Common questions about reading this data correctly

Is a low completion rate always a bad sign? Not automatically, context matters. A course explicitly designed as a reference library, where students dip in for one specific lesson rather than working through it linearly, will show a low completion rate by design, and that’s not a problem to fix. The distinction is intent: if a course was built to be finished start to finish and isn’t being finished, that’s the signal worth acting on. If a course was built to be browsed, completion rate is simply the wrong metric to judge it by.

What counts as “stuck” versus just a slower learner? The data alone can’t fully answer this, but the combination of signals narrows it down. A student with partial completion and a recent “Last Active” date is likely just working at their own pace, no intervention needed. A student with partial completion and “Last Active: Never” recently, after an earlier burst of activity, is a much stronger stuck signal worth a direct check-in.

Should I compare completion rates across very different course types? Be cautious here. A 45-minute mini-course and a 40-hour certification program have structurally different completion dynamics, and holding them to the same benchmark will mislead you. Compare a course’s completion rate against its own history over time, and against genuinely similar courses in length and format, rather than against your entire catalog’s average.

How often should I actually check these numbers? The right cadence depends on your catalog size, but the Grading badge is the one number worth checking closer to daily, simply because a growing unaddressed queue is the fastest way to damage active students’ trust. Completion rate and the Students list are healthier checked weekly to monthly, frequent enough to catch a real trend, infrequent enough that you’re looking at a meaningful pattern rather than noise from a handful of students.

Does this replace the need for direct outreach to struggling students? No, it replaces the guesswork about which students to reach out to. The dashboard tells you who’s stuck and roughly why; the actual re-engagement email, the actual answer to a graded assignment, is still a human action the data can point you toward but never substitute for.

What to actually do with these numbers once you have them

Seeing a 1.4% completion rate is the easy part. Here’s what the data on these screens actually supports doing about it:

  • Sort the Top Courses table by completion, not by enrollment or revenue, and treat the bottom of that sort as your actual priority list, not the courses making the least money, but the courses delivering the least value to the people who already paid for them.
  • Filter the Students list to “Last Active: Never” and treat that segment as a distinct re-engagement campaign, separate from students who are actively working through material slowly. A welcome-back email and a “you’re stuck on lesson 4” email are different messages for different problems.
  • Cross-reference a low-completion course against its Gradebook pass rate. If the pass rate among finishers is also low, the content itself likely needs revision. If the pass rate is high, the problem is more likely early drop-off, look at your first two or three lessons specifically.
  • Export the Students CSV periodically and track completion rate as a trend, not a one-time snapshot. A completion rate that’s improving after a curriculum change tells you the change worked; one that’s static tells you to try something else.

The honest case for looking at this regularly

It would be easy to build a course platform that only shows you the numbers that make a course business look good, enrollments climbing, revenue trending up, star ratings holding steady. Every one of those numbers can be true at the same time as the numbers in the actual screenshots above: courses with respectable enrollment and real revenue, sitting at completion rates in the low single digits.

The value of a real reporting and analytics layer isn’t that it makes your numbers look better. It’s that it tells you the truth about what’s actually happening after someone hands you their money, whether they got the outcome they paid for, or whether they quietly stopped opening the course after lesson two and you’d have never known unless a screen like this one existed to tell you. That’s the actual promise of “knowing who’s learning and who’s stuck”: not a vanity metric, but the one number most course platforms let you avoid looking at, sitting in plain view on a screen built specifically so you can’t miss it.

Per-student visibility at this level is rarer than the feature lists suggest, which is why our comparison of the best LMS platforms with student progress tracking checks each one for the individual-name view, not just the aggregate chart.

Closing this series: the pattern across all nine features

Look back across this whole series and a consistent shape emerges, and it’s worth naming directly now that all nine pieces are on the table. The exam and quiz system doesn’t just check a box for “has quizzes”, it distinguishes real assessment from a formality. The certificate system doesn’t just generate a PDF, it’s verifiable and signed. The payment system doesn’t just take money, it separates platform commission from instructor share with an audit trail. The pricing system doesn’t force one model on every course. The multi-instructor system doesn’t just add more logins, it resolves commission per course with real rules. The curriculum builder doesn’t assume technical fluency. The mobile experience doesn’t just resize for a phone, it survives losing a connection entirely. The migration tool doesn’t just claim compatibility, it previews, warns, and lets you undo. And this analytics dashboard doesn’t just report a headline number, it tells you, by name, who’s actually stuck.

Every one of those is the same underlying decision made nine different times: build the version of the feature that holds up under real, specific scrutiny, rather than the version that merely satisfies a checklist item on a comparison page. A “has analytics” checkbox says nothing about whether that analytics screen would ever show you an uncomfortable number like a 1.4% completion rate on a course that looks healthy by every other metric. The real screens throughout this series, real students, real courses, real dollar amounts, real percentages that aren’t flattering, are the actual evidence for that claim, not a marketing description of what the feature is supposed to do.

If you’ve read this whole series, the honest next step isn’t to take any of it on faith. It’s the same thing we’ve suggested at the end of every article: open the actual admin screens, on your own install or a trial one, and check whether the specific claim holds. Does the Review step in the migration wizard actually warn you before an import, the way it’s described here? Does the commission override actually resolve per course, the way the Earnings screen showed? Does the completion percentage on your own catalog tell you something your revenue dashboard never would? Every claim in this series was written to be exactly that kind of checkable, because a feature that only survives a demo isn’t a feature you should build a course business on top of.

Shashank Dubey
Content & Marketing, Wbcom Designs

Shashank Dubey, a contributor of Wbcom Designs is a blogger and a digital marketer. He writes articles associated with different niches such as WordPress, SEO, Marketing, CMS, Web Design, and Development, and many more.

Related reading