Print do erro ou texto colado: qual o custo de token de imagem, PDF e texto?

O custo de token de imagem sai de uma conta de blocos: cada 28×28 pixels vira 1 token visual, ou seja ⌈largura/28⌉ × ⌈altura/28⌉, com o atalho rápido de largura × altura / 750. O teto é 1568 tokens visuais no tier padrão e 4784 no tier de alta resolução. PDF é o mais caro por item, porque cada página vira imagem mais texto extraído, de 1.500 a 3.000 tokens por página. Texto colado segue a régua de cerca de 4 caracteres por token. Regra prática: stack trace, log e código vão colados; imagem só quando a informação é visual de verdade
Deu erro na tela, tu aperta print e joga no chat
É o gesto mais automático do vibe coding hoje, e quase ninguém para pra pensar quanto aquilo pesa
O detalhe é que o MESMO erro pode entrar na conversa de três jeitos diferentes: como imagem, como PDF ou como texto colado, e cada formato consome o contexto de um jeito próprio, com contas totalmente diferentes por trás
Então bora comparar os três: como cada um é contado, quanto custa em média, qual o teto de cada item e, no fim, as regras práticas de quando a imagem é insubstituível e quando ela é só desperdício de janela
Como o modelo conta os tokens de uma imagem
Antes da fórmula, o porquê
O modelo não enxerga a tua imagem como um bloco único, ele fatia a imagem em quadradinhos e lê pedaço por pedaço
Se tu já mexeu com sprite sheet em jogo 2D, a ideia é bem parecida: a imagem é uma grade
Cada bloco de 28×28 pixels dessa grade vale 1 token visual
Daí sai a fórmula oficial do custo de token de imagem:
tokens visuais = ⌈largura / 28⌉ × ⌈altura / 28⌉
E existe uma aproximação rápida pra quando tu só quer uma ordem de grandeza, sem calculadora:
tokens visuais ≈ largura × altura / 750
Aplicando as duas numa imagem qualquer, pra tu sentir que elas batem:
Imagem de 840 x 560 px
Fórmula: ⌈840/28⌉ × ⌈560/28⌉ = 30 × 20 = 600 tokens visuais
Aproximação: 840 × 560 / 750 = cerca de 627 tokens visuais
Legal né? 😀 A conta é só geometria, não tem mistério nenhum
Formação Vibe Coding
Do Prompt ao Produto: Crie Software Real com IA
- 474 aulas
- 20 projetos
- 39h 27min
E se a imagem for gigante?
Aqui entra o teto
Existe um orçamento máximo de tokens visuais por imagem: 1568 tokens visuais no tier padrão e 4784 tokens visuais no tier de alta resolução
Imagens maiores que isso são reduzidas ANTES do processamento, então mandar um monstro não compra mais detalhe, só compra mais upload
A resolução realmente aproveitada é medida pela borda mais longa da imagem: 2576 px no tier de alta resolução (Claude Opus 4.7+, Opus 5, Sonnet 5, Fable 5 e Mythos 5) e 1568 px no tier padrão
E tome cuidado com o corte duro: acima de cerca de 8.000 px em um dos lados a requisição NÃO é reduzida, ela é rejeitada com erro de validação
Detalhe de quem já se ferrou com print de monitor ultrawide costurado: ali o problema não é caro, é que nem passa
A referência completa dessa parte está na documentação de visão da API
Por que o PDF é o formato mais caro por página
O PDF parece o formato mais "limpo", afinal é texto num arquivo, certo?
Errado, e o motivo é justamente o que faz ele funcionar tão bem
No suporte a PDF, cada página é convertida em imagem E o texto daquela página é extraído e enviado junto com a imagem, os dois no mesmo pacote
Ou seja: tu paga o lado visual e o lado textual da mesma página
Por isso o consumo típico fica entre 1.500 e 3.000 tokens por página, variando conforme a densidade do conteúdo
Faz a conta de cabeça com um relatório de 20 páginas e tu já entende por que o contexto some do nada 😅
Uma coisa importante pra não sair boato por aí: não existe taxa extra por PDF, vale o preço padrão da API, sem cobrança adicional pelo formato
O que muda a tua fatura é volume, não penalidade, e se a tua dúvida hoje ainda é entre pagar por API ou assinar o plano, o raciocínio é o mesmo de sempre: medir o uso real antes de decidir
E tem a armadilha da densidade: páginas com fonte pequena, tabelas complexas ou muitos gráficos enchem a janela de contexto ANTES de bater o limite de páginas da requisição
Os detalhes desse comportamento estão na documentação de suporte a PDF
Quanto custa o texto colado (e por que ele quase sempre ganha)
A régua do texto é bem mais simples
A estimativa oficial: 1 token equivale a cerca de 4 caracteres ou 0,75 palavra em inglês, e o número exato varia conforme o idioma
Guarda essa aproximação de 4 caracteres, porque é ela que resolve a maior parte das tuas decisões do dia
Na prática, com um stack trace ou um log recortado, funciona assim:
Trecho de log com 2.000 caracteres
2.000 / 4 = cerca de 500 tokens (estimativa)
Agora compara mentalmente com uma página de PDF, que sozinha já parte de 1.500 tokens
E aqui mora a maior economia disponível, que não é nem escolher formato: é RECORTAR
Um stack trace inteiro de 300 linhas quase sempre tem 15 linhas que importam, o resto é ruído de framework que só empurra contexto útil pra fora da janela
Colar as 15 linhas certas é mais barato E funciona melhor, porque o modelo não precisa adivinhar qual pedaço tu quer que ele olhe
Imagem, PDF e texto colado lado a lado
| Formato | Como o custo é calculado | Custo típico | Teto por item | Limites da requisição | O que preserva |
|---|---|---|---|---|---|
| Imagem | ⌈largura/28⌉ × ⌈altura/28⌉ tokens visuais (atalho: largura × altura / 750) | Depende das dimensões em pixels | 1568 tokens visuais no tier padrão, 4784 no tier de alta resolução; acima de cerca de 8.000 px em um dos lados a requisição é rejeitada | 32 MB nos endpoints padrão, 20 MB no Bedrock, 30 MB no Google Cloud; até 600 imagens por requisição (100 em modelos com janela de 200k) | Layout, cor, posição, o que só existe visualmente |
| PDF (por página) | Cada página vira imagem + texto extraído, os dois no mesmo pacote | De 1.500 a 3.000 tokens por página, conforme a densidade | Não há taxa extra: vale o preço padrão da API; páginas densas enchem o contexto antes do limite de páginas | 32 MB nos endpoints padrão, 20 MB no Bedrock, 30 MB no Google Cloud; até 600 páginas por requisição (100 em modelos com janela de 200k) | Texto e aparência da página juntos |
| Texto colado | Cerca de 4 caracteres ou 0,75 palavra em inglês por token, variando por idioma | Proporcional ao tamanho do trecho | Limitado pela janela de contexto do modelo | Cabe no mesmo limite de tamanho da requisição | Conteúdo exato, copiável e pesquisável |
Como medir o custo antes de enviar
Chega de achismo, dá pra medir antes de apertar enter
- Estime pela fórmula ou pela aproximação. Pega as dimensões da imagem em pixels e roda
⌈largura/28⌉ × ⌈altura/28⌉, ou joga no atalholargura × altura / 750se tu só quer a ordem de grandeza. O erro comum deste passo é estimar em cima do tamanho do arquivo em MB: peso do arquivo não é custo de token, o que conta é a grade de pixels
- Confira no endpoint de contagem de tokens. Ele aceita os mesmos tipos de entrada da criação de mensagem, incluindo system prompt, tools, imagens e PDFs, então dá pra medir o pacote inteiro antes de mandar. O erro comum deste passo é contar só o anexo e esquecer que system prompt e definição de tools também entram na conta
- Trate o número como estimativa. A contagem devolvida é aproximada e o consumo real de tokens de entrada pode diferir por uma pequena margem. O erro comum deste passo é planejar colado no limite da janela e depois levar estouro por causa dessa margem
- Meça à vontade, sem medo do rate limit. A contagem de tokens e a criação de mensagem têm limites de taxa separados e independentes, o uso de um não conta contra o limite do outro. O erro comum deste passo é evitar medir achando que a medição "gasta" o limite da conversa
- No Claude Code, roda o
/context. Ele mostra o uso real do contexto por categoria, com sugestões de otimização, incluindo quais arquivos CLAUDE.md e de memória foram carregados
/context
O erro comum deste passo é culpar o print pelo contexto cheio quando, na real, são os arquivos de memória e CLAUDE.md ocupando o espaço desde antes de tu anexar qualquer coisa
A mecânica do endpoint está descrita na documentação de contagem de tokens
Quando a imagem é insubstituível e quando é só desperdício
Imagem não é vilã, ela só é mal usada
São duas listas bem curtas, e elas resolvem a decisão em dois segundos
Insubstituível (manda o print sem dó):
- layout quebrado, aquele card que vazou do container e tu não sabe explicar em palavras
- diferença visual de UI, tipo comparar o antes e o depois de um ajuste de CSS
- gráfico, dashboard, qualquer coisa em que a FORMA é a informação
- erro dentro de um app sem texto copiável, onde a mensagem simplesmente não sai de lá
Desperdício (isso já é texto, então cola como texto):
- stack trace
- log de build ou de servidor
- mensagem de terminal
- trecho de código
- JSON de resposta da API
- tabela ou planilha que tu consegue copiar
Tudo isso já nasce em texto, e vai pra conversa por uma fração do custo se tu colar em vez de fotografar
A régua fica assim: se tu consegue selecionar com o mouse, não é print, é Ctrl+C
E quando a imagem for mesmo necessária, no Claude Code tu tem alguns caminhos
Dá pra arrastar e soltar a imagem direto na janela
Dá pra colar a imagem no CLI pelo atalho de teclado: Ctrl+V no geral, Cmd+V no iTerm2 no macOS e Alt+V no Windows
Ao colar, ele insere um chip [Image #N] na posição do cursor, e esse marcador serve justamente pra tu referenciar aquela imagem específica dentro do prompt
E dá pra passar o caminho do arquivo dentro do próprio prompt, tipo Analyze this image: /path/to/your/image.png, que é o jeito mais prático quando o print já está salvo em disco
Esses fluxos estão na documentação do Claude Code
Veredito: o que usar em cada situação
Texto colado e recortado é o padrão
Se a informação existe como texto, manda como texto, sempre
A régua de cerca de 4 caracteres por token é generosa perto de qualquer alternativa visual, e o recorte do trecho relevante economiza mais do que qualquer truque de formato
Imagem só quando a informação é visual
E quando for, manda no MENOR tamanho que ainda deixa o detalhe legível
Não adianta mandar gigante: acima da resolução aproveitada pelo tier (2576 px na borda mais longa no tier de alta resolução, 1568 px no tier padrão) a imagem é reduzida antes do processamento mesmo, e o teto de tokens visuais continua sendo o teto
PDF só quando o documento inteiro importa
É o formato mais caro por item porque cada página carrega imagem e texto no mesmo pacote
Com 1.500 a 3.000 tokens por página, poucas páginas densas já viram dezenas de milhares de tokens, e aí não sobra janela pro trabalho de verdade
Se tu só precisa de duas frases de um contrato de 40 páginas, tu não precisa do PDF, tu precisa das duas frases
Conclusão
A régua dos três formatos, resumida pra guardar:
imagem é grade de blocos de 28×28 px, com fórmula fechada e teto de 1568 ou 4784 tokens visuais conforme o tier
PDF é imagem mais texto na mesma página, de 1.500 a 3.000 tokens por página, sem taxa extra mas com peso real
texto é cerca de 4 caracteres por token, e ainda aceita o corte que os outros dois não aceitam
O próximo passo é bem simples: roda /context na tua sessão atual do Claude Code e olha pra onde o contexto está indo de verdade, antes de culpar o print
E no próximo anexo, passa ele pelo endpoint de contagem de tokens antes de enviar, só pra ver o número com os próprios olhos
Medir uma vez muda o hábito pra sempre 😀
até o próximo post!
Perguntas frequentes
Como saber quanto uma imagem ou PDF vai custar antes de mandar pro Claude?
Existe um endpoint de contagem de tokens que aceita os mesmos tipos de entrada da criação de mensagem, incluindo imagens e PDFs, e serve exatamente pra estimar o custo antes de enviar. A contagem devolvida é uma estimativa, o número real pode variar por uma margem pequena. E esse endpoint tem limite de taxa separado da criação de mensagem, então usar um não consome o limite do outro.
Colar o erro como texto sempre sai mais barato que mandar print?
Na maioria dos casos sim, porque texto custa cerca de 4 caracteres por token, enquanto até um PDF já parte de 1.500 a 3.000 tokens por página. O grande ganho não é nem escolher o formato, é recortar: um stack trace de 300 linhas normalmente tem 15 linhas que interessam, e colar só essas é mais barato e mais direto pro modelo entender.
Quando vale a pena mandar print e quando é só desperdício de contexto?
Vale o print quando a informação só existe de forma visual: layout quebrado, comparação de antes e depois de um ajuste de CSS, gráfico ou dashboard em que a forma é a informação, e erro dentro de um app sem texto copiável. É desperdício quando o conteúdo já é texto: stack trace, log de build ou servidor, mensagem de terminal, trecho de código, JSON de resposta da API e tabela copiável. A régua prática: se dá pra selecionar com o mouse, cola como texto.
Dá pra colar uma imagem direto no Claude Code, sem sair do terminal?
Dá sim: dá pra arrastar e soltar a imagem na janela ou colar com Ctrl+V (Cmd+V no iTerm2 no macOS, Alt+V no Windows). Ao colar, aparece um chip [Image #N] na posição do cursor pra referenciar a imagem dentro do prompt. Também dá pra passar o caminho do arquivo direto no texto, tipo "Analyze this image: /path/to/your/image.png".
Um PDF grande estoura o contexto antes de chegar no limite de páginas?
Pode estourar sim, principalmente se o PDF for denso. Páginas com fonte pequena, tabelas complexas ou muitos gráficos enchem a janela de contexto antes de bater o limite de páginas da requisição, que é de até 600 imagens ou páginas de PDF por requisição (100 em modelos com janela de 200k tokens).
Enviar PDF cobra alguma taxa extra além do preço padrão da API?
Não. Vale o preço padrão da API, sem cobrança adicional só por ser PDF. O que pesa na fatura é o volume de tokens (a soma da imagem da página com o texto extraído dela), não uma taxa por formato.
Qual resolução de imagem aproveita o teto de tokens sem desperdiçar contexto?
Depende do tier do modelo: no tier padrão a borda mais longa aproveitada é de 1568 px, e no tier de alta resolução (Opus 4.7+, Opus 5, Sonnet 5, Fable 5 e Mythos 5) vai até 2576 px. Passar disso não compra mais detalhe, porque a imagem é reduzida antes do processamento. E se um dos lados passar de cerca de 8.000 px, a requisição nem é reduzida, ela é rejeitada com erro de validação.
Formações
Formação SAAS com IA
Tire usas ideias do papel criando softwares com IA, integre pagamentos e lance seu projeto!
- 291 aulas
- 18 projetos
- 24h 17min
Blog | Mais populares
As diferenças de var, let e const
Como fazer redirecionamento com PHP
Neste artigo você vai aprender a como fazer redirecionamento com PHP, utilizaremos abordagens fáceis de entender e de aplicar Fala programador(a), beleza? Bora aprender mais […]
ChatGPT: o que é, como usar, dicas e como acessar login
ChatGPT é uma ferramenta de processamento de linguagem natural (NLP) baseada na arquitetura GPT-3.5, desenvolvida pela OpenAI. Sua criação representa um marco significativo no campo […]
