✨ New Plugin Alert ✨ SleekRank is now available with €50 launch discount
✨ New Plugin Alert ✨ SleekRank is now available with €50 launch discount
✨ New Plugin Alert ✨ SleekRank is now available with €50 launch discount
✨ New Plugin Alert ✨ SleekRank is now available with €50 launch discount
✨ New Plugin Alert ✨ SleekRank is now available with €50 launch discount
✨ New Plugin Alert ✨ SleekRank is now available with €50 launch discount
✨ New Plugin Alert ✨ SleekRank is now available with €50 launch discount
✨ New Plugin Alert ✨ SleekRank is now available with €50 launch discount
✨ New Plugin Alert ✨ SleekRank is now available with €50 launch discount
✨ New Plugin Alert ✨ SleekRank is now available with €50 launch discount

SleekView Charts for Good LMS: course and student dashboards

SleekView Charts reads the Good LMS course post type and student progress meta (user_meta and post_meta carrying enrolment, lesson_complete, and quiz_score keys). Active enrolments, status mix, top courses, and lesson trends render as Number, Pie, Bar, and Area cards in WP Admin.

♾️ Lifetime License available

SleekView Charts dashboard for Good LMS

Good LMS reports as charts, not a paginated student list

Good LMS is a CodeCanyon LMS that uses WordPress custom post types for courses, lessons, and quizzes, with student progress stored across wp_postmeta and wp_usermeta. Enrolment is a meta_key on the course post (good_lms_students with a serialised list of user_ids) and per-user lesson completion lives in user_meta under keys like good_lms_lesson_complete_{lesson_id} and good_lms_quiz_score_{quiz_id}.

The default Good LMS admin shows a per-course student list and a per-student progress card. There is no catalogue-wide enrolment chart, no quiz score distribution, and no lesson completion trend. The data is all there, but it is split across post_meta and user_meta in a way that makes any cross-cutting question a manual query exercise.

SleekView Charts reads both meta tables together. A Number card anchors active enrolments. A Pie splits enrolments across courses. A Bar ranks courses by completion count. An Area trends lesson completions per day from the meta_value timestamps. Filters propagate across the dashboard so a per-instructor review (the course post_author) or a per-course launch is two clicks, not a CSV pivot.

Workflow

Build the Good LMS dashboard from meta

1

Pick the course post type

Use the Good LMS course custom post type as the spine. SleekView reads post_id, post_title, and post_author for instructor breakdowns, then joins post_meta and user_meta for progress.
2

Resolve enrolment from post_meta

The good_lms_students post_meta key carries enrolment lists. SleekView normalises that into a per-row dataset (one row per user_id, course_id) so chart cards can aggregate cleanly without parsing serialised PHP at render time.
3

Configure the chart cards

Mix Number, Pie, Bar, and Area cards. Group by course_id, status, or completion timestamp and aggregate as Count, Average on quiz score, or Sum on time-spent fields where present.
4

Save and gate per role

Save the dashboard for academy admins and scope a per-instructor variant by post_author equals the current user. The same chart definitions serve both views without duplication.

Sample dashboard

Charts from Good LMS data

A typical Good LMS dashboard combines active enrolments, course mix, top courses by completion, and a lesson-completion trend. Every card reads the course post type and progress meta directly.
Number · Default

Active enrolments

Counts unique (user_id, course_id) pairs derived from the good_lms_students post_meta across all course posts. The single KPI for the academy admin overview.
Count
Pie · Donut

Enrolments by course

Splits enrolment volume across courses using the post_id derived from good_lms_students post_meta. Reveals the share-of-total each course holds in the catalogue.
Count group by course_id
Bar · Horizontal

Top courses by completion

Horizontal bar of courses ranked by the count of good_lms_course_complete user_meta rows. Joined to the course post type for readable titles.
Count group by course_id
Area · Gradient

Daily lesson completions

Gradient area of good_lms_lesson_complete meta_value timestamps per day. Surfaces post-launch peaks and weekly engagement cycles.
Count group by completed_at

Comparison

Default Good LMS admin vs SleekView Charts

Default Good LMS admin

  • Student lists paginate per course, no catalogue-wide enrolment view
  • No share-of-total chart for courses across the catalogue
  • Lesson completion trend over time is not a chart, only per-student detail
  • Quiz score distribution is hidden inside the per-student card
  • Filters do not carry between course admin and student progress screens

SleekView Charts

  • Enrolment Number card from good_lms_students post_meta
  • Course donut from normalised enrolment pairs
  • Completion bar from good_lms_course_complete user_meta
  • Daily lesson area chart from good_lms_lesson_complete
  • Cards link to SleekView Tables for per-student drill-in

Features

What SleekView Charts gives you for Good LMS

Catalogue-wide enrolment KPIs

Number and Bar cards aggregate enrolments across every Good LMS course, which the default admin never shows in a single view. Filters scope the KPI to a single course or instructor without leaving the dashboard.

Course share donut

Pie cards over course_id give an immediate share-of-total view of how enrolments are concentrated. Useful for marketplaces where two flagship courses dominate the catalogue.

Completion ranking

Bar cards rank courses by completion count, average lesson finish time, or quiz score. One glance tells the academy which content is converting and which needs a refresh.

Audience

Who builds Good LMS dashboards with SleekView

Academy admins

Active enrolment count, course mix donut, and completion bar on one screen. Replaces the per-course student list scroll with a saved dashboard view.

Instructors

Scoped variant filtered to post_author equals the current user. Each instructor sees their own enrolment and completion KPIs without admin intervention.

L&D leads

Daily lesson-completion area trend across the catalogue with a quiz-score average per course bar. Spot collapsed cohorts before the renewal conversation.

The bigger picture

Why CodeCanyon LMS data deserves a chart surface

Good LMS stores progress in serialised post_meta and per-user user_meta with keys named for the lesson or quiz id. That model is fine for per-student detail but terrible for cross-cutting reporting. Catalogue-wide enrolment count, completion ranking, and lesson activity trend are all real numbers that live in the database, but the default admin never aggregates them.

Every academy ends up with the same workaround: a PHP snippet that loops through posts, parses meta, and prints counts to a custom admin page. SleekView Charts skips that step. It normalises the meta into chartable rows and serves them as Number, Pie, Bar, and Area cards.

The result is a real Good LMS dashboard that updates as students progress.

Questions

Common questions about SleekView Charts for Good LMS

Yes. SleekView normalises the good_lms_students post_meta value (a serialised array of user_ids) into individual rows at read time, so chart cards aggregate cleanly without per-render PHP unserialisation. The normalisation is cached and refreshes when the source meta changes.

 

Yes. Page-level filters propagate to every card, so picking a course post_id, an instructor post_author, or a date range recomputes every Number, Pie, Bar, and Area on the dashboard.

 

Yes. Quiz scores live in good_lms_quiz_score_{quiz_id} user_meta keys. SleekView reads them and a Bar grouped by quiz_id with Average on score surfaces difficulty across the catalogue. A Pie can also show pass-rate share if the plugin writes a pass meta value.

 

Good LMS is a CodeCanyon plugin and updates are intermittent. SleekView Charts reads stock post_meta and user_meta keys, so the dashboard does not depend on plugin updates. As long as the keys remain the same (which is the case across all current versions), the charts work.

 

Reads run against the live meta tables on dashboard load, so a student progress write appears on the next refresh. Heavier aggregates (lifetime completion counts across the catalogue) opt into a configurable cache so they do not recompute every visit.

 

Yes. Each card exports its underlying aggregated rows as CSV or JSON. Useful for academy reviews that need a snapshot of completion counts and quiz averages alongside any external HRIS data.

 

Yes. SleekView Charts reads the same meta rows the SleekView Table view writes to, so a manual progress reset or quiz score correction recomputes the dashboard. Good LMS hooks fire normally so any downstream completion notifications continue to run.

 

Yes. Each subsite has its own Good LMS courses and meta, and SleekView Charts reads the current subsite. Cross-site aggregation is not supported, but per-site dashboards behave as expected and can be scoped per role on each subsite.

 

Pricing

More than 1000+
happy customers

Explore our flexible licensing options tailored to your needs. Upgrade your license anytime to access more features, or opt for a lifetime license for ongoing value, including lifetime updates and lifetime support. Our hassle-free upgrade process ensures that our platform can grow with you, starting from whichever plan you choose.

Starter

€79

EUR

per year

  • 3 websites
  • 1 year of updates
  • 1 year of support

Pro

€149

EUR

per year

  • Unlimited websites
  • 1 year of updates
  • 1 year of support

Lifetime ♾️

Most popular

€249

EUR

once

  • Unlimited websites
  • Lifetime updates
  • Lifetime support

...or get the Bundle Deal
and save €250 🎁

The Bundle (unlimited sites)

Pay once, own it forever

Elevate your WordPress site with our exclusive plugin bundle that includes all of our premium plugins in one package. Enjoy lifetime updates and lifetime support. Save significantly compared to buying plugins individually.

What’s included

  • SleekAI

  • SleekByte

  • SleekMotion

  • SleekPixel

  • SleekRank

  • SleekView