Skip to content
AI·2026-04-23·Tommes Parzl

Prompt-Caching mit Claude: 90 % Token-Einsparung in der Praxis

Ein mittelgrosses Agent-System zahlt ohne Prompt-Caching fast das 10-fache. Hier die Architektur die wir in der Praxis einsetzen, die Zahlen dazu, und die zwei Fallen die dich die Einsparung wieder kosten.

claudeprompt-cachingcost-optimizationai-engineering

Warum Prompt-Caching der grösste Kosten-Hebel ist

Ein produktiver Agent hat typisch drei Teile im Context pro Turn:

  1. System-Prompt (Rolle, Instructions, Output-Format, Guardrails) — meist 2-5k Tokens, ändert sich selten
  2. Tool-Definitionen (JSON-Schemas für alle Tool-Calls) — meist 3-10k Tokens, ändern sich selten
  3. Gesprächs-Historie + aktueller Turn — variabel, wächst pro Konversation

In normaler API-Nutzung zahlst du für 1 + 2 + 3 bei jedem Turn. Die meisten Agent-Sessions haben 10-50 Turns. Rechnen wir:

  • System + Tools: 8k Tokens × 50 Turns = 400k Tokens nur für fixes Schema
  • Bei claude-opus-4-7 Input-Preis (~15 USD / 1M Tokens) = 6 USD pro Session allein für den unveränderlichen Teil

Mit Prompt-Caching wird der unveränderliche Teil einmal bezahlt und danach um ~90 % billiger wiederverwendet.

Die konkrete Architektur

const response = await anthropic.messages.create({
  model: "claude-opus-4-7",
  max_tokens: 2048,
  system: [
    {
      type: "text",
      text: SYSTEM_PROMPT,
      cache_control: { type: "ephemeral" }
    }
  ],
  tools: tools.map(t => ({
    ...t,
    cache_control: { type: "ephemeral" }
  })),
  messages: conversationHistory
});

Der Trick: die ersten 4 cache_control-Blöcke im Request werden gecached. Platziere sie an den Stellen mit maximaler Token-Länge und minimaler Änderungsrate.

Die Zahlen aus der Praxis

Ein Multi-Agent-System mit 4 spezialisierten Agents, average 20 Turns pro Session:

Szenario Input-Tokens / Tag Kosten / Tag (Opus)
Ohne Caching 2.4M ~36 USD
Mit Caching (72 % Hit-Rate) 0.34M effective + 2.06M cache ~9 USD

Einsparung: ~75 %. Bei 99 % Cache-Hit-Rate (möglich bei stabilem System-Prompt) ~90 %.

Auf Monats-Sicht: 1.100 USD → 270 USD. Der Unterschied zwischen produktiv und unökonomisch.

Die zwei Fallen

Falle 1: Cache-Invalidation durch versehentliche Änderung

Der Cache wird auf Exact-String-Match gemacht. Ein einziges Byte mehr im System-Prompt und dein Cache-Hit-Rate fällt auf 0 %.

Ursachen in der Praxis:

  • Dynamische Timestamps im System-Prompt ("Today is ...")
  • User-spezifische Werte im System statt in Messages
  • Automatische Formatter die Whitespace normalisieren

Fix: System-Prompt und Tool-Definitionen in Konstanten einfrieren. Dynamische Werte gehen in die messages-Array, nicht in system.

Falle 2: Cache-TTL läuft ab

Der Ephemeral-Cache hat eine TTL von 5 Minuten ohne Aktivität. Bei lang-pausierten Sessions (Nutzer macht Pause) verfällt der Cache und die nächste Anfrage zahlt wieder voll.

Fix: Bei langer Pause entweder

  • Cache-Warming per Heartbeat-Request
  • Oder erwartete Kosten akzeptieren und Session-Budget nicht unterschätzen

Was du heute tun kannst

  1. Dein System-Prompt und Tool-Definitionen in separate Konstanten extrahieren. Keine Dynamik drin.
  2. cache_control: { type: "ephemeral" } auf System-Prompt und Tools setzen.
  3. Ein Dashboard bauen das Cache-Hit-Rate pro Agent-Type misst (via API-Response-Metadata).
  4. Budget pro Session-Klasse festlegen und Alert wenn Cache-Hit-Rate unter 60 % fällt.

Referenz

In einem unserer Electron-basierten Multi-Agent-Projekte hat die Prompt-Caching-Integration die Kosten um ~75 % gesenkt bei identischer Antwortqualität. Eval-Suite zeigt keine Regression auf 140 Ground-Truth-Cases. Cache-Hit-Rate stabilisiert sich nach ~30 Turns auf 72 %.

Bereit für eine echte Bewertung?

Kurzes Scoping-Gespräch, klares Angebot, Start in zwei bis vier Wochen.

Gespräch anfragen

Newsletter

Substance über Schnee

Ein Mail alle zwei Wochen mit einem neuen Blog-Post oder einem technischen Deep-Dive. Kein Clickbait.