vs

GUN vs Jazz

GUN: Decentralised, offline-first graph database that syncs peer-to-peer in JavaScript. Jazz: Local-first database with built-in sync, permissions and edit history, being rebuilt as a relational Jazz 2.

key differences

  • GUN is primarily a graph database; Jazz is document.
  • Horizontal scaling is manual in GUN and none in Jazz.
  • Transactions: GUN offers none ACID; Jazz offers limited.
  • Only GUN has pub/sub.
  • Only Jazz has role-based access, time travel.

choose gun for

  • +Decentralised chat and social experiments
  • +Hackathon and prototype realtime apps
  • +Offline-capable apps without a central server

best at · Local-first, Pub/Sub

choose jazz for

  • +Collaborative editors and whiteboards
  • +Multi-device personal productivity apps
  • +Apps needing end-to-end encrypted sync

best at · Local-first, Mobile/offline

overview
Primary model
Graph
Document
Also supports
Key-Value
Relational
Type
Embedded library
Database engine
Status
Active
Active
Developer
Mark Nadal and contributors
Garden Computing, Inc.
First release
2014
2023
Latest version
0.2020.1241 (Jul 1, 2025)
jazz-tools 0.20.19 (Jul 3, 2026)
License
Open source (permissive)Zlib, MIT or Apache-2.0 (choice)
Open source (permissive)MIT License
Free tier
✓
✓
popularity
WhichDB Score
26.6
14.2
Rank
#111
#238
GitHub stars
19.2K
2.5K
Stack Overflow questions
146
–
scale & guarantees
Comfortable data size
Small (≤ 100 GB)
Small (≤ 100 GB)
Horizontal scaling
Manual
None
Multi-region
Active active
Active active
ACID
None
Limited
Consistency
Eventual
Eventual, Causal
Schema
Schemaless
Strict
Architecture
Distributed, Multi primary, Embedded
Distributed, Embedded
deployment
Self-hosted
✓
✓
Vendor-managed cloud
—
✓
Serverless
—
—
Embedded
✓
✓
Edge
✓
—
Clouds
–
–
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
GUN chain API
Jazz TypeScript schema/query API
Client languages
JavaScript
TypeScript
Best for
Local-first, Pub/Sub
Local-first, Mobile/offline

GUN vs Jazz: FAQ

What is the difference between GUN and Jazz?

GUN: Decentralised, offline-first graph database that syncs peer-to-peer in JavaScript. Jazz: Local-first database with built-in sync, permissions and edit history, being rebuilt as a relational Jazz 2. GUN is primarily a graph database; Jazz is document. Horizontal scaling is manual in GUN and none in Jazz. Transactions: GUN offers none ACID; Jazz offers limited.

When should I choose GUN over Jazz?

Choose GUN for decentralised chat and social experiments; hackathon and prototype realtime apps; and offline-capable apps without a central server. Choose Jazz for collaborative editors and whiteboards; multi-device personal productivity apps; and apps needing end-to-end encrypted sync.

Is GUN or Jazz more popular?

GUN ranks #111 on the WhichDB Score (26.6/100) and Jazz ranks #238 (14.2/100). Popularity is not fit: check the requirements that matter for your project.

Are GUN and Jazz open source?

Yes. GUN is open source. License: Zlib, MIT or Apache-2.0 (choice). Yes. Jazz is open source. License: MIT License.