# Cloudflare D1

> The business case is thin, and there's no tooling to migrate thousands of databases. Durable Objects do per-tenant SQLite better.

- Verdict: Skip
- Vendor: Cloudflare
- Layer: [Data](https://cloudlesslabs.com/stack/layers/data.md)
- Last reviewed: 18 October 2026, by Nicolas Dao (Cloudless Labs, Sydney)
- Web page: https://cloudlesslabs.com/stack/cloudflare-d1/. The whole stack in one file: https://cloudlesslabs.com/stack/brief.md

Cloudflare names almost no customers, and the most detailed public production story is about outgrowing D1. D1 is built on Durable Objects; use the real primitive.

## Don't use it when

- One database per tenant at scale: each Worker needs a binding per database (redeploy to add one), migrations run once per database through a rate-limited API (10,000 databases ≈ 42–83 minutes, and going over locks every API call for 5 minutes), and each database is capped at 10 GB.

## Pricing

$5 a month covers 50M reads, 2M writes and 2 GB.

## Provisioning

Official Pulumi package · Official Terraform provider

## Use instead

Durable Objects for per-tenant SQLite; Neon for a normal database.

## Alternatives

- [Cloudflare Durable Objects](https://cloudlesslabs.com/stack/cloudflare-durable-objects/index.md): Per-tenant SQLite: unlimited objects, addressed by name, each migrating its own schema on first use.
- [Neon (serverless Postgres)](https://cloudlesslabs.com/stack/neon/index.md): A normal database with row-level security.

## Where it fits

- [A database](https://cloudlesslabs.com/stack/use-cases/database.md): don't. A thin business case and no tooling to migrate thousands of databases. For per-tenant SQLite, use the primitive D1 is built on; for a normal database, use Postgres. Instead: [Cloudflare Durable Objects](https://cloudlesslabs.com/stack/cloudflare-durable-objects/index.md) or [Neon (serverless Postgres)](https://cloudlesslabs.com/stack/neon/index.md).

## Related

- [Data](https://cloudlesslabs.com/stack/layers/data.md): every tool in this layer, with its verdict
- [The whole stack in one file](https://cloudlesslabs.com/stack/brief.md): every use case and tool, for questions that span many
- [Map of every Markdown file on cloudlesslabs.com, with what each one answers](https://ask.cloudlesslabs.com)
