1. Базовая формула
Токен — единица расчёта: слова, их части, пунктуация и служебные маркеры. Ставка всегда указана за миллион токенов и всегда раздельно за вход и выход. Ошибка новичка — умножать весь запрос на одну ставку: вход и выход тарифицируются отдельно и часто отличаются в разы.
Стоимость запроса =
(input_tokens / 1 000 000 × цена входа) +
(output_tokens / 1 000 000 × цена выхода)# Пример: 2 000 входных токенов при ставке $0.50 за 1M
# + 500 выходных при ставке $1.00 за 1M
# 2000 / 1_000_000 × 0.50 = $0.001
# 500 / 1_000_000 × 1.00 = $0.0005
# Итого до округления: $0.0015Предварительная оценка считает максимум, фактическое списание — реально обработанные токены. Поэтому после запроса сверяйтесь с usage, а не со своей прикидкой. Актуальные ставки каждой модели — на странице моделей и цен, примеры ниже посчитаны на тарифах каталога и могут меняться.
2. Рост контекста в диалоге
Главная причина «вчера стоило копейки, сегодня дорого» — история диалога. Приложение обычно пересылает всю переписку при каждом новом сообщении, поэтому десятый запрос везёт в девять раз больше входа, чем первый, при одинаковом вопросе пользователя. Сюда же добавляются системные инструкции и вставки RAG.
# Почему 10-й запрос дороже 1-го при том же вопросе:
# запрос 1: системный промпт (500) + вопрос (100) = 600 input
# запрос 10: системный промпт (500) + история (9 × 400) + вопрос (100) = 4 200 input
# Вывод: бюджет считайте по медиане и 95-му перцентилю полного входа,
# а не по размеру одного сообщения пользователя.Лекарства: суммаризация истории, скользящее окно последних сообщений, вынесение стабильного контекста в кэшируемые блоки. Измеряйте медиану и верхний перцентиль полного входа на реальных диалогах, а не на одном тестовом вопросе.
3. Кэш и image generation
Кэширование снижает цену повторного входа, но работает только при подтверждённом cached usage: каталог показывает отдельные ставки именно для этого случая. Для image-моделей действует другая единица — фиксированная цена за генерацию, и в интерфейсе её нужно отделять от тарифа за миллион токенов, чтобы не вводить пользователя в заблуждение.
Для сложного workflow считайте отдельно: число текстовых запросов с их input/output, число генераций изображений и возможные повторы после ошибок. Смешивание этих единиц в одну цифру — самая частая причина расхождения estimate и factura.
4. Практика экономии
Ограничивайте max_tokens каждому вызову: модель не должна иметь возможность сгенерировать роман за ваш счёт. Сокращайте повторяющийся контекст, переиспользуйте системные инструкции через кэш, выбирайте младшую модель для классификации и черновиков, а флагман — только для сложных шагов. Дорогой fallback (повтор на старшей модели) включайте лишь после дешёвых попыток.
Отслеживайте стоимость полной пользовательской операции, а не одного запроса: цепочка из пяти вызовов с ретраями — это пять списаний. Дашборд трат стройте по данным истории личного кабинета, а коды ошибок, из-за которых случаются повторы, разбирайте по гайду по ошибкам. Как считать агентские сессии целиком — в статье про стоимость workflow.