Ravo Research
Engineering

Cloudflare D1 limits in practice, and the pagination patterns that hold up.

Cloudflare D1 limits in practice, and the pagination patterns that hold up at our scale.

By the Ravo teamMar 1, 2026 · 5 min read

D1 is fast and cheap until you hit its limits, and the limits aren't where you'd expect. Here's what bit us, and the patterns that held up once traffic grew.

Offset pagination doesn't scale

LIMIT/OFFSET reads every skipped row. Past a few thousand rows the deep pages get slow and burn your read budget. We moved to keyset pagination — ordering by an indexed cursor and seeking past it — and tail latency flattened immediately.

The other lesson: batch reads aggressively and treat each query as a budgeted resource. D1 rewards fewer, well-indexed queries far more than a traditional Postgres box does.