When a tool doesn't know, it should say so

Why telemeter.ai's free tools show 'pending' and 'unknown' instead of a confident wrong number — and the registry that makes that possible.

Every one of the free tools on this site makes a claim about a developer's money — the monthly cost of a model, the token weight of a prompt, the price delta between two providers. A tool that gets that quietly wrong is worse than no tool, because it spends the trust it was built to earn. So the tools follow one rule, written down before the first one shipped: a number the tool cannot stand behind is never rendered as if it could.

The problem with a hardcoded price table#

The obvious way to build a cost calculator is a table of per-model prices baked into the code. It works the day you ship it and rots within weeks — providers change prices, add models, deprecate others — and nothing about a stale number looks stale. The calculator keeps returning a crisp figure long after that figure stopped being true. On the site's highest-traffic page, that is exactly the kind of silent decay that erodes the trust the tool exists to build.

So the prices don't live in the code. They live in a model registry: a git-versioned record where every priced model carries its source URL, the date it was last verified, and a verification status. The tools read through that registry, never a literal table, and they surface what the registry actually knows.

Three honest states#

A price in the registry is in one of a few states, and the tools render each one differently on purpose:

  • Verified — the number agreed across independent public sources. Shown as a real figure, with the date it was checked.
  • Pending — a single source, or sources that disagree. Shown as pending, with a visible badge, and never as a number. A one-source price is a lead, not a fact, and the tool says so rather than picking one and hiding the doubt.
  • Stale — a real, previously-verified number that has aged past the freshness window. Shown as the number it is, flagged as of a date, so you can decide whether to trust it.
  • Unknown — the model isn't in the registry. The tool says it doesn't have it, rather than estimating.

The distinction that matters most is between stale and pending. Stale still shows the number, because it was once real and you can judge its age. Pending withholds it, because there was never a number solid enough to show. Collapsing those two into a single "here's a price" is the failure mode this whole design exists to avoid.

Ranges, not points, where a point would be a lie#

Some questions don't have a single honest answer at all. The energy a model burns per query, for example, is genuinely uncertain — published figures vary by source and method. The carbon tool reflects that by construction: it computes a range across independently published figures rather than a single number, and it states plainly what the range leaves out. A confident point estimate there wouldn't be precise; it would be false precision, which is worse.

Why this is a feature, not a caveat#

It would be easy to read all of this as the tools apologizing for what they don't know. It's the opposite. A tool that shows you a pending badge is telling you something true and useful — this price isn't nailed down yet — that a tool returning a confident figure is actively hiding. The honesty is the product. The registry, the verification states, the ranges: they exist so that when one of these tools does hand you a number, you can spend real money on the strength of it.

That's the standard. When a tool doesn't know, it says so.

Related