| llm / go / devops / performance / benchmark

TTFT variierte 13x in meinem LLM-Provider-Benchmark-Snapshot

Stündliche Messungen an 15 Frontier-Modellen von OpenAI, Anthropic, Google, DeepSeek und xAI über OpenRouter. In diesem Snapshot reichte der Median-TTFT von 321ms bis 4.226ms. Rohdaten inklusive.

Die These

Jeder LLM-Anbieter veröffentlicht Durchsatzzahlen unter Idealbedingungen. Niemand veröffentlicht, was der Produktionstraffic tatsächlich erlebt: Time to First Token (TTFT), kontinuierlich von einem festen Standort aus gemessen.

Ich habe einen automatisierten Benchmark aufgesetzt, der 15 Frontier-Modelle stündlich testet und alle Rohdaten veröffentlicht. Nach über 30 Stunden Daten über 5 Anbieter hinweg zeigte dieser Snapshot eine 13x-Spanne beim Median-TTFT.

Einschränkung: Das ist kein universeller Provider-Benchmark. Die Requests liefen über OpenRouter von einem Deployment-Standort, die Sample-Zahlen waren für einige Modelle noch klein, und Provider-Routing ändert sich über die Zeit. Die Zahlen sind ein reproduzierbarer Snapshot und ein Grund, den eigenen Traffic zu messen, kein dauerhaftes Ranking.

Das Setup

Jede Stunde sendet ein Probe eine minimale Anfrage (“Hi”, max 20 Tokens) an jedes Modell über OpenRouter. Der Prompt ist absichtlich winzig, um die Infrastrukturlatenz von der Modell-Rechenzeit zu isolieren.

Getestete Modelle:

  • OpenAI: GPT-5.4, GPT-5.5, GPT-OSS-120B
  • Anthropic: Claude Sonnet 4.6, Claude Opus 4.6, Claude Opus 4.7
  • Google: Gemini 2.5 Flash, Gemini 2.5 Flash Lite, Gemini 2.0 Flash
  • DeepSeek: DeepSeek v3.2, DeepSeek v4 Flash, DeepSeek v4 Pro
  • xAI: Grok 4 Fast, Grok 4.1 Fast, Grok 4.3

Die Zahlen

ModellMedian TTFTMedian DurchsatzMedian LatenzMessungen
google/gemini-2.5-flash-lite321ms191,9 Tok/s395ms17
google/gemini-2.5-flash412ms235,6 Tok/s464ms17
google/gemini-2.0-flash-001405ms203,2 Tok/s468ms17
openai/gpt-5.4912ms44,8 Tok/s1.147ms17
openai/gpt-5.51.158ms44,0 Tok/s1.501ms17
openai/gpt-oss-120b1.491ms1.977,0 Tok/s1.584ms2
anthropic/claude-opus-4.61.709ms70,4 Tok/s1.939ms17
deepseek/deepseek-v3.21.734ms24,7 Tok/s2.372ms17
anthropic/claude-sonnet-4.62.120ms44,3 Tok/s2.842ms17
x-ai/grok-4.1-fast2.545ms2.985,4 Tok/s2.593ms17
anthropic/claude-opus-4.72.494ms94,9 Tok/s2.599ms17
deepseek/deepseek-v4-flash3.122ms251,6 Tok/s3.560ms16
deepseek/deepseek-v4-pro3.411ms108,1 Tok/s3.816ms3
x-ai/grok-4-fast3.618ms1.338,7 Tok/s3.682ms17
x-ai/grok-4.34.226ms1.114,8 Tok/s4.328ms17

Was das bedeutet

Google gewinnt beim TTFT mit großem Abstand. Alle drei Gemini-Modelle antworten im Median in unter 500ms. Gemini 2.5 Flash Lite mit 321ms liefert das schnellste erste Token über alle 15 Modelle.

OpenAI liegt im Mittelfeld. GPT-5.4 mit 912ms und GPT-5.5 mit 1.158ms sind solide, aber nicht herausragend.

Anthropic hat die größte Streuung innerhalb eines Anbieters. Claude Opus 4.6 mit 1.709ms ist akzeptabel. Claude Opus 4.7 mit 2.494ms und Sonnet 4.6 mit 2.120ms sind beim ersten Token deutlich langsamer.

xAI und DeepSeek sind am langsamsten beim Streaming-Start. Grok 4.3 braucht im Median 4.226ms bis zum ersten Token. Das ist 13x langsamer als Gemini Flash Lite.

Schnellstes erstes Token != schnellste Generierung

Der Durchsatz erzählt eine völlig andere Geschichte. Die xAI-Grok-Modelle sind am langsamsten beim Start, produzieren aber 1.000 bis 3.000 Tok/s, sobald sie loslegen. Grok 4.1 Fast mit 2.985 Tok/s ist 121x schneller als DeepSeek v3.2 mit 24,7 Tok/s.

Wenn Batch-Verarbeitung der Anwendungsfall ist und TTFT keine Rolle spielt, sind xAI und DeepSeek v4 Flash starke Optionen. Wenn der Anwendungsfall interaktiver Chat ist, bei dem Nutzer auf einen Ladebalken starren, gewinnt Google.

Warum das für die Produktion wichtig ist

Wer einen 3-Sekunden-Timeout für LLM-Aufrufe fest einstellt, würde bei 5 der 15 Modelle in diesem Benchmark regelmäßig scheitern. Bei 2 Sekunden wären es 8 von 15 im Median.

Die meisten Teams setzen Timeouts basierend auf dem, was sich während der Entwicklung mit einem Anbieter richtig anfühlte. Diese Zahlen zeigen, dass ein Anbieterwechsel (oder sogar ein Modellwechsel beim selben Anbieter) das Timeout überschreiten kann, ohne dass sich am Code etwas ändert.

Live-Dashboard und Rohdaten

Dieser Benchmark läuft kontinuierlich. Das Live-Dashboard mit Diagrammen ist unter bench.jonathanwrede.de erreichbar.

Alle Rohdaten werden als JSONL veröffentlicht und sind frei verfügbar unter github.com/Jwrede/llm-bench-data. Die Modellliste aktualisiert sich täglich basierend auf OpenRouters Popularitätsrankings.

Die Probing-Infrastruktur ist mit llmprobe gebaut, einem Open-Source-Go-CLI, das TTFT, Latenz und Durchsatz per HTTP und SSE-Parsing misst (keine SDKs). Es funktioniert auch als MCP-Server für Claude Code, sodass man die Anbieter-Gesundheit direkt aus dem Editor prüfen kann.