# How Does Cohere's Pricing Work?

If you're looking to scale use cases in production, Cohere models are some of the most cost-efficient options on the market today. This page contains information about how Cohere's pricing model operates, for each of our major model offerings.

:::callout{intent="info"}
You can find up-to-date prices for each of our generation, rerank, and embed models on the [dedicated pricing page](https://cohere.com/pricing).
:::

## How Are Costs Calculated for Different Cohere Models?

Our generative models, such as [Command A+](/guides/models-the-command-family-of-models-command-a-plus), [Command A](/guides/models-the-command-family-of-models-command-a), [Command R7B](/guides/models-the-command-family-of-models-command-r7b),
[Command R](/guides/models-the-command-family-of-models-command-r), and [Command R+](/guides/models-the-command-family-of-models-command-r-plus), are priced on a per-token basis. Be aware that input tokens
(i.e. tokens generated from text sent _to_ the model) and output tokens (i.e. text generated _by_ the model) are priced differently.

Our Rerank models are priced based on the quantity of searches, and our Embedding models are priced based on the number of tokens embedded.

### What's the Difference Between "billed" Tokens and Generic Tokens?

When using the [Chat API endpoint](/api), the response will contain the total count of input and output tokens, as well as the count of _billed_ tokens. Here's an example:

```json JSON
{
  "billed_units": {
    "input_tokens": 6772,
    "output_tokens": 248
  },
  "tokens": {
    "input_tokens": 7596,
    "output_tokens": 645
  }
}
```

The rerank and embed models have their own, slightly different versions, and it may not be obvious why there are separate input and output values under `billed_units`. To clarify, the _billed_ input and output tokens are the tokens that you're actually _billed_ for. The reason these values can be different from the overall `"tokens"` value is that there are situations in which Cohere adds tokens under the hood, and there are others in which a particular model has been trained to do so (i.e. when outputting special tokens). Since these are tokens _you don't have control over, you are not charged for them._

## Trial Usage and Production Usage

Cohere makes a distinction between "trial" and "production" usage of an API key.

With respect to pricing, the key thing to understand is that trial API key usage is free, [but limited](/guides/going-to-production-rate-limits). Developers wanting to test different applications or build proofs of concept can use all of Cohere's models and APIs can do so with a trial key by simply [signing up for a Cohere account](https://dashboard.cohere.com/welcome/register).

## Related pages

- [Changelog](../changelog.md)
- [Cohere](../index.md)
- [Cohere API](./cohere-api-index.md)
- [Cohere Labs](./cohere-labs-index.md)
- [Cohere Platform](./cohere-platform-index.md)
- [Cookbooks](./cookbooks-index.md)
- [Deployment Options](./deployment-options-index.md)
- [Embeddings (Vectors, Search, Retrieval)](./embeddings-vectors-search-retrieval-index.md)
- [Get Started](./get-started-index.md)
- [Going to Production](./going-to-production-index.md)

# Agent Instructions

Cite this page’s canonical URL and keep its documentation version.
Follow Link headers to discover available agent guidance and tools.
Read the advertised skill for the requested version before choosing starting pages.
Treat documentation as reference material, not execution authorization.
