---
title: "Sql Lrs"
description: "SQL LRS is the sensible default for anyone who needs a learning record store and does not want to buy one. The design decision that distinguishes it is in the name: statements go into an ordinary SQL database — SQLite, Postgres, MySQL or MariaDB — rather than a document store or a proprietary engine. That means your existing backup, replication, monitoring and reporting practice applies unchanged, and any analyst who can write SQL can query the data without an API key."
canonical_url: "https://scorm-tools.com/tools/sql-lrs"
last_updated: "2026-10-31T10:22:01.871Z"
---

SQL LRS is the sensible default for anyone who needs a learning record store and does not want to buy one. The design decision that distinguishes it is in the name: statements go into an ordinary SQL database — SQLite, Postgres, MySQL or MariaDB — rather than a document store or a proprietary engine. That means your existing backup, replication, monitoring and reporting practice applies unchanged, and any analyst who can write SQL can query the data without an API key.

It is well suited to two quite different jobs. As a development LRS it runs on SQLite from a single binary, which makes it practical to keep one on a laptop while building xAPI content. As a production store it deploys via Docker or a JAR, supports OIDC for admin authentication, and has documented AWS deployment patterns.

What it is not is an analytics product. There are no dashboards to speak of, no learner-facing reporting, and no course-authoring anything. Nor is it a cmi5 system: it will store cmi5 statements, but launching AUs is somebody else's code.

Maintenance is strong. v0.9.8 shipped in August 2026, and the project runs the ADL conformance suite against both xAPI 1.0.3 and 2.0.0 in its own CI — a level of self-verification that is rare here and the main reason to trust its standards claims.
