Skip to main content
This page explains how Priors charges for use. After you read it, you can estimate the cost of a call, read your balance, and know what happens when the balance is zero. Your organization has one balance of credits. Calls that make the agent learn or answer take credits from this balance. Calls that only read data are free. You can read the balance and every charge at any time.

The price

The price is per one million tokens. Input and output have the same price. There is no separate price per model, plan, or feature. Your organization can have a different price by agreement. The cost field on each charge is the exact amount that was charged.

What counts as input and output

The table below says what is counted for each call. The memories that the agent reads to answer are not counted. You pay for what you send and what you receive.

How tokens are counted

Priors counts the words in the text and multiplies by 1.3. One English word is about 1.3 tokens. You do not need a tokenizer.
So:
  • 1,000,000 tokens cost 10,000 credits.
  • 1 word costs 0.013 credits.
  • 1,000 words in and 1,000 words out cost 26 credits.

What is never charged

  • Creating, reading, changing, and deleting agents and threads.
  • Listing anything. Polling a status. Reading the balance.
  • A request that fails. If the response is an error, nothing is charged.
  • A file that is refused: too large, password protected, unsupported, or a duplicate of a file this thread already has.
  • A request you send again with the same request_id (or the same turn_id on chat). It is charged once.
  • A message or file piece that could not be learned. The input side is refunded, and refunded_credits on the learning report says how much. An answer that Priors wrote and delivered stays charged.
  • Learning that a Priors restart paused. It resumes with nothing charged again.
  • The part of a stopped upload that was already learned. Finishing it with finish-learning charges only what is left.

Examples

When a charge happens

  1. Before the request runs, Priors checks that the balance is above zero.
  2. The request runs.
  3. If the request succeeded, Priors writes the cost to the ledger.
The request that takes the balance to zero or below still completes. The next request that costs credits is refused. An organization that has no balance yet is refused in the same way.

When the balance is zero

Every request that costs credits returns 402:
  • Free calls still work: list agents, read threads, poll a status, read the balance.
  • Nothing is deleted or paused. The memory stays.
  • After you add credits, the same requests succeed again. Nothing else changes.
To avoid a 402 in front of a user, watch low_credit_threshold (see below) and warn the user early.

Read the balance and the charges

Any key of your organization can read this. 503 service_unavailable means the ledger did not respond; wait, then try again. This call works when the balance is zero.

How to keep costs predictable

  • Send detail: brief on answering calls when a short answer is enough. It lowers the output side without cutting the text.
  • Set max_context_chars when you need a hard limit. It caps the output side by trimming the text.
  • Send old messages in observe calls of up to 100 observations. The price is the same, and you make fewer calls.
  • Upload each document once. A duplicate is free, and a duplicate from another thread is refused rather than charged. A file exported again with different bytes is a new document.
  • Count the words before you send. The input cost is words × 0.013.