vs

Datomic vs XTDB

Datomic: Immutable Datalog database from Nubank where every fact is timestamped and queries run in the app process. XTDB: Bitemporal SQL database on object storage that keeps every version of every row.

key differences

  • Licensing: Datomic is open source (permissive) (Apache-2.0 (binaries only; source not published)); XTDB is open source (copyleft) (Mozilla Public License 2.0).
  • Horizontal scaling is none in Datomic and manual in XTDB.
  • Only Datomic has secondary indexes, full-text search, change data capture.
  • Only XTDB has json, columnar storage, compression.
  • Datomic can run embedded in your application process.

choose datomic for

  • +Financial and banking domain models needing auditability
  • +Systems that must answer what was known at a given time
  • +Complex domain graphs in Clojure services

best at · OLTP, Event sourcing, Ledger

choose xtdb for

  • +Financial and insurance systems needing as-of reporting
  • +Audit trails with retroactive corrections
  • +Event-sourced systems wanting SQL over history

best at · OLTP, Event sourcing, Ledger

overview
Primary model
Relational
Relational
Also supports
Graph
Document, Columnar / OLAP
Type
Database engine
Database engine
Status
Active
Active
Developer
Nubank (Cognitect)
JUXT Ltd
First release
2012
2019
Latest version
1.0.7745 (Oct 16, 2026)
2.2.0 (Oct 21, 2026)
License
Open source (permissive)Apache-2.0 (binaries only; source not published)
Open source (copyleft)Mozilla Public License 2.0
Free tier
✓
✓
popularity
WhichDB Score
14.9
8.3
Rank
#225
#328
GitHub stars
–
3.1K
Stack Overflow questions
436
7
scale & guarantees
Comfortable data size
Medium (≤ 10 TB)
Medium (≤ 10 TB)
Horizontal scaling
None
Manual
Multi-region
None
None
ACID
Full
Full
Consistency
Strong
Strong
Schema
Flexible
Flexible
Architecture
Distributed, Shared storage
Distributed, Shared storage
deployment
Self-hosted
✓
✓
Vendor-managed cloud
—
—
Serverless
—
—
Embedded
✓
—
Edge
—
—
Clouds
AWS
–
capabilities
Transactions
✓
✓
Joins
✓
✓
Secondary indexes
✓
—
Full-text search
✓
—
Vector search
—
—
Geospatial
—
—
JSON
—
✓
Change data capture
✓
—
Triggers
—
—
Stored procedures
—
—
Materialized views
—
—
TTL / expiry
—
—
Pub/Sub
—
—
Columnar storage
—
✓
In-memory
—
—
Durable persistence
✓
✓
Compression
—
✓
Encryption at rest
—
—
Role-based access
—
—
Time travel
✓
✓
Branching
—
—
Online schema changes
—
—
Streaming ingest
—
—
Offline sync
—
—
Runs in WebAssembly
—
—
interfaces
Query languages
Datalog, Pull API
SQL, XTQL
Client languages
Clojure, Java
Java, Kotlin, Clojure, Python, JavaScript, Go
Best for
OLTP, Event sourcing, Ledger, Knowledge graph
OLTP, Event sourcing, Ledger, HTAP

Datomic vs XTDB: FAQ

What is the difference between Datomic and XTDB?

Datomic: Immutable Datalog database from Nubank where every fact is timestamped and queries run in the app process. XTDB: Bitemporal SQL database on object storage that keeps every version of every row. Licensing: Datomic is open source (permissive) (Apache-2.0 (binaries only; source not published)); XTDB is open source (copyleft) (Mozilla Public License 2.0). Horizontal scaling is none in Datomic and manual in XTDB. Only Datomic has secondary indexes, full-text search, change data capture.

When should I choose Datomic over XTDB?

Choose Datomic for financial and banking domain models needing auditability; systems that must answer what was known at a given time; and complex domain graphs in Clojure services. Choose XTDB for financial and insurance systems needing as-of reporting; audit trails with retroactive corrections; and event-sourced systems wanting SQL over history.

Is Datomic or XTDB more popular?

Datomic ranks #225 on the WhichDB Score (14.9/100) and XTDB ranks #328 (8.3/100). Popularity is not fit: check the requirements that matter for your project.

Are Datomic and XTDB open source?

Yes. Datomic is open source. License: Apache-2.0 (binaries only; source not published). Yes. XTDB is open source. License: Mozilla Public License 2.0.