Tesseract: benchmark your LLM inference providers with your own API keys

If you run open-source LLMs in production, you already know the routine. You check a public leaderboard, pick the provider that looks fastest for your model, deploy it, and then spend the next few weeks wondering why your p95 latency doesn't match what the chart said. The problem is that public leaderboards benchmark their own traffic, from their own servers, using their own API keys. That has almost nothing to do with your workload.

Tesseract is a benchmarking tool built specifically for engineers who have live accounts on multiple inference providers and want to know which one is actually winning for their use case, not someone else's.

Why "my provider is fast" is usually wrong

Inference providers are not consistent. Groq might be the fastest option for Llama 3.1 70B at 2pm on a Tuesday, and Together AI might pull ahead at 9am on a Friday when Groq has a cold start issue in your region. Fireworks might be cheapest for your token budget this week and 30% more expensive next week if they adjust pricing. These things change constantly, and no static leaderboard captures that.

The other thing static leaderboards miss is that your account tier, your region, and your specific prompt length all affect the numbers you actually see. A benchmark run from a data center in Virginia using a shared API key tells you very little about what your app will experience from a startup office in Berlin with a dedicated account.

This is the gap Tesseract fills.

How Tesseract works

You connect your own API keys for each provider you use. Tesseract supports Fireworks, Together AI, Groq, Baseten, and OpenRouter. Keys are stored encrypted and are never returned to the client in full. Once a key is connected and verified, Tesseract can benchmark on your behalf.

When you run a benchmark, you pick a model and write a test prompt. Tesseract fires the same request to every connected provider that serves that model, in parallel, and measures three things: time to first token, tokens per second, and total latency. It also computes cost per million tokens using each provider's pricing metadata. Every provider gets the same prompt, the same token limit, and the same conditions. The result is a ranked table showing which provider was fastest and which was cheapest, specific to your keys and your prompt.

Results are saved. Every run is reachable at its own URL with the exact prompt and settings used, so you can compare runs over time and spot trends that one-off scripts never surface.

The scoreboard that updates itself

Manual runs are useful for spot checks, but the more powerful feature is the live scoreboard. Every model you benchmark gets a row on your dashboard showing the current fastest and cheapest provider over the last 24 hours and 7 days, with trend arrows that tell you whether a provider is improving or slipping.

Pro users can schedule automated benchmarks at hourly, 6-hour, or daily intervals. The scoreboard stays current without any manual work. If Groq was fastest yesterday but Fireworks pulled ahead this morning, the scoreboard reflects that before you even open the app.

This matters more than it sounds. Inference providers have bad hours. Regional outages, cold start problems, traffic spikes from other customers, all of these affect your latency, and they happen without warning. A scoreboard that only reflects manual runs will always lag behind reality. One that runs on a schedule gives you something closer to ground truth.

From benchmark data to a code change

Knowing which provider is fastest is only useful if you can act on it quickly. This is where most benchmarking setups fall apart. You run a script, you see that Fireworks is 40ms faster than Groq this week, and then you manually update a base URL somewhere in your codebase and hope nothing breaks.

Tesseract generates a ready-to-paste config for each routing rule you create. You define an objective (lowest latency, highest throughput, or lowest cost) for a model, and Tesseract returns the current best provider under that objective along with the exact base URL, model identifier, and a curl or Python snippet you can paste directly into your app. If the top provider has no recent data, the rule falls back to the next-best option and labels it clearly.

This is the bridge from insight to action that most benchmark tools skip entirely.

Alerts when your provider stops winning

One of the harder problems in production is knowing when something quietly gets worse. Latency doesn't always spike dramatically. Sometimes it drifts up 50ms over two weeks, and you only notice when a user complains.

Tesseract's alert system watches the scoreboard and emails you when a condition is met. You can set a threshold on latency, cost, or simply ask to be notified when a better provider appears. Alerts debounce so a flapping metric doesn't send you 40 emails, and they stay suppressed until the condition clears and re-triggers. You get one email when the problem starts, and another if it comes back after clearing.

This is something no public leaderboard offers, because public leaderboards have no concept of your specific configuration or your specific thresholds.

What the free tier covers

The free tier lets you connect up to two providers and run five manual benchmarks per day. You can create one routing rule with a copy-ready config. There's no credit card required to start, and you'll see real benchmark results against your own keys before you pay anything.

The Pro tier at $39 per month adds unlimited connected providers, unlimited manual runs, automated scheduled benchmarks, unlimited routing rules, latency and cost alerts, and 7-day trend charts. For an engineer spending any real time babysitting provider performance manually, that math works out quickly.

Who this is for

Tesseract is built for ML and backend engineers at startups that already run open-source models in production. If you have accounts on two or more inference providers and you've ever maintained a benchmark script that was stale before you finished writing it, Tesseract replaces that script with something that runs on a schedule, keeps history, and tells you when to act.

If you're still choosing between providers based on a public leaderboard you found six months ago, Tesseract will almost certainly show you something different when you run it against your actual keys.

You can connect your first provider and run a benchmark at tesseract.click. The free tier is enough to see whether the provider you're using right now is still the best one for your model.