Reports and Compliance

Who this guide is for: Tenant administrators, compliance officers, and managers who need to track, export, and schedule learning data reports.


Overview

EmbayLMS provides a comprehensive reporting suite covering enrollment and completion trends, assessment performance, compliance status, attendance, skills gaps, and individual learner history. Reports can be run on demand, exported to CSV or Excel, scheduled for automatic email delivery, and scoped to any group or organizational unit.


Prerequisites

  • Tenant Admin or a custom role with the report:read permission (viewing and exporting reports)
  • To create, edit, delete, or schedule saved reports: the report:manage permission (LMS-559)
  • For scheduled reports: access to Admin Panel > Reports > Scheduled reports
  • For compliance dashboard: courses must have a due date configured

1 - Report Types

ReportWhat it shows
Completion reportWho completed each course, when, and with what score
Enrollment reportCurrent enrollment status across courses
Compliance reportCompliance status per user/course pair
Attendance reportAttendance records for ILT/VILT sessions
Assessment scoresQuiz and assessment attempt history
Skills gap reportRequired vs. completed competencies per user or group
Cohort analysisCompletion and engagement trends for a defined learner group
User activity reportLogin frequency, time-in-platform, last active date
Course performance reportCompletion rate, average score, drop-off points per course
Custom reportDrag-and-drop field selection

2 - Running a Report

  1. Navigate to Admin Panel > Reports.
  2. Click the report type you want to run.
  3. Set your filters (see section 3).
  4. Click Run report.
  5. Results appear in a paginated table.
  6. Use the Export button to download results (see section 4).

Reports are generated in real time for datasets under 50,000 rows. Larger datasets are queued and delivered via email link within 5 minutes.


3 - Applying Filters

FilterDescription
Date rangeRestrict results to a start and end date
GroupScope to one or more groups or departments
UserFilter to a specific user or list
CourseFilter to one or more courses or learning paths
Completion statusNot started / In progress / Completed / Overdue / Failed
RoleFilter by user role
Enrollment typeSelf-enrolled / Admin-enrolled / SCIM-assigned

Saving filter presets: Set filters, click Save preset, name it. Presets appear in the Presets dropdown.


4 - Exporting Reports

  1. Run the report.
  2. Click Export.
  3. Choose CSV (plain values) or Excel (.xlsx) (formatted workbook).
  4. Large reports (>10,000 rows) are queued. A secure download link is emailed when ready. The link expires in 24 hours.

Exported files contain personal data. Treat exports as confidential.


5 - Scheduling Automated Email Delivery (LMS-547)

Saved custom reports can be emailed on a recurring cadence. The CSV is generated server-side and attached to the email — recipients do not need EmbayLMS accounts.

5.1 Schedule a report

  1. Open the Custom Report Builder and build (or load) the report you want to send.
  2. Under Email schedule, choose a frequency: Daily, Weekly, or Monthly (or Off to disable).
  3. Enter recipient emails (comma-separated).
  4. Give the report a name and click Save.

A scheduled report shows a 📅 badge with its cadence in the Saved reports list.

5.2 How delivery works

  • An hourly background sweep checks every saved report and sends the ones that are due (daily = once per calendar day UTC, weekly = every 7 days, monthly = once per calendar month). A newly-scheduled report sends on the next sweep.
  • The email subject is EmbayLMS report: <name>; the body notes the row count and generation date, with the CSV attached as <name>-<date>.csv.
  • Each run is capped at the first 10,000 matching rows (consistent with on-demand runs). Tighten filters for very large datasets.
  • Delivery failures are isolated per report and retried on the next sweep; a report’s “last sent” timestamp only advances once it is sent.

5.3 Change or stop a schedule

Load the report in the builder, change the Email schedule frequency (or set it to Off) and Save. Deleting the saved report removes its schedule.

Format note: CSV is the supported export format. Excel (.xlsx) export is not yet available.


6 - Sharing a Report URL

  1. Configure your report filters.
  2. Click Share > Copy link.
  3. Send to any admin with the report:read permission.

The link encodes filter state but not data. Recipients run the report fresh and see up-to-date results.


7 - Group-Level Reports

  1. Open any report.
  2. In the Group filter, select the group or department.
  3. Results are restricted to members of that group.

Group Admins see only their assigned groups automatically. Selecting a parent department includes all nested sub-departments.


8 - User Drill-Down: Complete Learning History

  1. Navigate to Admin Panel > Users > All Users > [user name].
  2. Click the Learning history tab.

Displays all enrollments, assessment scores, certificates (with download links), ILT/VILT attendance, and learning path progress.

From any report, click a user name then View full transcript.

Exporting a transcript: Learning history tab > Export transcript > PDF or CSV.


9 - Compliance Dashboard

Navigate to Admin Panel > Reports > Compliance dashboard.

9.1 Dashboard panels

PanelDescription
Overall compliance ratePercentage of required training completed on time
Overdue learnersUsers who missed a required course deadline
Expiring soonCompletions expiring within the configured window
Certificate expiry forecastUpcoming expirations by date and course
Compliance by groupCompliance rate per department or group
Compliance by courseCourses with the highest non-compliance rate

9.2 Overdue tracking

A learner is overdue when enrolled in a course with a past due date and no completion. Configure due dates: Admin Panel > Courses > [course] > Enrollment settings > Due date.

9.3 Certificate expiry

  1. Navigate to Admin Panel > Courses > [course] > Settings > Certificate expiry.
  2. Set the number of days until the certificate expires after completion.
  3. Expiring learners appear on the dashboard and receive automated reminder emails (configure cadence in Notifications).

10 - Custom Report Builder (LMS-296)

Open Admin Panel > Reports, then click Custom Report Builder (top right) to reach /admin/analytics/custom.

  1. Select columns from the left panel, grouped by dimension: Learner, Course, Enrollment, Progress, Score, Group. Each report row represents one enrollment (a learner in a course).
  2. Add filters — pick a field, an operator (the available operators depend on the field type: text → contains / is / is not; status → is / is not / is any of; number → greater than / less than / is; date → before / after), and a value. Filters are combined with AND.
  3. Group by a field (optional) to get counts per distinct value instead of rows.
  4. Sort by any field, ascending or descending.
  5. Run report to see results. Row reports paginate 50 at a time; runs are capped at the first 10,000 matching rows (a banner appears when the cap is hit — tighten your filters for a complete set).
  6. Save the definition with a name. Saved reports appear in the Saved reports list, where you can reload or delete them.
  7. Export CSV downloads the current result.

To email a saved report on a recurring cadence, set an Email schedule on it (see §5).


11 - Advanced Analytics Reports (LMS-285)

Beyond the compliance dashboard and custom builder, three pre-built analytics reports are available from the Reports page (linked at the top). All are report:read-gated and scoped to a group admin’s groups; each exports to CSV.

11.1 Course Engagement

Reports → Course Engagement. One row per course: enrolled count, started %, completed %, dropped %, average score, and average time (minutes). Click a column header to sort. Useful for spotting low-engagement or high-drop-off courses. (Aggregated over the most recent 20,000 enrollments.)

11.2 Overdue Training

Reports → Overdue Training. Every enrollment past its due date and not completed, with the learner, course, due date, days overdue, and the learner’s groups (your escalation targets). Paginated; exports to CSV.

11.3 Learner Drill-Down

Reports → Learner Drill-Down. Pick a learner to see their full learning history — each course with enrollment/completion dates, status, best score, time spent, and whether a certificate was issued. Exports to CSV.


Configuration Reference

SettingLocationDescriptionDefault
Report timezoneSettings > General > TimezoneTimezone for timestamps and deliveryTenant timezone
Scheduled report formatPer scheduleCSV or ExcelCSV
Expiring soon windowCompliance dashboard settingsDays before expiry to flag30 days
Large report thresholdPlatform-wideRows above which report queues async50,000 rows
Export link expiryPlatform-wideHours before download link expires24 hours

Troubleshooting

Report shows no data Check active filters. Click Reset filters and run again.

Scheduled report email not received Check Delivery history for the schedule. Confirm recipients are valid and schedule is not paused. Ask recipients to check spam.

Export link expired Re-run the report and export again. Links expire after 24 hours.

Compliance dashboard shows overdue learners who completed the course The dashboard refreshes every 15 minutes. Wait and reload. If it persists, verify the course due date setting.

Custom report builder is missing a field Contact EmbayLMS support to discuss a data export via the REST API.

Can’t save, edit, or schedule a report (button disabled or permission error) Saving, editing, deleting, and scheduling reports require the report:manage permission — viewing only requires report:read. Ask a Tenant Admin to add report:manage to your role (LMS-559).