Self-hosted Cornerstone alternative for FDA 21 CFR Part 11 training records

Life sciences firms using Cornerstone for GxP training records can move to a self-hosted LMS only if the replacement supports electronic records, electronic signatures, audit trails and validation. This page sets out what Part 11 requires, which open-source options can meet it, and how to deploy and validate one.

On this page

Can a self-hosted Cornerstone alternative for Part 11 training records pass validation?

Moodle, Open edX and Canvas LMS can all host GxP training records inside your own validated environment, but 21 CFR Part 11 compliance is a property of your configuration, procedures and validation evidence, not of the software alone. Cornerstone's compliance statements cover its hosted service. When you self-host, the electronic records, electronic signatures, audit trails and computer system validation move onto your quality unit, and no vendor carries them for you. Before you choose a platform, confirm which of these you will own: the validation plan and testing, access control and periodic review, change control for each Moodle upgrade, and retention of training records for the period your procedures require.

Your options come down to three questions. First, can the platform be configured to meet the Part 11 controls you must evidence, including unique user accounts, signature meaning captured at the point of signing, and audit trails that record who changed what and when? Moodle's core authentication plugins and its plugin model give you some control over login and identity, but you should test signature and audit behavior directly rather than assume it from feature lists. Second, can you run a supported version with a patch cadence your validation plan can absorb? Third, can you keep the platform in a validated state through upgrades, which means re-running targeted tests after each change. Open edX and Canvas LMS raise the same three questions, and the answers will differ by version and by any add-ons you deploy.

Part 11 has no certification, so no vendor or assessor can hand you a Part 11 badge for a self-hosted LMS. The evidence is produced internally: requirements, risk assessment, test scripts, executed results, deviation records and a validation summary, all under your quality system. Your auditors and the FDA inspectors who may review the system will judge that evidence, not a logo. Ask any implementation partner to show the validation documentation they would deliver and who signs each document. If the answer is unclear, the migration is not yet ready for a GxP cutover.

What 21 CFR Part 11 requires from a training system

21 CFR Part 11 covers electronic records and electronic signatures used in FDA-regulated work, including GxP training records. Each area below splits the obligation between the software, your configuration and your written procedures, so you can see what Moodle provides and what your quality function must own.

Electronic records controls

Training records such as completions, qualifications and retraining due dates must be accurate, complete and protected from unauthorized change. Moodle stores these in its database, but record controls depend on how you set up course completion rules, certificate issuance and who can edit grades or completion status. Owner: your configuration and procedures. Confirm exact obligations with your quality function.

Electronic signatures

Where a training record relies on an electronic signature, the signature must be tied to a unique individual and show the signer's name, date and meaning. Core Moodle does not provide a validated signature workflow out of the box, so you must confirm whether a plugin or a documented procedure meets the requirement. Owner: partly the software, mostly your procedures. Verify with your quality function.

Audit trails

An audit trail records who changed a training record, what changed, when and why, and it must not be overwritten. Moodle logs many events in its standard logs, but you must confirm that the log retention period, the fields captured and the protection against deletion meet your procedures. Owner: the software for capture, your configuration for retention. Ask your quality function which events must be traced.

Access and identity controls

Only authorized people should create, approve or change training records, and each action should be attributable to one identifiable user. Moodle core ships authentication methods such as LDAP, OAuth 2 and Shibboleth, along with role-based permissions, so your identity provider and role design carry much of this obligation. Owner: your configuration and access procedures. Review role assignments on a schedule you document.

System validation

Computer system validation shows that the platform performs as intended for its regulated use, and it covers installation, configuration, testing and change control. Moodle upgrades, plugin updates and theme changes all require re-testing under your validation plan, so the upgrade cadence becomes a quality decision. Owner: your procedures and validation documentation. Plan this before cutover, not after go-live.

Record retention and retrieval

Training records must remain complete and readable for the full retention period your procedures define, and inspectors must be able to retrieve them on request. Moodle keeps records in its database, but backups, archive formats and the ability to read records after a version upgrade must be tested. Owner: your procedures and backup configuration. Confirm the retention period with your quality function.

Which open-source LMS fits Part 11 training records?

This table compares Moodle, Open edX and Canvas LMS against the requirements a GxP training program places on its records system. Read the rows as questions to confirm in the chosen version, not as settled capability claims. The main takeaway is that licensing and authentication are straightforward, while electronic signatures, audit trail depth and validation evidence must be verified and often built.

RequirementMoodleOpen edXCanvas LMS
Licensing and self-hostingGPL-3.0, self-hostable or run through MoodleCloud or Moodle PartnersAGPLv3 platform with no licensing fees, self-hostable or run by managed providersAGPLv3 code with self-hosting guides in the repository wiki
Identity provider connectionCore LDAP, LTI, OAuth 2 and Shibboleth plugins; SAML2 plugin from the Moodle marketplaceConfirm SSO and LDAP options for your identity provider in your releaseConfirm SSO options for your identity provider in your self-hosted release
Authoring and content pathReload SCORM, AICC and xAPI packages; course authoring within MoodleOpen edX Studio for course authoring; reload existing SCORM packages where supportedCommon Cartridge and IMSCC import; confirm SCORM and xAPI handling for your packages
Upgrade and support lifecycleMoodle 4.5 LTS security support to 4 October 2027; 5.3 LTS security support to 1 October 2029Confirm release cadence and support windows with the Open edX communityConfirm release cadence and self-hosted support path with Instructure before committing
Electronic signaturesConfirm plugin or core support for signature meaning and re-authentication in your version; custom work likelyConfirm signature capability with the community; custom development is likelyConfirm signature capability in your release; custom development is likely
Audit trail depthConfirm which events are logged, retention and whether changes to records are immutable; extension may be neededConfirm event logging and retention for training records; extension may be neededConfirm event logging depth and record change history; extension may be needed
Validation supportNo vendor validation package assumed; you own IQ, OQ and PQ and the validation documentationNo vendor validation package assumed; you own IQ, OQ and PQ and the validation documentationNo vendor validation package assumed; you own IQ, OQ and PQ and the validation documentation
Typical starting pointUsual starting point for employee compliance training in regulated firmsBetter suited to customer and partner academies than internal GxP trainingOften chosen for academic settings; confirm fit for internal GxP training

Where Moodle meets Part 11 out of the box and where you build

The first deliverable of any Moodle replacement for GxP training records is a gap assessment that maps each requirement in 21 CFR Part 11 to a specific feature, and each line needs a status and an owner. Sort every line into one of three buckets: functionality the Moodle core provides, functionality that comes from a plugin or configuration, and functionality your organization must build and document. The output should be a requirement-to-feature matrix with a status and owner for each line, reviewed by quality assurance before any build work starts. Nothing in this matrix should be read as a statement that Moodle is Part 11 compliant. Compliance depends on how your organization configures, validates and operates the system.

Identity federation is the first area to test. Moodle core ships authentication plugins for manual accounts, LDAP, LTI, OAuth 2, Shibboleth and other methods, and the SAML2 Single sign on plugin is available from the Moodle marketplace. Confirm with your identity team which method ties each training user to a unique, attributable identity, how account deactivation flows from your HR source, and how shared or generic logins are blocked. Completion records and reporting are the second area. Decide which fields, such as course completions, grades, attempt history and certificate issuance dates, must be exported and retained for the full record retention period set by your quality system, and test that an exported record can be read years later. Confirm which reports are native and which need custom queries or plugins.

Electronic signature and record locking are the behaviors most often assumed rather than tested. Standard Moodle completion and grading do not, by default, give you a signature manifestation that binds a name, date, time and meaning to a record, so map this to a plugin or a documented workflow and validate it. Test whether a completed course, grade or certificate can be altered by an administrator or instructor, whether the audit trail records who changed what and when, and whether those entries can be edited. Write these tests into your computer system validation plan with expected results, and keep the evidence. A qualified quality team, not the vendor or DeployOpen, decides whether the controls meet your regulatory obligations.

How to deploy and validate Moodle under Part 11

This sequence takes Moodle from documented requirements to a validated production system that holds GxP training records under 21 CFR Part 11. Each step produces evidence a quality unit can review, so the replacement is defensible before any legacy record is retired.

  1. Define requirements and assess risk with quality

    Quality, validation and training owners write the user requirements that the training records must meet, including electronic signature meaning, record retention, audit trail review and who may approve training completion. They then run a risk assessment that ties each requirement to a system function and a test. Done means an approved requirements specification and risk assessment, signed by quality, that the rest of the sequence can trace back to.

  2. Pin a supported Moodle release and its stack

    Select a Moodle release that is inside its support window for the full validation period. Moodle 4.5 is a long-term support release with security support until 4 October 2027, and Moodle 5.3 is the next LTS with general support until 4 October 2027 and security support until 1 October 2029. Moodle 5.1 requires 64-bit PHP 8.2 or later, and Moodle 5.3 requires 64-bit PHP 8.3 or later with PostgreSQL 17, MySQL 8.4, MariaDB 11.4 or SQL Server 2019 or later. Record the exact PHP, database and operating system versions in the validation plan and confirm the remaining dependencies with your validation plan and the release notes. Done means a bill of materials that is frozen before installation.

  3. Deploy separate development, validation and production

    Build three isolated environments from the same pinned configuration, each with its own database, file store and identity connection. The validation environment must mirror production in version, configuration and integrations so that test results carry over. Set the web server document root to the /public directory for Moodle 5.1 and later, because otherwise the site may show directory listings or errors. Done means each environment passes a basic health check and the configuration differences between them are documented and justified.

  4. Build identity federation and the HRIS feed

    Connect Moodle to your identity provider, using the core authentication plugins or the SAML2 Single sign on plugin where SAML is required, and set up the HR system feed that creates, changes and deactivates learner accounts. Access must follow the need-to-know rules in your requirements, and the feed's job log must show which accounts changed and when. Done means test users receive only their assigned courses and deactivated users lose access, both verified and recorded in the validation evidence.

  5. Execute installation and operational qualification

    Run scripted installation checks against the approved specification, then execute tests for each electronic record and signature function, including signature manifestation, audit trail capture, record locking and reauthentication at signing. Test the failure paths too, such as failed logins and rejected edits. Document every expected and actual result, with deviations raised and resolved. Done means an approved installation qualification and operational qualification report with traceable test evidence.

  6. Execute performance qualification against requirements

    Confirm the system performs under the expected number of concurrent learners, course loads, package sizes and reporting queries defined in the requirements, using production-like hardware and data volumes. Include backup and restore testing of the database and file store, because recovered records must match the originals. Done means an approved performance qualification report, with any limits documented so that operators know what the system cannot do.

  7. Migrate and verify training records and packages

    Reload SCORM, AICC and xAPI packages from the authoring tools, then migrate completion history and learner records exported from Cornerstone as a separate job. Compare record counts, completion dates, scores and signatures between the source export and Moodle, and keep the reconciliation as a controlled record. Done means every migrated record reconciles to the source, and any unreconciled item is explained and approved by quality before cutover.

  8. Place every upgrade under change control

    Once validated, treat each Moodle minor release, plugin update and PHP or database upgrade as a controlled change. Assess the impact on validated functions, rerun the regression tests tied to those functions, and update the validation documentation before production goes live. Note that upgrading to a newer major release requires the minimum prior version stated in its release notes, so plan those jumps as separate projects. Done means each change has an approved impact assessment and regression evidence on file.

How Moodle's support lifecycle changes your validation work

For a GxP training record system, each Moodle release becomes a validated state. Once you have qualified a version, every upgrade is a change to that state, so the support lifecycle sets how often you revalidate. Moodle 4.5 is a long-term support release with security support until 4 October 2027, and Moodle 5.3 is the next LTS, with general support until 4 October 2027 and security support until 1 October 2029. Choosing an LTS line keeps the number of validated states you must maintain low, which is the main reason to pick one over a short-cycle release for regulated training records.

Plan the upgrade window backward from the security support end dates, not forward from the release you happen to run. Moodle 5.3 requires 64-bit PHP 8.3 or later (8.4 supported), PostgreSQL 17, MySQL 8.4, MariaDB 11.4 or SQL Server 2019 or later, and sites must already run Moodle 4.4 or later to upgrade. If your validated baseline is on an older branch, the database engine and PHP version changes will each trigger impact assessment, installation qualification and retesting of your records, reports and electronic signature workflow, so scope those together. Confirm the minimum database and PHP versions your validation plan assumes against the 5.3 release notes before you freeze the baseline.

Ask the Moodle community, Moodle HQ or your Moodle Partner how security patches are delivered for your branch, whether they arrive as point releases or standalone fixes, and how long they take to appear after disclosure. That answer determines whether you need a fast-path change control for security fixes and how you document the impact assessment for each one. Put the answer in your change management SOP and in the vendor qualification file, so that an auditor can see how a patch moves from notice to a validated production system.

What inspectors and auditors ask to see for training records

An inspector reviewing GxP training records will look for proof that the system was validated, controlled and kept under access and change discipline throughout its life. The cards below list the evidence packages a self-hosted Moodle deployment must produce, who writes each one and where it should live. Whether any of it is sufficient is a decision for your quality unit and the inspectors or auditors who review your system.

Validation plan and traceability

The validation plan defines the intended use of the Moodle deployment, the Part 11 requirements it must meet and the test scripts that prove each requirement. A requirements traceability matrix links every requirement to its test evidence and any deviation. The organization owns and approves this package, and an implementation partner may draft it. Store it in your document management system under change control, not inside the LMS itself.

Risk assessment for the training system

A documented risk assessment identifies which Moodle functions affect record integrity, such as completion logic, certificate issuance, electronic signatures and the audit trail, and assigns controls to each. It should also name the platform community's security advisories and your own patch cadence as risk inputs. The quality unit approves it, and it is reviewed whenever you upgrade or add a plugin. Ask your partner to show how each risk maps to a test case.

Installation and qualification records

Installation qualification shows the deployed PHP, database and web server versions, directory layout and configuration match the specification. Operational qualification shows that core functions, such as enrollment, assessment and signature steps, behave as specified. The implementation partner typically executes these tests, and the organization approves them. Keep the evidence with the environment's configuration baseline so the two can be compared later.

SOPs for records and administration

Standard operating procedures cover how training records are created, reviewed, corrected and retired, and how system administrators create accounts, assign roles and run backups. Each SOP should name the role responsible and the records it produces. Because Moodle is self-managed, the organization writes and trains staff on these procedures itself. Store controlled copies in your quality system with training records for the administrators.

Audit trail review and exports

Periodic audit trail review records show who examined the log of record creation, changes and signature events, what they checked and what they found. Confirm with your partner how Moodle's logging is configured, how long logs are retained and how exports are protected from alteration. The organization performs and signs these reviews. Store exports in write-protected storage with their own checksums or hashes.

Access reviews tied to identity

Periodic access reviews confirm that each account in Moodle maps to a current employee with the right role, and that departed staff lost access promptly. Where Moodle authenticates through an external identity provider, the review must cover both systems. The identity team and process owners perform the review, and the results are stored with the identity governance records. Confirm which authentication plugins your configuration uses before writing the review scope.

Change control for upgrades and plugins

Each Moodle upgrade, point release and plugin change needs a change record that states the reason, the impact assessment, the test results and the approval. Moodle publishes release schedules and upgrade requirements that feed into this record, so check them before scheduling work. The organization approves changes, and the partner may execute the regression tests. Store change records with the validation package so the validated state can be traced over time.

Backup and restore test records

Backup procedures protect the database, the uploaded files and the configuration, but only a restore test proves they work. Record each test with the date, the restored version, the comparison results and any gaps found. Restore tests should be performed on an isolated copy so production data is not affected. The organization runs the tests, and the partner can script them. Keep the results with the disaster recovery plan.

What does replacing Cornerstone for Part 11 training records cost and require?

What does it cost to replace Cornerstone with self-hosted Moodle for Part 11 records?

The Moodle software itself is free under the GNU General Public License version 3, so the cost is the work and infrastructure around it. You pay for hosting, validation work, integration with your HR and identity systems, migration of content and training history, support and ongoing upgrades. Some of these are internal salaries and some are paid to a consultant or managed provider. Ask any provider to separate one-time work (validation, migration, configuration) from recurring work (hosting, patching, periodic review, upgrades) so you can compare against your current Cornerstone subscription line by line.

What drives the cost of a Part 11 Moodle project up or down?

Four factors move the cost most. The first is the number of systems and interfaces, such as HRIS feeds, single sign-on and content libraries. The second is how much custom work the electronic signature and audit trail requirements need, since standard Moodle features may need configuration, plugins or documented procedures. The third is how many content packages and training records must move, and whether their history is complete and clean. The fourth is how mature your quality system is: a team with current validation procedures, change control and a documented risk approach will spend less time producing evidence than one building those from scratch.

Can our own team validate and run Moodle without an outside partner?

Yes, if you have the right people in place. Validation and quality staff must own the requirement set, risk assessment, test scripts and approval of evidence. A Moodle administrator must handle installation, configuration, upgrades and plugin decisions. A systems or database administrator must run the hosting, backups and access controls, and an integration engineer must own the HR and identity feeds. Many teams find one person cannot cover all four roles, so confirm coverage for each role before deciding to go it alone. An outside partner can take on any of these roles under a written, fixed scope.

Does Moodle hold the attestations and certifications that Cornerstone describes?

No. Cornerstone describes its cloud platform as holding ISO/IEC 27001, SOC 2 Type II and FedRAMP Moderate authorization. Moodle is open-source software, so it does not hold those attestations for your deployment. Your organization owns the evidence for its own environment, including hosting controls, access reviews, backups and change records. Independent auditors and certification bodies issue reports and certifications, and DeployOpen prepares systems, controls and evidence for those assessments but does not issue them. Ask any provider which evidence it will hand over and which remains your responsibility.

How long does it take to replace Cornerstone with Moodle for GxP training?

The timeline depends on the scope you agree, not on a standard duration. The main variables are how many records and content packages must migrate, how much validation documentation must be written, how many integrations must be rebuilt, and how quickly your quality function can review and approve each deliverable. Parallel work can shorten the calendar, but it still needs the same review effort. Ask for a timeline by phase (validation, configuration, migration, cutover and parallel running) in the written scope, with the dependencies on your quality and HR teams stated clearly.

Does HIPAA apply if our training records contain protected health information?

Only if the training records contain electronic protected health information and your organization is a covered entity or business associate. In that case, the HIPAA Security Rule in 45 CFR Part 164 Subpart C applies to that information, including access controls, audit controls, integrity, transmission security and the business associate contract terms. There is no HIPAA certification. HHS enforces the rule through complaints, compliance reviews and audits, so your evidence must show how the safeguards operate. If your training records hold no ePHI, the rule does not apply to them, though Part 11 still does. Confirm this classification with your privacy officer before scoping the work.

What should we ask for in a fixed-scope quote for this project?

Ask for a written scope that lists each deliverable and the evidence it produces, including the requirement traceability, risk assessment, installation qualification, operational qualification, performance qualification, migration validation and the final summary. Require the quote to name the systems in scope, the interfaces to be built, the number of content packages and records to migrate, and the roles of your staff and the provider. Also ask which items are one-time and which are recurring retainers for hosting, patching, periodic review and upgrades, and what changes to the scope would trigger a new quote. DeployOpen does not publish a price list. A quote follows from the written scope.

What recurring work must we budget for after Moodle goes live?

Recurring work covers the running of a regulated system. Moodle publishes major releases every six months and minor point releases every two months, so you need a plan to test and validate each change against your quality procedures. Moodle 4.5 has security support until 4 October 2027, and Moodle 5.3 is the next long-term support release with security support until 1 October 2029, according to the Moodle releases page. Your recurring budget should include hosting, operating system and database patching, backup testing, access reviews, periodic validation review, change control and support for your users.

How DeployOpen deploys a self-hosted LMS under Part 11

DeployOpen plans, implements, hardens, documents and supports self-hosted open-source platforms inside your own infrastructure. For a Part 11 training record move, we prepare the system, controls and evidence that your quality team and independent auditors will review, while validation decisions and the regulatory conclusion stay with your organization.

How we scope

  • Engagements are fixed-scope, with deliverables and timelines agreed in writing before work starts.
  • Scope lists which GxP training record types, signature meanings and systems of record move to Moodle.
  • Scope names the validation documents your quality unit expects, such as the requirements and test records.
  • Scope confirms the hosting environment, identity provider and integrations with your HR and quality systems.

How we build

  • We deploy Moodle in your cloud account, data center or air-gapped network, with the document root set to /public.
  • We configure electronic signature steps, audit trail settings and access control to match your written procedures.
  • We test configured controls against the agreed requirements and record the results for your validation package.
  • We reload SCORM and xAPI packages and verify completion records against your source transcripts before go-live.

How we hand over

  • You receive configuration specifications, installation records and an administrator runbook for your own staff.
  • Backup, restore and upgrade procedures are documented and tested before handover, so your team can run them.
  • Evidence is organized so your quality unit and auditors can trace each requirement to a control and a test.
  • Handover states what remains your responsibility, including SOPs, periodic reviews and validation sign-off.

How we support

  • Ongoing support, upgrades and continuous testing are available as a retainer after handover.
  • Upgrades between Moodle releases can be scoped as retained work, with regression testing against your requirements.
  • Ask any provider to confirm in writing how change control, re-validation and patch windows are handled.

Sources and further reading

Talk to our team.

Tell us what you're working on, whether it's a deployment, an audit, a security test or a cyber range. You'll speak with an engineer who can help you scope it.

  • 30-minute call: free, with no obligation.
  • NDA on request: we can sign before you share details.
  • Clear next steps: a scope and plan after the call.