This article may contain affiliate links. We earn commissions when you shop through the links on this page.

Turso vs Cloudflare D1 2026: SQL Models, Free Limits and Billing

Method: Official documentation and pricing checked September 28, 2026. No benchmarks were run. Recommendations are based on documented features and billing, not hands-on results.

Start with D1 for a Cloudflare Workers application; evaluate Turso when its managed database and sync model fits your architecture. Shared SQLite ancestry does not make their APIs, synchronization or billing interchangeable.

Documented deployment models

Cloudflare describes D1 as a managed serverless database with SQLite SQL semantics, Workers integration and an HTTP API. Its read replication is a feature to evaluate for distributed reads; it is not evidence of a measured response time from this site.

Turso’s documentation distinguishes its embedded database from Turso Cloud, which manages Turso and libSQL databases. It points applications needing local reads and writes with push/pull synchronization to Turso Database and Turso Sync. Verify the driver and deployment path for your chosen database rather than mixing examples from different generations of the product.

Free limits checked today

MeterTurso FreeD1 on Workers Free
Storage5 GB5 GB total
Rows read500 million/month5 million/day
Rows written10 million/month100,000/day
Other boundary100 databases; 3 GB monthly syncDaily query limits reset at 00:00 UTC

Sources: Turso pricing, D1 pricing. Monthly and daily allowances are not directly interchangeable. A burst on one day can exhaust a daily allowance even if the monthly total looks small.

D1’s paid table includes 25 billion rows read and 50 million rows written per month. Above those allowances, reads are $0.001 per million and writes $1 per million. Storage above the included 5 GB is $0.75/GB-month. Include the applicable Workers subscription and app execution costs separately.

Rows read are rows scanned, not just rows returned. A query returning a small result can scan a large table. Indexes can reduce reads but add work on writes. Inspect the query metadata before projecting cost from request counts alone.

Turso publishes separate storage, row and sync allowances with paid overages. Its displayed paid prices depend on billing selection, so this comparison does not treat an annual-equivalent figure as a monthly checkout quote.

Recommendation and evaluation

Choose the service that fits where your application runs and how it needs to read and write data. Build one representative transaction and inspect query usage. If using sync or replicas, check the documented consistency behavior and your app’s recovery path after disconnection.

No global latency chart, throughput test or migration-time estimate was produced for this article. Confirm restoration, data export and runtime compatibility before moving a production database.

Sources, checked September 28, 2026: Turso docs, Turso pricing, D1 overview, D1 pricing.