Couchbase Lite

active

by Couchbase, Inc. · since 2014 · also known as CBL, Couchbase Mobile

Embedded JSON document database with SQL++ queries, vector search and sync to Couchbase.

documentvectorembedded librarysource-availablemature

Overview

Couchbase Lite is the on-device half of Couchbase Mobile: an embedded JSON document store for iOS, Android, .NET, Java and C that queries with SQL++ (Couchbase's SQL for JSON), supports full-text and vector indexes, and replicates through Sync Gateway or Capella App Services to a Couchbase Server cluster, as well as peer-to-peer between devices. It is the most enterprise-ready option for offline-first apps that need conflict handling, per-channel access control and a supported vendor. The trade-off is lock-in to the Couchbase backend and an Enterprise Edition that holds several important features.

Strengths & trade-offs

Strengths

  • +SQL++ queries with joins and full-text search on the device
  • +Production-grade sync with channels, conflict resolvers and access control via Sync Gateway
  • +Peer-to-peer replication between devices without a server (Enterprise)
  • +On-device vector search for local AI features
  • +Backed by a vendor with enterprise support and long-lived releases

Trade-offs

  • −Sync only targets Couchbase Server or Capella, so the backend is fixed
  • −Encryption, vector search and P2P sync require the paid Enterprise Edition
  • −Heavier binary and API surface than lightweight mobile stores

Great for

  • +Field-service and retail apps that must work offline for hours
  • +Airline, logistics and healthcare apps with intermittent connectivity
  • +Edge deployments syncing to a central Couchbase cluster

Think twice for

  • −Apps whose backend is Postgres or another non-Couchbase store
  • −Hobby projects needing a tiny dependency
  • −Server-side analytics

Capabilities

Native or official first-party support · 9 of 25 tracked

✓Transactions
✓Joins
✓Secondary indexes
✓Full-text search
✓Vector search
✓JSON
✓Durable persistence
✓Encryption at rest
✓Offline sync
–Geospatial
–Change data capture
–Triggers
–Stored procedures
–Materialized views
–TTL / expiry
–Pub/Sub
–Columnar storage
–In-memory
–Compression
–Role-based access
–Time travel
–Branching
–Online schema changes
–Streaming ingest
–Runs in WebAssembly

Scale & consistency

Comfortable data size
Small · ≤ 100 GB
Horizontal scaling
None
Multi-region
No
Transactions
Full ACID
Consistency
Strong, Eventual
Schema
Schemaless
Architecture
Embedded
Query languages
SQL++ (N1QL), QueryBuilder API

Per-device database; the server side scales through Couchbase Server or Capella.

Deployment

Self-hosted Vendor-managed cloud Serverless Embedded Edge Kubernetes operator

Ecosystem

apis & protocolsNative SDKs, Couchbase replication protocol
client languagesSwift, Objective-C, Kotlin, Java, C#, C

Alternatives to Couchbase Lite

Compare all→
Realm (Atlas Device SDK)Object25.2

Object-oriented mobile database whose MongoDB sync service is gone; the local engine survives as open source.

couchbase-lite vs realm →
ObjectBoxObject12.4

Fast on-device object database with built-in HNSW vector search and an optional commercial sync server.

couchbase-lite vs objectbox →
PouchDBDocument23.2

JavaScript database for browsers and Node that speaks the CouchDB replication protocol.

couchbase-lite vs pouchdb →
PowerSyncRelational23.3

Sync engine that keeps on-device SQLite in sync with Postgres, MongoDB, MySQL or SQL Server.

couchbase-lite vs powersync →
Couchbase ServerDocument27.5

Memory-first distributed JSON database with SQL++, search, vector indexes and mobile sync.

couchbase-lite vs couchbase →
SQLiteRelational75.5

The in-process SQL engine that ships in every phone, browser and OS: one file, zero servers.

couchbase-lite vs sqlite →

Couchbase Lite FAQ

What is Couchbase Lite?

Couchbase Lite is a document database by Couchbase, Inc., first released in 2014. Couchbase Lite is the on-device half of Couchbase Mobile: an embedded JSON document store for iOS, Android, .NET, Java and C that queries with SQL++ (Couchbase's SQL for JSON), supports full-text and vector indexes, and replicates through Sync Gateway or Capella App Services to a Couchbase Server cluster, as well as peer-to-peer between devices. It is the most enterprise-ready option for offline-first apps that need conflict handling, per-channel access control and a supported vendor. The trade-off is lock-in to the Couchbase backend and an Enterprise Edition that holds several important features.

Is Couchbase Lite open source?

Not in the OSI sense. Couchbase Lite is source-available: you can read the code, but the license restricts some uses, typically offering it as a competing managed service. License: Apache-2.0 / BSL 1.1 Community Edition; commercial Enterprise Edition.

Does Couchbase Lite support ACID transactions?

Yes. Couchbase Lite supports full ACID transactions, with strong, eventual consistency.

Does Couchbase Lite scale horizontally?

Couchbase Lite does not scale horizontally; it runs on a single node, so you scale it up rather than out. It is comfortable at small scale (≤ 100 GB).

How can I run Couchbase Lite?

You can self-host it, embed it in your application and run it at the edge. Managed offerings include Capella App Services.

What is Couchbase Lite best for?

Couchbase Lite is a strong fit for field-service and retail apps that must work offline for hours; airline, logistics and healthcare apps with intermittent connectivity; and edge deployments syncing to a central Couchbase cluster. Think twice for apps whose backend is Postgres or another non-Couchbase store.

What are the best alternatives to Couchbase Lite?

Common alternatives to Couchbase Lite include Realm (Atlas Device SDK), ObjectBox, PouchDB, PowerSync and Couchbase Server. The right choice depends on your workload, scale and hosting; WhichDB's smart match ranks them against your requirements.

How popular is Couchbase Lite?

Couchbase Lite ranks #332 of 844 databases on the WhichDB Score (7.9/100), and #32 among document databases. The score combines public adoption signals such as package downloads, GitHub activity, job posts and developer discussion.