Skip to main content
Every provider supports tracking token usage and costs.

Basic Usage

The ChatResult object includes a usage property that contains the token usage and costs.
final agent = Agent('openai');
final result = await agent.send('Explain AI briefly');

// Access usage
print('Input tokens: ${result.usage.promptTokens}');
print('Output tokens: ${result.usage.responseTokens}');
print('Total tokens: ${result.usage.totalTokens}');

Embeddings Usage

The EmbeddingsModel class includes a usage property that contains the token usage and costs as well.
final agent = Agent('openai');
final result = await agent.embedDocuments([
  'Text 1',
  'Text 2',
  'Text 3',
]);

print('Tokens used: ${result.usage.totalTokens}');

Examples

Next Steps