NewPrompt Crunch now supports Fable 5. See our first results →

Cut input costs on long AI conversations by up to 75%

The drop-in proxy for teams running chatbots, tutoring, coaching, and long-session support on Claude or OpenAI - and the agencies that build them for clients. We strip out the conversation history your model has already read, so you stop paying to re-send it on every turn. Same answers. Up to 75% smaller input bill. Two lines to switch on.

$5 free credit · No card required · Two-line setup

You're paying for the same tokens again and again

Every message in a chat re-sends the whole conversation. By message 40, you're paying to process the first message forty times over - tens of thousands of tokens your model already read.

PromptCrunch sits in front of your provider and strips that repetition out of the older turns before it ships. Your model still sees everything it needs to answer. You just stop paying for the parts it's already seen.

Watch the bill stop growing with the conversation

01

Swap your base URL

Point your OpenAI or Anthropic SDK at Prompt Crunch. Your provider API key still goes to your provider. Everything else is identical.

02

We strip the repeats

Multi-turn conversations re-send the entire history every call, so we freeze the older turns into checkpoints and replay them byte-for-byte instead of re-optimizing from scratch on every request - that's also what keeps your provider's own prompt cache warm underneath us. Code, JSON, and structured data stay verbatim. Always.

03

Never worse than direct

If a request wouldn't benefit, we forward it as-is - so you're never charged a cent more than going direct to your provider. Every response shows the original vs. optimized token count, so you can watch it working.

Without Prompt Crunch

Prompt 1
200
Prompt 10
8,000
Prompt 20
25,000
Prompt 40
50,000

With Prompt Crunch

Prompt 1
200
Prompt 10
5,200
Prompt 20
8,200
Prompt 40
15,000
*From our 40-prompt conversational benchmarks on Opus 4.8, Sonnet 4.6, GPT-5.4, and Fable 5. Output tokens unchanged.
See exactly how the optimizer works

The savings, on every major model

We ran long, prose-heavy conversations through each one. On our 40-prompt Sonnet run, the input bill dropped from $2.56 to $0.64 - a 75% cut for the exact same responses. Across the board: 2.9M input tokens saved out of 6.1M. Code, JSON, schemas, and IDs come through untouched.

Claude Sonnet 4.6
75%
avg input savings
  • Peak input savings 87%
  • Input tokens saved 639,678
Claude Opus 4.8
70%
avg input savings
  • Peak input savings 87%
  • Input tokens saved 420,551
Claude Fable 5
67%
steady-state input savings
  • Peak input savings 81%
  • Overall, 12-prompt run 46%
  • First run June 9, 2026
GPT-5.4
60%
avg input savings
  • Peak input savings 64%
  • Input tokens saved 1,385,731

Steady-state is the per-prompt average once a conversation is long enough for compression to engage; shorter runs pass through until then.

Crunch the numbers on your spend

Your monthly LLM spend
$/mo
$50$20k+
Workload type
$68/mo
estimated input-token savings on Pro
All of that on a flat $29/mo subscription.
Start with Pro - $29/mo

An estimate based on our benchmark savings rates applied to the conversational share of your bill. Your real number shows up live on the dashboard from your very first request. $5 free credit, no card required.

Two-line integration

Change two lines: point your SDK at our base URL and add your PromptCrunch key. Everything else stays exactly as it is - your prompts, your provider key, your response format, your error handling.

python / anthropic
import anthropic

client = anthropic.Anthropic(
    api_key="your-anthropic-key",
    base_url="https://api.promptcrunch.dev",
    default_headers={
        "X-PromptCrunch-Key": "pc_live_...",
    },
)
python / openai
from openai import OpenAI

client = OpenAI(
    api_key="your-openai-key",
    base_url="https://api.promptcrunch.dev/v1",
    default_headers={
        "X-PromptCrunch-Key": "pc_live_...",
    },
)
LangChain LlamaIndex Vercel AI SDK Instructor LiteLLM Pydantic AI Mastra + anything that lets you set a base URL
Read the full API reference

Built for production

Your keys stay yours

Your provider API key is forwarded directly to OpenAI or Anthropic. Not stored, not logged.

Smart passthrough

Requests already using provider prompt caching pass through untouched, so your cache hits stay cheap. Short conversations skip optimization entirely. Longer ones add a few hundred milliseconds - and the leaner prompt means your provider answers faster. Never worse than going direct.

Graceful fallback

If our optimization pipeline errors on any request, we silently forward your original messages to the provider. Your application keeps working. You can also send a single header to bypass optimization entirely whenever you want.

Real-time dashboard

Every request logged with before-and-after token counts, dollars saved, model breakdown, and daily trends. The proof that we pay for ourselves is right there from day one.

Want to run it locally?

We're building a self-hosted version. Drop your email and we'll let you know when it's ready.

Got it. We'll be in touch.
See what self-hosted includes

Nothing saved, nothing sold

A small encrypted optimization state lives in memory for an hour so we don't reprocess each prompt from scratch. Flip on zero-retention and even that goes away. The state rides back to you with the response as a signed encrypted blob instead.

Read our full security model

Optimization state only

We cache a lightweight state object. Your prompts and responses never touch disk.

Ephemeral

Lives in memory, auto-purged after one hour. Nothing hits disk.

API keys pass through

Forwarded directly to the provider. Not stored, not logged, not read.

We log numbers, not words

Token counts and dollar amounts for billing. Zero message content in our logs.

No training, no selling, no sharing

We don't train on your data, and we never sell or share it. The optimizer runs on a strict no-retention basis. Your data goes nowhere.

Want zero retention?

Flip one toggle in your dashboard. We hold nothing. The optimization state rides with your response as a signed encrypted blob.

01

Send your request. We optimize and forward it.

02

Get a state blob back. Encrypted, signed, not your messages.

03

Send it back with your next prompt. We pick up where we left off. Nothing stored on our end.

04

Lose it? We reprocess from scratch. No data lost, ever.

Flat pricing.

$29
per month, Pro
No per-request fees. Start free, and upgrade once Pro has paid for itself.
  • Free plan: $5 credit and 100 requests/day. No card required.
  • Pro at $29/month. Agency at $199/month with one key per client bot and printable reports.
  • If our pipeline errors, your original prompt still goes through.
Try it free See full pricing

Built for teams

Run bots for clients? Agency gives you one API key per client, per-client spend caps, and printable per-client reports under a single invoice - so you can bill the savings back or just pocket the margin. Start on Pro and move up to Agency at $199/mo when you're ready. Need it inside your own infrastructure? Self-hosted is on the way - join the waitlist.

See team pricing Self-hosted & Enterprise

Common questions

More in the help center, or email us.

How much does the Claude API cost, and how much can Prompt Crunch save me?

Claude API pricing scales with both input and output tokens. Sonnet 4.6 runs $3 per million input tokens, Opus 4.8 $5, and the new Fable 5 $10. On multi-turn workloads the input side dominates, because you re-send the whole conversation every turn.

Prompt Crunch cuts that input bill by 60-75% on long (20+ turn) prose-heavy conversations in our benchmarks, and less on shorter ones. On our 40-prompt Sonnet benchmark we went from $2.56 down to $0.64, a 75% reduction in Claude API cost for the exact same responses. Our first Fable 5 run (12 prompts) averaged 67% savings per prompt once compression kicked in, with an 81% peak.

How do I reduce my OpenAI API bill?

The single biggest driver of OpenAI token cost is multi-turn context. Every call re-sends the full conversation, so a 20-message chat pays for the first message 20 times. Prompt Crunch strips that redundancy before forwarding to OpenAI.

Swap your base_url to our proxy, add one header, and your existing OpenAI SDK code keeps working. Plans are a flat subscription, and the dashboard shows the before-and-after token counts so you can check the math yourself.

What is an LLM proxy, and why would I want one?

An LLM proxy sits between your application and your model provider (OpenAI, Anthropic, etc). Your SDK calls the proxy instead of the provider directly. The proxy forwards the request and the response, and can transform either one in flight.

Prompt Crunch is an LLM proxy focused on one job: reducing the number of input tokens you pay for. No routing, no caching layer, no observability UI. Just a clean drop-in that shrinks your bill on the way through.

Which models does Prompt Crunch work with?

Every model on the Anthropic Messages API (Fable 5, Sonnet 4.6, Opus 4.8, Haiku 4.5) and the OpenAI Chat Completions + Responses API (GPT-5.5, GPT-5.4, GPT-4.1, GPT-4o, o-series, Codex). If your code uses the official SDK with a configurable base URL, it works.

Streaming, tool use, JSON mode, and vision inputs are all forwarded verbatim. Optimization targets the conversational text in older turns, so prose-heavy chat, tutoring, coaching, and support workloads see the biggest savings.

How is this different from Anthropic's prompt caching?

They solve different halves of the problem, and they stack. Caching helps when you send the same prefix over and over. PromptCrunch helps when the conversation grows - which is every real chat, support thread, and tutoring session.

Run both: we leave your cached requests exactly as they are and go to work on the long conversations caching can't reach. You get the cheap cache hits and a smaller bill on everything else. See the full comparison.

Won't optimization break my conversation context?

No. Code blocks, JSON, config files, schemas, IDs, URLs, numbers, and any structured data are preserved verbatim. Only conversational filler, repeated context, and verbose explanations get optimized.

We benchmarked 40-prompt conversations on Opus 4.8, Sonnet 4.6, and GPT-5.4, plus a 12-prompt run on Fable 5, and saw no quality degradation.

What's the latency overhead?

Short conversations pass straight through with zero overhead. Longer conversations add a few hundred milliseconds for the optimization step before forwarding to your provider.

Net latency is usually lower, not higher: a 50% smaller prompt means the provider spends less time processing input tokens, which more than offsets our overhead on most requests.

What happens if Prompt Crunch goes down?

If our optimization pipeline errors on a single request, we silently fall back to forwarding your original messages to the provider. Your application keeps working. The response carries a _promptcrunch.status: "error" flag so you can audit it.

If the proxy itself is unreachable, your SDK will throw a connection error like any other network blip.

How do I know you're actually saving me money?

Every API response carries the original-vs-billed token count as both a JSON field (_promptcrunch.tokens_saved) and an HTTP header (X-PromptCrunch-Saved). Your dashboard shows the breakdown per model, per day, in dollars.

Plans are flat, so the check is simple: if the dashboard shows more saved than the subscription costs, it's working. If it doesn't, cancel.

Does this work with LangChain, LlamaIndex, the Vercel AI SDK, etc?

Yes. Anything that lets you set a custom base_url on the OpenAI or Anthropic client works. Which is essentially everything.

Two lines of code change: swap the base URL and add the X-PromptCrunch-Key header. The rest of your stack is identical. Your provider API key still goes to your provider, your prompts behave the same way.

What about GDPR, privacy, and my data?

Your provider API key is forwarded straight through to OpenAI or Anthropic. We never store it. Not in logs, not in the database, not anywhere. Here is the actual data flow: your prompt is forwarded to your provider; when compression runs on a long conversation, the older history is processed by a fast summarization model; by default we hold only a small encrypted optimization state in memory for one hour, then it's gone. Nothing is stored at rest unless you enable metrics retention.

Need stricter? Flip on zero-retention mode (paid plans) in your dashboard. We hold nothing. The optimization state rides with your response as a signed encrypted blob, and your client echoes it back on the next request. The full data-flow description is on the security page.

Two minutes to your first crunch

$5 free credit. No card required.
Try it free