Importing learning records from another LMS

If you're coming to the platform from another LMS, here's how you can import your historic learning records.

Importing Learning Records from another LMS

If you are coming from another LMS, you may require importing your historic learning records into Learn Amp.

Since every LMS is different, and data is structured in various ways, every data import project is slightly different.

This article is meant as a general discussion of the issues around importing historic learning data into Learn Amp.

Your Learn Amp Implementation manager will work closely with you to help manage your data import project, and will provide guidance, planning and a clear Statement of Work document to describe all the issues involved, and the agreed pricing for the project.


What data needs to be imported?

The exact answer to this question will depend on your use case, and what system(s) you are coming from.

a) Completion data

Typically, most customers want to import completion data. 

This will populate Learn Amp’s Activity Log, with a complete history of who completed what, when. For most customers, this completion activity is all that is required when coming from another learning system.

b) Tasks

However, some customers may require Tasks to be imported: For example, if everyone in your organisation has to complete compliance training every year, you may need to import this recurring task, so that their deadline for completing the training remains unchanged for each person.

Generally, we recommend against trying to import tasks, as it is normally more straight forward just to set up brand new tasks within Learn Amp once all data has been imported.

If task data must be imported, along with activity data, the import generally takes an extra day or two.

c) CPD

Sometimes CPD (Continuing Professional Development) data will need to be imported into Learn Amp. This includes points awarded in each calendar year for each user, and what exactly the points were awarded for.

Importing CPD data typically doubles the size of the data import project, as it requires several related data points to be imported into the system at once.


When should historic learning records be imported?

 Importing historic data is one of the last tasks we perform during implementation. The reason for this is that you will want to import the most recent snapshot of data from your old system, right around the time of your Learn Amp launch.


The order of import tasks during implementation is generally:

  1. Importing your existing content (if any).
  2. Importing all your users.
  3. Importing historic learning records.

Importing historic learning records is the last task, because we need to associate each historic record with content (requires task 1. above), and a user (requires task 2. above).


The Content Identifier

If your historic learning records relate to courses and learning objects that you have added to Learn Amp, and you want to continue to use, then during the import our script will need to look up the new Learn Amp Item that corresponds to the old learning object in your legacy system. We refer to this identifier as the source_id. This is discussed in the knowledge base article related to importing content here


The User Identifier

It is very important that our data import script can look up a user accurately. A person’s learning record from your old system must be correctly associated to their new user account in Learn Amp.

Your Learn Amp Implementation manager will work with you to agree the most appropriate user identifier.

Sometimes this is an SSO UID (for example the AzureAD object ID for the user) or it may be a custom field like “Employee ID”, or most commonly it will be a work email address.


Learning Records CSV file


Our Learn Amp team will require you to send us a CSV (comma separated values) file, containing all your historic learning record data for import. One row per completion record.

The format of this file is often heavily dependent on the structure of the data in your old LMS. But, as a guide, the following columns are typical for learning object completion data:

Click here to download an example CSV.



Email address of user. Or other agreed User Identifier


This is the content identifier. e.g the course id or learning object id from your old LMS.


Date when the course was completed



Optional: Passed/Failed/Completed status if required.


Optional: Score generally out of 100


Optional: Title of the learning object completed. This is helpful for spot checking etc.


What happens during a typical data import project?

 Importing historic data import generally happens in the following phases:

1. Prerequisite imports
Users and Content are both imported before historic learning records are imported.

2. CSV of records sent to Learn Amp
You provide the CSV file of learning data to your Learn Amp Implementation manager.

3. CSV checking

Our team will carefully check the CSV data, to make sure that it is in a format we can work with, and that the content and user identifiers are correct.

4. Agree field mapping

At this stage we may need to confirm with you which columns should map to which fields within Learn Amp.

5. Developers create an import script

One of our team will be tasked with creating a script to read the CSV of learning records, and create all the corresponding Activity data in your Learn Amp account.

6. Dry-run test and spot checks

Our team will perform a dry-run test of the script, and any required UAT testing data. We will communicate a summary of the test results for your sign off, ahead of the live import.

7. Final import and spot checks

We will finally schedule the full import job. Once the import is complete, we will carry out a series of spot checks to verify the accuracy and completeness of the learning records. We will then communicate a summary of results of the import. You may wish to perform your own spot checks at this point.