custo por atendimento = tokens de entrada × preço de entrada + tokens de saída × preço de saídaO trabalho está em medir os tokens com conversas reais e em lembrar o que pesa na entrada. Este roteiro leva a um número por atendimento completo, que é como o cliente final entende custo. Como ordem de grandeza, um agente de orçamentos real em produção custa cerca de R$0,30 por atendimento completo. O custo da Meta por mensagem é outra conta, separada da IA. Ver o fim da página.
Passo 1: medir os tokens de um atendimento
Use a fonte mais precisa que o projeto tiver, nesta ordem.a) API de histórico (tokens reais por mensagem)
O histórico de mensagens traz os tokens que cada resposta da IA consumiu. É o caminho principal: dado real, do próprio projeto, sem depender de nada ligado.- Escolha 3 a 5 atendimentos completos e típicos (do primeiro “oi” ao fechamento ou à transferência). Peça os números ou ids à pessoa, ou tire da exportação de Contatos.
-
Puxe o histórico pela API, com a chave do cliente
(A API do dia a dia):
Cada mensagem vem com
from(LEAD,ATTENDANT,USER),type,message,created_ate os camposinput_tokenseoutput_tokens. Para conversas encerradas, pegue othread_idemGET /leads/{numero}/threadse passethread_idna consulta. -
Some
input_tokenseoutput_tokensde todas as mensagens do atendimento. O total já inclui o que é reenviado a cada turno (prompt, tools, histórico). - Tire a média dos atendimentos escolhidos.
b) LangSmith (detalhe de cada chamada)
Com o LangSmith ligado, cada conversa aparece com os tokens de cada chamada ao modelo, separando tools e raciocínio, e o custo calculado. Use quando quiser saber onde os tokens vão (prompt grande? tool que devolve demais?). Ver Observabilidade com LangSmith.c) Métricas do painel (média do projeto)
Em Métricas (/metrics), a tabela diária mostra Tokens Input, Tokens
Output e Msgs IA (respostas da IA). Para um período:
- tokens de entrada por resposta = Tokens Input ÷ Msgs IA
- tokens de saída por resposta = Tokens Output ÷ Msgs IA
d) Estimar pelo texto (projeto novo, sem conversas ainda)
Sem histórico para medir, estime:- Escreva 2 ou 3 conversas típicas do nicho (ou use as de um cliente parecido, citando de onde vieram).
- Converta texto em tokens: cerca de 4 caracteres por token em português. Arredonde para cima.
- Some o que vai em toda chamada ao modelo:
- o prompt do agente (
langchain.config.instructions.system_promptnoget_template); - as descrições e os schemas de todas as tools;
- o bloco de contexto do lead e o bloco “Agora” (algumas centenas de tokens).
- o prompt do agente (
O que pesa na entrada
A cada resposta, o modelo recebe de novo tudo: prompt, tools, contexto do lead e o histórico da conversa até ali. Por isso a entrada cresce a cada turno e costuma ser muitas vezes maior que a saída.- Turno k: entrada ≈ prompt + tools + contexto + histórico dos turnos anteriores
- mensagem nova.
- Cada tool chamada é mais uma chamada ao modelo: reenviar tudo, mais o pedido da tool e o resultado.
- Raciocínio (reasoning) é cobrado como saída, mesmo sem aparecer para o lead.
- Cache de prompt: o começo repetido (prompt e tools) pode sair mais barato no provider. A conta sem cache é o teto.
Passo 2: buscar o preço do modelo
OpenRouter. A lista pública de modelos, em JSON, sem chave:https://openrouter.ai/api/v1/models. Em cada modelo, pricing.prompt (entrada) e
pricing.completion (saída) estão em **US por milhão. pricing.input_cache_read é a entrada lida do cache.
Passo 3: custo por atendimento
Passo 4: projeção mensal
Passo 5: comparar 2 ou 3 modelos
Mesma conta de tokens, preços diferentes. Antes de recomendar o mais barato, confira:- Modalidades: o modelo entende áudio e imagem, se os leads mandam?
(
architecture.input_modalitiesno OpenRouter) - Tools: o modelo precisa aceitar tools. No OpenRouter, o painel só lista
modelos que aceitam (
supported_parameterscomtools). - Raciocínio: modelos com raciocínio gastam mais saída.
Passo 6: apresentar ao cliente
Fale em custo por atendimento e por mês, nunca em tokens. Mostre a data dos preços e o câmbio usado. Exemplo de frase:“Com o modelo X, cada atendimento completo custa cerca de R300. Preços do provider em 06/10/2026, câmbio de R.”Diga também que é uma estimativa, que o valor real aparece no painel do provider e nas Métricas, e que dá para reduzir trocando de modelo ou encurtando o prompt.
Exemplo resolvido
Exemplo ilustrativo. Os tokens são supostos, não medidos de um projeto real. Os
preços foram lidos em https://openrouter.ai/api/v1/models em 06/10/2026. O câmbio
de R é ilustrativo. Refaça com dados reais e preços do dia.
- prompt + tools: 4.000 tokens; contexto do lead + “Agora”: 200 tokens;
- 10 mensagens do lead (30 tokens cada) e 10 respostas da IA (80 tokens cada);
- 2 tools chamadas no meio do atendimento (resultado de 300 tokens cada);
- raciocínio: cerca de 150 tokens por chamada ao modelo (12 chamadas).
- 10 turnos: 10 × 4.230 + 110 × (0 + 1 + … + 9) = 42.300 + 4.950 = 47.250
- 2 chamadas extras pelas tools: cerca de 5.000 cada = 10.000 (arredondado)
- Total: cerca de 57.600 tokens de entrada
Custo por atendimento:
Repare: a entrada é a maior parte do custo nos três, porque o prompt e as tools
são reenviados em toda chamada. Cortar 1.000 tokens do prompt economiza mais que
encurtar as respostas.
E o custo da Meta?
Na conexão oficial (Cloud API e coexistência), a Meta cobra por mensagem entregue, por categoria (marketing, utilidade, autenticação, serviço) e pelo país do lead. As mensagens de serviço (respostas dentro da janela de 24h) passaram a ser cobradas em 01/10/2026. Essa conta é da Meta, separada da IA e do plano da Zatten. Na conexão por QR Code não há cobrança da Meta por mensagem.- Preços da Meta: https://developers.facebook.com/documentation/business-messaging/whatsapp/pricing
- Mensagens de serviço: https://developers.facebook.com/documentation/business-messaging/whatsapp/pricing/non-template-messages
Armadilhas
- Contar só a última resposta. Cada tool é uma chamada a mais ao modelo, com tudo reenviado. Ignorar as tools subestima o custo.
- Esquecer o prompt e as tools. Não estão no histórico, mas vão em toda chamada.
- Esquecer o raciocínio. É cobrado como saída.
- Preço por token x por milhão. A API do OpenRouter dá US por milhão.
- Conversa atípica. Um atendimento muito longo ou muito curto distorce a média. Use 3 a 5 e tire a média.
- Histórico limitado. A API devolve até o limite de histórico do projeto; uma conversa muito longa pode vir cortada.
- Resumo e transcrição também custam. Se o agente resume conversas longas ou transcreve áudio, são chamadas a mais. Ver Conversas longas e Mídia.
Para saber mais
- Quanto custa operar um projeto e Quanto cobrar do cliente final
- Escolher o modelo, Providers: OpenAI e OpenRouter
- Observabilidade com LangSmith, Métricas
- Modelos do OpenRouter: https://openrouter.ai/models (JSON: https://openrouter.ai/api/v1/models)
- Preços do OpenRouter: https://openrouter.ai/pricing
- Cache de prompt no OpenRouter: https://openrouter.ai/docs/guides/best-practices/prompt-caching
- Tokens de raciocínio no OpenRouter: https://openrouter.ai/docs/guides/best-practices/reasoning-tokens
- Preços da OpenAI: https://developers.openai.com/api/docs/pricing
- Cache de prompt na OpenAI: https://developers.openai.com/api/docs/guides/prompt-caching
- Custos no LangSmith: https://docs.langchain.com/langsmith/cost-tracking
- Câmbio oficial (Banco Central): https://www.bcb.gov.br/conversao
- Termos para buscar: “custo por token”, “price per million tokens”, “prompt caching”, “reasoning tokens billing”, “WhatsApp pricing per message”.