Turso

Turso

Edge-hosted distributed SQLite database

Features

  • Distributed SQLite at the edge (libSQL fork)
  • Embedded replicas for ultra-low latency reads
  • Multi-region replication
  • Compatible with SQLite tools and libraries

Pros

  • SQLite simplicity with distributed capabilities
  • Embedded replicas give local-speed reads
  • Generous free tier with 500 databases

Cons

  • Write performance limited by primary node
  • libSQL diverges from upstream SQLite
  • Less mature than PostgreSQL-based alternatives

Overview

Turso is a distributed database platform built on libSQL, an open-source fork of SQLite. It brings SQLite’s simplicity and reliability to edge computing, replicating data across global locations for low-latency reads while maintaining a single primary for writes.

Turso’s embedded replicas feature lets you sync a local SQLite database with the cloud, giving your application local-speed reads with cloud-backed persistence. This is particularly powerful for edge applications and mobile offline-first architectures.

When to Use

Turso is ideal for edge applications that need low-latency reads globally, for embedded applications that want cloud sync, or when you love SQLite’s simplicity but need multi-region distribution. It pairs excellently with Drizzle ORM and edge runtimes.

Getting Started

# Install CLI
curl -sSfL https://get.tur.so/install.sh | bash

# Create a database
turso db create my-app
turso db tokens create my-app
import { createClient } from "@libsql/client";

const db = createClient({
  url: "libsql://my-app-user.turso.io",
  authToken: "your-token",
});

const result = await db.execute("SELECT * FROM users");