Research · July 24, 2026

The Cloud You Might Not Need

Every infrastructure decision at most companies isn’t really a decision. New project, new cloud account, done. Nobody stops to ask whether a single Postgres server would do the same job for a tenth of the cost, because nobody’s asked that question is about 2015.

The waste has been stable for six years, which means it isn’t a mistake. Flexera’s annual State of the Cloud survey has put wasted cloud spend somewhere between 27 and 32 percent every single year since 2019. Not trending down. Not trending up much either. Stable waste is structural waste- it means the architecture itself produces the overspend, not a specific bad decision anyone can fix with a cost review. Against Gartner’s $675 billion 2025 global public cloud spend estimate, that stable 27 percent works out to roughly $180 billion burned in a single year across the industry.

Most companies aren’t running the data size they think they’re running. Jordan Tigani, who spent years running BigQuery’s customer sizing analysis before founding MotherDuck, found that the large majority of BigQuery customers stored under a terabyte of data in total. Among customers spending real money on the platform, 90 percent of queries processed under 100 megabytes of data, not gigabytes, megabytes. Customer data sizes followed a power-law curve: a handful of enormous outliers, then a steep drop-off to everyone else. A separate survey of venture-backed companies put the typical data warehouse at around 100 gigabytes, with even the largest B2B companies sitting around 1 terabyte and the largest B2C companies around 10.

Data also gets queried a lot less the older it gets, which shrinks the real working set further. Data a week old is roughly 20 times less likely to get queried than data from the current day. A month in, it mostly just sits there. In a typical setup, the most recent year of data might account for only 30 percent of total storage but 99 percent of query activity. A table holding ten years of history might see almost no queries against anything older than the current day.

The hardware side of the story is just as stark. In 2006, the year AWS launched EC2, the only instance available had a single core and 2 gigabytes of RAM, and plenty of real workloads didn’t fit. Today’s standard cloud instance ships with 64 cores and 256 gigabytes of RAM, two orders of magnitude more memory. Pay for a memory-optimized instance and you can get two orders of magnitude beyond that: up to roughly 24 terabytes of RAM and 445 CPU cores, on one machine, no cluster required. The definition of “doesn’t fit on a single machine” has been shrinking for twenty years while marketing kept the distributed-systems pitch exactly the same.

A single server running Postgres, dbt, Python, and a BI tool covers almost everyone in that range. Postgres handles multi-terabyte workloads in production today; the constraint was never the database engine, it was disk I/O on decade-old hardware. dbt gives you version-controlled, testable transformations without a separate orchestration platform. Python covers anything SQL can’t. A BI tool on top reads directly off Postgres. That’s the entire stack for a company with 100 gigabytes to a few terabytes of data, which is most companies- and it runs on hardware that costs a few hundred dollars a month instead of a cloud bill that scales with usage nobody’s watching.

The repatriation numbers aren’t a fringe movement anymore. A Barclays CIO survey found 86 percent of CIOs planned to move at least some public cloud workloads back to private cloud or on-premises in 2025, the highest share on record. An IDC survey put a similar number, 80 percent, planning to repatriate something within 12 months. Only about 8 percent are planning a full cloud exit- this is selective, workload-by-workload economics, not an ideological retreat. The dollar figures back it up: 37signals reported roughly $7 million saved over five years after leaving AWS. Dropbox saved close to $75 million over two years moving off public cloud, and its gross margin moved from 33 to 67 percent over that same stretch.

None of this means avoid the cloud. Genuinely elastic workloads- traffic that spikes 50x during a sale, a product with unpredictable geographic demand, a startup that doesn’t know its shape yet- are exactly what the cloud was built for. Regulated industries also have real reasons to want a specific provider’s compliance certifications and data residency guarantees rather than build and audit that themselves. The cloud is the right call there. The mistake is defaulting to it for the other case: predictable, steady-state workloads with a known data size, running on infrastructure priced for the possibility of a spike that never comes.

If you do need the cloud, design for the exit before you sign the contract. The cost of leaving is almost entirely a function of how deep you built into a single vendor’s proprietary services. A team that uses managed Postgres, containerized workloads, and infrastructure-as-code can move providers or repatriate in a weekend, because the actual application doesn’t know or care what’s underneath it. A team that built on a vendor’s proprietary queueing service, serverless framework, and managed ML pipeline is looking at a rewrite, not a migration. The choice to stay flexible costs almost nothing up front. It’s the difference between a repatriation being a deployment change and a repatriation being a multi-quarter project- decide which one you want while you’re still choosing the stack, not after the bill arrives.

The interactive number below is the same math applied to one company. Enter a monthly cloud spend and see what the stable, six-year 27 percent waste figure actually means in dollars, and what five years of doing nothing costs against five years of a repatriation that recovers even half of it.

Sources: Flexera State of the Cloud Report (2019–2026 editions); Jordan Tigani, “Big Data is Dead,” MotherDuck, including internal BigQuery query-log and customer-sizing analysis; Barclays CIO Survey (via Puppet, 2025); IDC Cloud Repatriation Survey (2024); a16z, “The Cost of Cloud, a Trillion Dollar Paradox”; 37signals infrastructure cost disclosures; Dropbox S-1 (2017); AWS EC2 instance type history.

A note on the BigQuery figures above: Tigani has been explicit that the exact numbers behind his internal analysis are confidential, so the query-age decay chart is an illustrative reconstruction of the pattern he describes rather than his exact published data. The 90 percent under-100MB figure and the EC2 hardware figures are stated directly in his essay.