ClickHouse vs Postgres for analytics at scale: real examples
Published 2026-10-19 · Built only from first-party engineering write-ups in our database. Every number below comes from the linked source.
Cloudflare's 2018 post is the direct case: it rebuilt its HTTP analytics pipeline on ClickHouse, replacing a Postgres/Citus setup, at 6M requests per second. Staying on Postgres for analytics-style data is possible too: Timescale scaled a 350 TB+ dataset (10 billion new records a day) on PostgreSQL with its TimescaleDB extension, using hypertables, columnar compression and tiered storage.
ClickHouse vs PostgreSQL: side by side
| ClickHouse | PostgreSQL | |
|---|---|---|
| Stories in our database | 2 | 14 |
| Companies | Cloudflare | Atlassian, Datadog, Figma, GitLab, Notion, OpenAI, PlanetScale, Supabase and Tiger Data (Timescale) |
| Published | 2018–2022 | 2021–2026 |
| Techniques alongside it | columnar storage (2), aggregation (1), pipeline redesign (1), schema design (1) | connection pooling (3), horizontal sharding (3), read replicas (3), benchmarking (2) |
| Scale numbers stated in sources | 6M requests/sec (Cloudflare) | 118.5M QPS sustained for 16 minutes (PlanetScale); +53% avg write latency with remote_apply (pgbench TPC-B) (Datadog); 800 million users (OpenAI) |
| Direct comparison story | Cloudflare: HTTP Analytics for 6M requests per second using ClickHouse; Tiger Data (Timescale): How We Scaled PostgreSQL to 350 TB+ | (same story) |
Verdict
Columnar storage is the common thread: Cloudflare switched to a columnar database, and Timescale added columnar compression to Postgres. The rest of the Postgres stories here are transactional workloads, not analytics.
Counts are stories in How They Scaled tagged with each side, see the ClickHouse and PostgreSQL pages. They describe what these teams wrote about, not market share or benchmark results.