Skip to main content
The VLM Run Gateway meters every request. Every served model bills per token, except facebook/sam3.1, which bills per image or per video. The rates here come straight from the live model catalog (GET /v1/models/{model_id}), so they always match what you are actually charged. Two signals let you wire up cost tracking today:
  • Per-model rate card. Each model exposes a pricing object with USD-per-1M rates for prompt, completion, input_cache_read, input_cache_write, and image.
  • Per-request cost. usage.cost on a chat completion, streaming or not, is the actual metered charge for that request, in USD rounded to six decimals, the resolution the ledger bills at. Embeddings and transcriptions carry usage.cost too: a transcription against input_audio_seconds, on the json and verbose_json formats. A cost that rounds to 0.0 at six decimals is a real zero, not a missing value.
The rates below are the currently published rates and may change. Always read pricing from the model catalog (or usage.cost on a chat completion) as the source of truth.

How billing works

  • Token rates are USD per 1M tokens. Input is prompt tokens, Cached input is input_cache_read, and Output is completion tokens. A request pays prompt on the uncached prompt tokens, input_cache_read on the cached ones, and completion on the output. The one model where prompt is not a token rate is nvidia/parakeet-tdt-0.6b-v3, where it is per audio second.
  • Documents bill per page. The Gateway rasterizes a PDF and runs one inference per page. It sums the per-page token counts, so the charge is linear in page count.
  • input_cache_write is $0.00 across all models today.
  • Which rate applies is decided by the model’s own rates, not by the method: a model bills per input when its prompt rate is $0.00 and its image rate is not, and per token otherwise. Per input means once per image, or once per page on a PDF. facebook/sam3.1 is the only served model on the per-input side today. See Segmentation and tracking.
  • A request carrying a video bills the video rate once per video whenever that rate is set, whichever mode the model is otherwise in. A clip contributes no images, and a flat per-image token count says nothing about its length.
  • Several token-billed models publish a non-zero image rate that they are not charged on, zai-org/glm-ocr, deepseek-ai/deepseek-ocr-2 and paddlepaddle/paddleocr-vl-1.6 among them. Read usage.cost rather than multiplying the image rate yourself.
  • Neither method (ocr, markdown, detect, parse_layout, chat) nor response_format (text or JSON) changes the rate. You pay the rate of whichever model serves the request.
  • Non-generative vision models emit no text. They report a flat prompt-token count per image instead, so the token rate gives a fixed price per image.

What 1M tokens buys

A 1M-token budget covers roughly the following:
  • ~3,000 image captions at ~200 input + 130 output tokens / image
  • Markdown from a ~2K-page slide deck with figures at ~500 output tokens / page
  • ~4,000 visual questions at ~200 input + 50 output tokens / question
  • ~2,000 text passages embedded at ~512 tokens / passage
  • Markdown from ~1K pages of legal docs with dense text at ~1,000 output tokens / page

Chat and document models

Prices in USD per 1M tokens

Pose estimation

Both pose models emit no billable text. Each reports a flat 256 prompt tokens per image and charges nothing for output, so one image costs about $0.001, or about 1,000 images per dollar, however long the keypoint payload is. The rate is per token on paper and fixed per image in practice, because the token count does not vary with the result.

Prices in USD per 1M tokens

Segmentation and tracking

facebook/sam3.1 is the one served model that does not bill on tokens. Its prompt and completion rates are $0.00, which is what puts it on the per-input side, so a segmentation costs the same whether one instance comes back or fifty. A track call over a video bills the video rate once, regardless of how many frames were sampled.

$1.00 per 1,000 images. A video is billed once, whole, however many frames are sampled.

Frontier models

The frontier models also bill per token, at the provider’s listed rates. They carry the paid access tier, so an organization needs an active subscription or a funded balance to call them.

Prices in USD per 1M tokens

Embeddings

Text, image, and video inputs all bill as prompt tokens. There is no output charge.

Prices in USD per 1M tokens

Transcription

Transcription bills the length of the audio, not tokens. There is no minimum and no separate output charge.

About 16.7 hours of audio per dollar

On GET /v1/openai/models this shows up as pricing.prompt: 16.67, which on a transcribe model means USD per 1M audio seconds, not per 1M tokens, equivalent to $0.06/hour: 3,600s x 16.67 / 1,000,000.
The response carries the billed quantity directly:
Only response_format json and verbose_json carry usage, and only those are metered. text, srt, and vtt return the transcript with no usage block.

How to get model pricing

Get Model

Full response schema, including pricing.

Rate Limits

Per-tier request quotas.