Skip to content

Welcome to XTDB

XTDB is an immutable SQL database that reduces the time and cost of building and maintaining safe systems of record. You can read more about our mission here.

In XTDB there’s no need for handcrafted “audit tables”, or bespoke versioning and filtering logic - just write regular looking SQL and a granular history of all changes will be preserved (and be accessible for whenever you need it!):

2024-01-01
INSERT INTO product (_id, name, price) VALUES
(1, 'An Electric Bicycle', 400)
2024-01-05
UPDATE product SET price = 405 WHERE _id = 1
2024-01-10
UPDATE product SET price = 350 WHERE _id = 1
SELECT *, _valid_from
FROM product
FOR VALID_TIME ALL -- i.e. "show me all versions"
FOR SYSTEM_TIME AS OF DATE '2024-01-31' -- "...as observed at month end"
Run
Open in xt-play

Unlike regular SQL databases, XTDB retains all history by default and helps businesses to easily and accurately report: “Here is the complete history of my data, as I understood it previously, and as I understand it currently.”

XTDB builds upon the ‘bitemporal’ capabilities defined within SQL:2011 but makes those capabilities both ubiquitous and automatic, without imposing any unnecessary complications on the application schema.

Learn XTDB in 10 minutes

To discover the novel features of XTDB, take a look at the interactive SQL Quickstart.

Or alternatively, you may want to get XTDB running locally via Docker first, and then read through the SQL Quickstart.

Licensing & Support

XTDB is free-to-use and open source under the MPL license. For help and support, please join the community.

Also note that we are actively looking for Design Partners, and emails are always welcome: hello@xtdb.com 👋