SaaS Economics

The Hidden Bloat in Your AI Tooling Stack

A full LibreOffice suite hiding inside ChatGPT. GPUs running at 5% utilization. The same discipline fixes both.

At a glance
  1. 01The ChatGPT desktop app secretly bundles a 1.7GB payload including a full LibreOffice suite.
  2. 02Enterprise generative AI spend tripled to $37 billion in 2025, driven mostly by inference costs.
  3. 03Prompt caching and continuous batching can cut LLM serving costs by up to 70% without new hardware.
  4. 04Average GPU utilization across production Kubernetes inference fleets sits at just 5%.
A massively oversized processor module housing a tiny, solitary logic die, illustrating severe bloat and underutilization in AI compute stacks.
Illustration generated by Remy for this story.

LLM inference cost optimization means cutting what you spend to run and serve model predictions without cutting the intelligence you actually use. In practice: cache repeated computation, batch requests, quantize models, route to the cheapest model that can do the job, and match GPU capacity to real demand instead of paying for idle silicon.

That definition sounds abstract until you look at what's actually installed on your machine right now.

Why is the ChatGPT desktop app 1.7GB of stuff you didn't ask for?

In September 2026, developer Simon Willison went digging through OpenAI's Codex/ChatGPT desktop app and found a folder called codex-primary-runtime sitting at 1.7GB.1 Inside it: a full Python installation, a full Node.js installation, native binaries for Poppler and git, and 429.7MB dedicated to libreoffice-headless, a complete copy of the open source office suite.1 None of this is disclosed anywhere in the app's interface.

Figure 1
What's hiding inside the ChatGPT desktop app
1.7GB
Size of the codex-primary-runtime folder
429.7MB
Space taken by the bundled LibreOffice suite

The reaction on Hacker News was blunt. One commenter confirmed a 422.9MB LibreOfficeDev.app buried in their own install and called it "peak software bloat."2 Nobody asked ChatGPT for a spreadsheet engine. It's there because bundling a working office suite is the fastest way to ship agentic file-editing features, and disk space is cheap until you're the one auditing it.

Why do 'free' AI tools carry hidden weight?

This isn't an isolated bug. It's a pattern. Vendors racing to ship agentic capabilities are bundling heavyweight runtimes and redundant dependencies directly into consumer apps rather than calling out to lightweight, purpose-built libraries.12 The tradeoff is real:

  • Disk footprint. Gigabytes of duplicate runtimes across every AI app you install, most doing the same job five different ways.
  • Attack surface. Every bundled binary is code that has to be patched, and most users have no idea it's running.
  • Update overhead. A full Node.js and Python stack shipped inside a chat app means two more update cycles your IT team never signed up to track.

None of this shows up on an invoice. It shows up on disks, in security audits, and eventually in an incident report nobody wanted to write.

What does your AI subscription stack actually cost?

The bloat inside the app is a rounding error next to the bloat in the subscription line. Roughly 50% of all enterprise software licenses go unused, and SaaS specifically sees 53% of applications sitting idle or underused, costing organizations around $21 million a year at scale.3 Companies wasted an average of $18 million on unused SaaS licenses in 2023 alone, a 7% jump from the year before.4 That waste pattern predates AI. AI just added a second, faster-moving layer on top of it.

Figure 2
SaaS licenses: used vs. wasted
53%Underused or unused
Underused or unused53%
Actively used47%
Source: Ramp

Enterprise generative AI spend went from $11.5 billion in 2024 to $37 billion in 2025, a 3.2x jump in a single year.5 And the composition of that spend is shifting. Enterprise LLM API spend more than doubled in six months of 2025, from $3.5 billion to $8.4 billion.6 The money used to go mostly toward training models. Now 74% of startups and 49% of large enterprises say the majority of their AI compute is inference, running models in production, up from 48% and 29% a year earlier.6 The bill you're paying today is overwhelmingly a bill for serving tokens, not building models. That's exactly where the markups on frontier model APIs do the most damage, because you're paying that markup on every request, forever.

Figure 3
Enterprise generative AI spend, 2024 vs 2025
spend (USD)
$11.502024$37.002025

Shadow AI: the tools employees add that nobody audits

Layer shadow AI on top and the picture gets worse. Multiple surveys put unauthorized AI tool use at 59% to 78% of employees, meaning most organizations have subscriptions and inference spend running through tools IT never approved and can't see on a dashboard.7 That's not just a governance problem. It's untracked cost, compounding the same way unused SaaS seats compound, except nobody's finance team even knows the line item exists. We've written before about what's sitting on employees' desktops, and the exposure is bigger than most security reviews assume.

Figure 4
Employees using unauthorized ('shadow') AI tools
66%Using unauthorized AI tools
Using unauthorized AI tools66%
Not using unauthorized AI tools34%
Surveys cited in the article range from 59% to 78%; a commonly reported figure of 66% is shown as representative.

The core levers: quantization, batching, caching, and routing

Once you accept that inference is where the money goes, the fix is technical, not just financial. A handful of levers do most of the work:

Figure 5
Enterprise LLM API spend, six-month jump in 2025
spend (USD)
$0$5$10$8.40Early 2025Mid 2025
  • KV caching. Avoids recomputing attention tensors for tokens the model has already seen during decoding, cutting redundant compute on every generation step.8
  • Continuous batching. Groups incoming requests dynamically instead of processing them one at a time, dramatically improving GPU throughput per dollar.
  • Quantization. Runs models at lower numerical precision (8-bit or 4-bit instead of 16-bit), shrinking memory footprint and speeding up inference with minimal accuracy loss.
  • Prompt and semantic caching. Stores and reuses output for repeated or near-duplicate prompts instead of paying for a fresh generation every time.
  • Model routing. Sends easy queries to cheap, fast models and reserves expensive frontier models for the requests that actually need them.
  • Speculative decoding. Uses a small draft model to propose tokens that a larger model verifies in parallel, cutting latency and compute per output token.8

Combined, these techniques can cut serving costs 3-4x or more without buying new hardware.9 Running Llama 3.1 70B on a single H100 costs $0.60 to $0.80 per million tokens unbatched, versus $0.15 to $0.25 with continuous batching.9 Same GPU. Same model. A fourth of the cost.

Figure 6
Inference cost per million tokens: unbatched vs. continuous batching
cost per million tokens (USD)
$0.80Unbatched (high end)$0.25Batched (high end)
Range reported as $0.60-$0.80 unbatched vs $0.15-$0.25 with continuous batching; high end of each range shown.
Source: Remy analysis

Case study: how prompt caching cut one company's LLM bill by 59-70%

Figure 7
ProjectDiscovery's cache hit rate climb
cache hit rate (%)
0%50%100%84%Before optimizationAfter optimization

ProjectDiscovery's agentic security system, Neo, is a clean real-world proof point. By restructuring prompts to maximize cache reuse, the team raised their cache hit rate from 7% to 84% and served 9.8 billion tokens from cache instead of regenerating them.10 The result: a 59% overall reduction in LLM costs, improving to 66% post-optimization and 70% in their most recent measured period.10 No new model. No new hardware. Just an architecture change that stopped paying for work already done.

Figure 8
ProjectDiscovery's LLM cost reduction over time
cost reduction (%)
59%Overall66%Post-optimization70%Most recent period

Why do most GPUs sit idle, and what does that cost you?

Here's the number that should worry every finance team funding an AI roadmap: average GPU utilization across production Kubernetes inference fleets sits at just 5%.9 The best cluster in Cast AI's dataset, a 136-node H200 deployment, still only hit 49%.9 The typical enterprise is paying full price for GPUs that spend 95% of their time doing nothing. It's the SaaS license-waste problem wearing a different badge. Fairgen cut GPU infrastructure costs by 70% simply by deploying automated right-sizing and autoscaling, without touching their model or serving framework.9

Figure 9
Average GPU utilization in production Kubernetes fleets
5%
Average GPU utilization
49%
Best cluster observed (136-node H200 deployment)
Source: Cast AI

If prices are falling, why do inference bills keep rising?

LLM inference prices have fallen 9x to 900x per year depending on the task, according to Epoch AI.11 Yet enterprise bills keep climbing, because falling per-token prices don't translate into falling total spend. Instead of switching to cheaper, older models and pocketing the savings, most enterprises move en masse to the newest, priciest frontier model available, and usage growth outpaces the price drops.116 Cheaper tokens just mean more tokens get spent, on more expensive models, more often. That's why enterprise API spend more than doubled in six months even as unit prices fell.6

When does it make sense to self-host instead of paying API markup?

None of this argues against using frontier APIs when workloads are unpredictable or low-volume. It does argue for a threshold. Once you're running high-volume, predictable inference workloads, the break-even math on owning quantized models usually favors self-hosting over paying API markup indefinitely. The same logic that has companies collapsing five-database stacks into one Postgres instance applies here: rent while volume is uncertain, own once the volume is proven and the math is real. Platforms like Remy exist for exactly this transition, turning ad hoc inference spend into infrastructure you actually control.

A practical audit checklist for your AI tooling stack

Treat your AI tooling the way a sharp finance team treats any SaaS renewal: assume it's carrying more weight than it needs to, and prove otherwise.

  1. Inventory every desktop AI app's actual footprint. Check disk usage per app, not just the download size. Look for bundled runtimes you didn't request.
  2. Audit license utilization quarterly. Unused and underused SaaS seats already cost organizations tens of millions a year.34 AI seats decay the same way.
  3. Measure your cache hit rate. If it's near ProjectDiscovery's original 7%, you're leaving 50%+ of your bill on the table.10
  4. Check GPU utilization, not just GPU count. If your fleet is anywhere near the 5% average, you're funding idle hardware, not intelligence.9
  5. Map shadow AI usage. Survey employees directly. Assume the real number sits in the 59-78% range reported industry-wide.7
  6. Route by task, not by habit. Reserve frontier models for the queries that need them and route everything else to cheaper models.

The fix for a bloated app and a bloated inference bill is the same discipline: stop assuming the vendor's defaults are lean, and check.

Frequently asked
Questions readers ask
What is LLM inference cost optimization?

It's the practice of reducing the cost of running and serving model predictions in production, using techniques like KV caching, quantization, continuous batching, prompt caching, and model routing, without cutting the model quality the workload actually needs.

Why are AI inference bills rising even though token prices are falling?

Because enterprises aren't pocketing the savings from cheaper tokens. They're moving to newer, pricier frontier models and using them more, so usage growth outpaces the price decline, and total spend keeps climbing even as the per-token cost drops.

How much can prompt caching actually save on an LLM bill?

ProjectDiscovery cut its LLM costs by 59% overall, later improving to 70%, by raising its prompt cache hit rate from 7% to 84% and serving 9.8 billion tokens from cache instead of regenerating them.

Why does the ChatGPT desktop app include LibreOffice?

To support agentic file-editing features quickly, OpenAI's Codex/ChatGPT app bundles a full LibreOffice-headless install (429.7MB) alongside complete Python and Node.js runtimes, adding 1.7GB of undisclosed software to the app.

Is it cheaper to self-host an LLM than to pay for API access?

It depends on volume. For high, predictable usage, self-hosting a quantized model typically crosses a real break-even point and becomes cheaper than paying ongoing API markups; for unpredictable or low-volume workloads, renting API access usually still wins.

Sources
  1. 1The ChatGPT/Codex app bundles a full copy of LibreOfficeSimon Willison's Weblog
  2. 2The ChatGPT/Codex app bundles a full copy of LibreOffice (discussion thread)Hacker News
  3. 3The hidden cost of unused software licensesRamp
  4. 4SaaS license waste tops IT spend challengesCFO Dive
  5. 52025: The State of Generative AI in the EnterpriseMenlo Ventures
  6. 62025 Mid-Year LLM Market Update: Foundation Model Landscape + EconomicsMenlo Ventures
  7. 720 Shadow AI Statistics 2024–2026: Enterprise AI Risks Companies Cannot IgnoreTechnology Radius
  8. 8Mastering LLM Techniques: Inference OptimizationNVIDIA Technical Blog
  9. 9LLM Inference Cost Optimization: Run AI Inference for LessCast AI
  10. 10How We Cut LLM Costs by 59% With Prompt CachingProjectDiscovery
  11. 11LLM inference prices have fallen rapidly but unequally across tasksEpoch AI
Portrait of Dana Whitfield
Dana Whitfield
SaaS Economics
Dana breaks down where software budgets actually go, one line item at a time.
More from Dana Whitfield
© 2026 The Official Remy BlogDrafted by AI authors, reviewed by human editors.