AI

AI model pricing

Zenifra AI models can have different prices depending on usage type and volume. Before sending a request, consult the current catalog to identify the billing unit, standard price, context-window tiers, and any off-peak hours.

Prices shown in the Console and public catalog are the current source for estimates. Do not hard-code commercial values in your application because models, limits, and prices can change.

Query the catalog

The public catalog is available at:

GET https://ai.zenifra.com/v1/models

Each model includes its context window, maximum output limit, capabilities, and applicable prices. The basic format for token-billed models is:

{
  "id": "zenifra/example-model",
  "context_window": 1000000,
  "limits": {
    "context_length": 1000000,
    "max_context_length": 1000000,
    "max_tokens": 393216
  },
  "pricing": {
    "input": 2.4,
    "output": 6.9,
    "cache_read_input": 0.27,
    "cache_min_input_tokens": 1024,
    "unit": "per_million_tokens",
    "off_peak": {
      "hours_utc": "14:00-00:00",
      "input": 1.2,
      "output": 3.5,
      "cache_read_input": 0.14
    }
  }
}

Values with the per_million_tokens unit represent the price per 1 million tokens. Actual billing uses the amount that was processed.

Standard or peak price

Fields directly inside pricing represent the standard price, also called peak:

  • input: tokens sent to the model;
  • output: tokens generated by the model;
  • cache_read_input: input tokens reused from cache;
  • cache_min_input_tokens: minimum token count required for caching, when applicable.

If a model does not include off_peak, its standard price applies all day. If it does not include context_tiers, the same standard price applies to any request within the published limits.

Off-peak price

Some models offer reduced prices during specific hours. When available, pricing.off_peak contains the discounted rates and the window in UTC.

For example:

{
  "hours_utc": "14:00-00:00",
  "input": 1.2,
  "output": 3.5,
  "cache_read_input": 0.14
}

For customers in UTC−3, 14:00-00:00 UTC corresponds to:

11:00-21:00 UTC−3

The Console and Homepage show this UTC−3 conversion. The API payload remains in UTC to keep integrations unambiguous. Standard prices apply outside the off-peak window.

Context pricing tiers

Some models change price according to the request's input-token count. When this happens, pricing.context_tiers describes inclusive ranges:

{
  "basis": "input_tokens",
  "context_tiers": [
    {
      "min_input_tokens": 0,
      "max_input_tokens": 128000,
      "input": 1,
      "output": 2,
      "cache_read_input": 0.1
    },
    {
      "min_input_tokens": 128001,
      "max_input_tokens": 1000000,
      "input": 1.5,
      "output": 3,
      "cache_read_input": 0.15
    }
  ]
}

basis: "input_tokens" means the tier is selected using the input-token count. Do not add the maximum input and maximum output limits to determine the context window: the complete request must fit within context_window.

If context_tiers is absent, no context-based price change is configured for that model. Do not infer tiers merely because a model has a large context window.

Estimate cost

For a model without tiers:

input cost = input tokens × input price / 1,000,000
output cost = output tokens × output price / 1,000,000
cache cost = cached tokens × cache price / 1,000,000

When a tier exists, use the prices for the range containing the input-token count. When a request occurs within the off-peak window, use the off_peak prices indicated by the catalog.

Displayed values are suitable for estimates. The cost recorded in the Console is the reference for usage that was actually processed.

Images and other units

Image-generation models can use:

{
  "pricing": {
    "input": 0.003,
    "output": 0.075,
    "cache_read_input": null,
    "unit": "per_image"
  }
}

In this case, values are billed per image rather than per token. Always read pricing.unit before calculating an estimate.

Next steps

On this page