Agent costs
An agent pays for what it looks at.
Every screenshot is image tokens, and a full screen is not a small one. Most of what a loop sends is a picture answering a question that never needed one. The figures below are ours, they are published in full alongside the code, and the design that produces the cheaper column is the thing we build.
What a look costs
The bill is set by how much screen you send.
Models bill visual tokens by area. Current models accept a long edge large enough that a 1080p screenshot is not scaled down before billing, so a full screen is charged as a full screen.
| What you send | Visual tokens | At $5 per million input |
|---|---|---|
| 1920×1080, the whole screen | 2,691 | $0.0135 |
| 1456×819, a standard-tier view | 1,560 | $0.0078 |
| 960×540, half scale, readable for layout | 700 | $0.0035 |
| 400×200, one dialog, cropped | 120 | $0.0006 |
| 200×100, one field or button | 32 | $0.0002 |
Prices as of August 2026 and for one model. Check the current rate and multiply by the token counts, which do not move. Other vendors bill differently, but the shape holds: a full screen costs one to two orders of magnitude more than a crop.
The same job, driven two ways
Twenty minutes watching an installer.
Nothing about the task changes between these two rows. The difference is entirely in what the loop was built to ask.
| How you drive it | Image tokens | Cost |
|---|---|---|
| A full-screen look every 20 seconds | 161,460 | $0.81 |
| Waits, six full looks and twenty crops | 18,546 | $0.09 |
About ninety per cent less, and the waiting is free.
In the order they save
The expensive mistake
A picture sent as text costs twenty-one times more and cannot be read.
A 1080p JPEG is about 169 KB. Handed to a model as an image it is roughly 2,700 visual tokens. Handed over as a base64 string it is about 56,000 text tokens, for characters no model can interpret as a picture.
It is the costliest error this kind of interface can make, and it is invisible until the invoice arrives. Our tools return image content, and a test pins that behaviour so it cannot regress quietly.
Why the waiting is free
The wait is answered by the capture service, not the model. It decodes at quarter scale in grayscale, cropped to the region in question, and counts pixels that differ past a threshold you set in full-resolution terms. No image is produced and nothing is billed. It also distinguishes the two ways a wait can end: a timeout after real comparisons means the screen did not change, while a timeout with nothing compared means the eye could not look, and the two must never be reported as the same answer.
The other half of the bill
Local models carry the volume. Frontier models are an escalation.
Cropping controls what a look costs. The second question is who is asked. Most of what a loop wants to know is narrow and repetitive, runs thousands of times, and a small model on your own hardware answers it at a marginal cost of nothing.
What a small model is not good at is coherence: holding a long plan together, or recovering from something genuinely unexpected. Our own comparison put it bluntly. Local hardware wins on speed by a wide margin and loses on coherence. So the frontier model is not the default worker; it is what the loop escalates to.
Where the line sits
A dedicated small model for internal classifiers and judges also keeps that traffic off the path of whatever is serving the foreground turn, so the two never contend.
What we do about it.
The cost shape is set by the tool surface, and the tool surface is part of the integration rather than something tuned afterwards. We size the regions, decide which questions return answers instead of pictures, put the boundary between the local tier and the escalation where your task needs it, and hand over the numbers for your own workload.
If a job turns out to be an expensive way to do something an API would do cheaply, that is a finding we would rather give you in week one.
Where these figures come from
All of it is published, with the method, in the agentkvm repository under "What a look costs". Nothing on this page is a figure you have to take on trust, and the token counts stay true after the prices move.