Skip to main content

Data Migration Best Practices - Genius CE & Enterprise

Written by Faye Admin

In This Article:

Overview

This guide outlines best practices for migrating data from an existing (non-Genius) Learning Management System into Genius. It focuses on the four core data entities most migrations depend on - Learners, Courses, Sections, and Enrollments - and how to prepare and format each one so it imports cleanly using the Genius CSV templates.

Throughout the migration, the guiding principle is the same: export from the source system, reshape the data to match the corresponding Genius CSV template, validate, and then import.

Recommended Import Order

Genius records reference one another, so import them in dependency order. Learners and courses must exist before the sections and enrollments that point to them.

  • Learners → then Courses → then Sections → then Enrollments

Keep the original LMSID with every course and section. It is the key that lets you map enrollments and sections back to the right course, and it makes validation and troubleshooting far easier after import.

Quick Reference

Entity

What to export from the source LMS

Target Genius CSV

Learners

All learner records (profile and identifying fields).

Learner CSV

Courses

Course name and LMSID.

Course CSV

Sections

Course name, instructors, and LMSID.

Section CSV

Enrollments

All enrollment records linking learners to courses/sections.

Enrollment CSV OR External Courses CSV

Match column headers and order to the sample CSV exactly. Save all files as UTF-8.

Data Entity Best Practices

Learners

  • Export learner data from the source LMS.

  • Format the exported data to match the Learner CSV template: the same column names, in the same order.

  • Ensure each learner has a a username that matches the LMS username, correctly formatted email address; resolve duplicates before importing.

Courses

  • Export the course name and LMSID for each course.

  • The LMSID is the unique course key from the source system; preserve it so LMS templates and can be linked to the correct course.

    • Note: you will be mapping Sections – Courses in Genius to keep hierarchy.

  • Format to match the Course CSV template.

Sections

  • Export the offering name, instructors, and LMSID for each section.

  • Adjust the gradebook in the source LMS so it is compatible with the completion formula in Genius. Aligning the gradebook structure up front ensures grade and completion data maps correctly once sections are imported.

  • Format to match the Section CSV template, and confirm the listed instructors already exist in Genius (import instructors first if needed). Make sure you have the appropriate Course Name or Course ID to parent the section to the appropriate Genius course.

Enrollments

  • Export enrollment records from the source LMS.

  • Format the data to match either the Enrollment CSV or the External Courses CSV, depending on the migration approach chosen for scope:

    • Use the Enrollment CSV when migrating full course/section data and active enrollments.

    • Use the External Courses CSV when migrating historical course history without bringing over full course and section data.

  • Confirm every enrollment references an LMSID that matches an imported course/section.

Pre-Migration Data Quality Checklist

Review data quality before exporting and importing. Common issues to resolve:

Check

What to do

Owner

Duplicates

Remove duplicate learners, courses, and enrollments before export.

Client

Missing / null values

Fill required fields (e.g., learner email, unique ID) or flag for review.

Client

Invalid formats

Standardize dates, emails, and codes to the format each Genius CSV expects.

Client

Unmapped IDs

Confirm every enrollment's LMSID matches a course/section LMSID.

Client

File encoding

Save every file as UTF-8 before importing.

Client

Gradebook alignment

Adjust source gradebook so grades map to the Genius completion formula.

Client

Getting the Sample CSV Templates

Download the sample CSV files directly from Genius: go to Administration → Operations → Import CSV, select the Type, and click Get Sample CSV. Templates are available for Learners, Courses, Sections, Instructors, Enrollments, Affiliations, and External Courses.

Import Best Practices

To ensure the process goes as smoothly as possible, always test smaller file imports before uploading any large files:

  • Test a small batch upload in sandbox first. Start by uploading just a few sample records in your sandbox environment. Review any error logs for feedback, make necessary adjustments, then try again.

  • Test a small batch upload in production next. Repeat your test import in production, as there could be differences in the environments.

This will help ensure that any errors are resolved or file corrections are made before completing a larger volume import to minimize the potential for user disruptions.

Validation

After importing, validate that record counts and key fields match the source. If Genius is assisting with the imports, the Genius team will also run validation tests and report any issues found in the import logs. Coordinate learner-facing communications and confirm whether Genius notification emails should be turned off until the migration is complete.

References

For full details on formatting and importing each file, see the CSV Imports Guide (Genius CE Enterprise).

Did this answer your question?