Assays value, not just count

Know what your AI spend was actually for

Your provider's bill is a total. Assay turns it into the numbers you can act on — cost per product, per feature, per customer, per outcome — on your own machine, joined to the work that caused it.

Runs on your machine Nothing leaves Audit-grade MIT substrate

What Assay answers

Four questions your bill cannot answer

An invoice is one number for the month. These are the numbers people actually make decisions with — and none of them can be recovered from an invoice, because the invoice never saw the work.

01

What did this product cost to build?

Spend attributed to the work that produced it — a product, a feature, a repo, a release. You get an upper bound and a partitioned estimate, both labelled, plus the spend it could not attribute at all.

02

Where is the money going to waste?

A frontier model doing mechanical work. A session that ran away overnight. A cache that quietly stopped being hit. Each one is flagged against your own ledger, and each one opens onto the conversation that spent the money.

03

What did a result cost?

Bind spend to the results it produced — a ticket resolved, a build shipped, a customer served — and read cost per outcome instead of cost per month. Where an outcome has no value declared, Assay says so rather than inventing one.

04

What should this customer be charged?

Meter AI usage inside your own product, per customer and per feature, on a ledger that records each unit of work exactly once. That is what makes it safe to put a charge on the other side of it.

Why not the billing page

The bill says what you spent. Assay says what it bought.

  • A total is not an answer. Your provider can tell you what the month cost. It cannot tell you which product, which feature or which customer that went to, because it never saw your work.
  • The work is the missing half. Assay keeps the spend and the conversation that drove it in one record. That join is what turns a number into an explanation you can act on.
  • It runs where your data already is. No hosted default, no telemetry back-channel, and no prompts shipped to a vendor in exchange for a chart.
  • It cannot break anything. Assay is not in the request path. It reads what already happened, so it cannot slow a turn down and cannot fail one.

Who it is for

Built for whoever has to answer for the number

You run agents in production

One runaway loop, or one cache that quietly stopped being hit, multiplies the bill for weeks — and the provider's dashboard still shows a total that looks normal.

You embed AI in your own product

You need metering and attribution as a library rather than a vendor: per customer, per feature, on your own infrastructure, recorded once so a replayed event never charges twice.

You answer to a CFO

You need a cost figure that can still be reproduced six months from now, and that survives the question of how it was derived.

You cannot send prompts to a third party

Regulated, security-reviewed, or simply unwilling. "We are SOC 2" is not the same answer as "it never left the machine."

The console

The whole picture on one screen

A read-only console over your own store. It runs the same reports the command line runs, so the screen and the terminal can never report different numbers — and a panel only appears if your store can actually answer it.

The Assay console spend panel: total spend, work units counted, unpriced units called out in amber, token count, and a breakdown by model.
Demo capture. Every figure on these three screens comes from a seeded demo store that ships with the product — not from anyone's real data.
The Assay console waste panel: recoverable spend shown as an upper bound, its share of the window, and how much of the window was excluded from the judgement.
Waste — what could be recovered, stated as an upper bound, with what it left out printed beside it.
The Assay console goals panel: spend and tokens grouped by what the work was for, with the source of each label shown beside it.
Goals — what the money was for, grouped so it adds up, with unlabelled work surfaced rather than dropped.

Why you can trust the number

Numbers you can put in front of a CFO

Assay is built to produce figures that survive a review — reproducible later, safe to bill from, and honest about their own limits.

  • It runs on your machine. Your own store, your own keys, no hosted default and no telemetry back-channel.
  • Your prompts never leave. Exactly one command in Assay reaches the network, and it fetches public price lists. It never opens your database.
  • Deletion that actually deletes. Erase one party's conversations for good while every accounting row stays intact — and if the erasure is only partial, it says so instead of reporting success.
  • A wrong number is corrected in the open. History is never quietly rewritten. You can always see what a figure was, what it is now, and why it changed.
  • It states what it cannot measure. Where a cost is unknown, Assay reports the gap rather than filling it with an estimate. Unknown is not zero.
  • We run it against our own operation first. Every number this product prints, it has printed about us — including the ones we did not enjoy reading.

Pricing is positioning

The substrate is MIT. The value layer is the product.

Free, under MIT: the ledger itself, the stores, the price table, and the capture. The money is the layer above it — attribution, valuation, waste, cost per outcome, the ingest door, and the console.

That line is not a marketing boundary. It is enforced by the build, which is why an eventual open-source release would be a move rather than an untangling.

The repository is private today. The MIT grant on the substrate is standing, so publication would be a visibility flip rather than a relicensing — but it has not happened.

Assay your spend.

It installs on your machine, reads the AI work your systems already did, and hands back the numbers a bill was never able to produce.