AI UX PlaygroundNewsletterJoin 2K+ AI designers and PMs on Substack. New teardowns, patterns, and prompts as they drop.

Performance

Running Meters

Live token, cost, or time counters while an agent runs. People watch spend grow and can stop before the bill surprises them.

Interactive demo

Run

Acme renewal

Idle

0% · Not started

Tokens

0

Cost

$0.00

ETA

8s

Meters tick while the agent works so spend never feels invisible mid-run.

Overview

How might we design running meters so people can trust and act on AI output?

When to use

  • Essential for AI coding agents, research tools, and any long-running automation where users benefit from ambient visibility into token spend and progress while execution is in flight.

When to skip

  • Free unlimited tiers where cost is irrelevant.
  • Sub-second completions where meters never readable.
  • Audiences that only need a final receipt, not live noise.

Rules

  • Meters that update too late to cancel.

  • No stop control beside the meter.

  • Showing cost without currency or plan context.

  • Hiding that tool calls are multiplying spend.

Evidence

ProductImplementation
CursorLive usage cues during agent runs.
Claude CodeSession usage panels while working.
OpenAI PlaygroundLive token counting on generations.
VercelUsage dashboards for AI resource spend.

FAQ

What belongs on a running meter?

Live tokens or dollars, elapsed time, and a stop/pause control. Optional breakdown by tool calls.

How does this differ from pre-task cost estimate?

Estimate is the forecast before start. Running meters are the live actuals during execution.

Is a token usage indicator a separate pattern?

No. Quota and token counters (including static remaining-budget displays) are variants of Running Meters. Prefer live meters during execution and a clear remaining allowance when idle.

Should meters survive after the run?

Collapse into a receipt on completion. Keep detail available in history.

What if the meter contradicts the estimate?

Explain drivers (retries, extra tools) and let users tighten scope next time.