📄 PDF: 1.500–3.000 tokens/página
A Anthropic documenta explicitamente: cada página de PDF anexada consome entre 1.500 e 3.000 tokens. Motivo: o processamento converte cada página em imagem + extrai o texto, e você paga pelos dois.
📚 Fonte oficial (Anthropic docs)
"PDFs are converted to images, and each page consumes approximately 1,500–3,000 tokens depending on content density."
Fonte: docs.claude.com · PDF support
Quanto custa um PDF real
| Tamanho do PDF | Estimativa baixa | Estimativa alta | % janela 200k |
|---|---|---|---|
| 5 páginas | 7.500 | 15.000 | 4–8% |
| 30 páginas | 45.000 | 90.000 | 23–45% |
| 100 páginas | 150.000 | 300.000 | 75–150% |
Um PDF de 100 páginas sozinho pode estourar a janela de 200k. Sem espaço para conversa.
🏗️Por que PDF é tão caro
📊 Comparação de formatos
Vamos colocar o mesmo conteúdo (~500 palavras sobre um tópico técnico) em quatro formatos e ver quanto cada um custa. A diferença é dramática.
Mesmo conteúdo, 4 formatos
Baseline: 500 palavras técnicas. PDF assume 1 página densa.
Resumo — custo relativo por formato
| Formato | Tokens/500 palavras | Fator vs MD | Recomendação |
|---|---|---|---|
| 📝 Markdown | ~500 | 1,0× | Prefira sempre |
| 📄 TXT | ~480 | 0,96× | OK, sem formatação |
| 🐍 Python/JS | ~700 | 1,4× | Natural para código |
| 🌐 HTML+Tailwind | ~1.200 | 2,4× | Evite se possível |
| 📊 JSON formatado | ~1.400 | 2,8× | Minifique ou resuma |
| 1.500–3.000 | 3,0–6,0× | Converta para MD | |
| 📘 DOCX | ~1.800 | 3,6× | Converta para MD |
menos tokens. Sem perder nada do texto útil.
🛠️ Como converter PDF/DOCX → Markdown
A ferramenta padrão é o pandoc: uma linha de comando converte praticamente qualquer formato em markdown. Três abordagens, da mais direta à mais flexível.
Opção 1 — pandoc via CLI
# Instalar (uma vez)
brew install pandoc # macOS
sudo apt install pandoc # Ubuntu/Debian
choco install pandoc # Windows
# Converter
pandoc input.pdf -o output.md
pandoc relatorio.docx -o relatorio.md
pandoc apresentacao.odt -o apresentacao.md
# Converter em lote
for f in *.pdf; do pandoc "$f" -o "${f%.pdf}.md"; done
Funciona para: PDF, DOCX, ODT, EPUB, HTML, RTF, LaTeX, e muitos outros. Código-fonte e mais docs: pandoc.org
Opção 2 — Ferramentas online
- →pandoc-online — versão web do próprio pandoc
- →markitdown (Microsoft) — especializado em Office → MD
- →cloudconvert.com — GUI simples, suporta muitos formatos
Útil quando você não quer instalar nada ou está em máquina sem admin.
Opção 3 — Subagente de conversão
# .claude/agents/pdf-to-md.md
---
name: pdf-to-md
description: Converte um PDF local em markdown limpo e estruturado. Acione quando o usuário tiver um PDF e precisar do conteúdo em formato eficiente para contexto.
tools:
- Read
- Bash
- Write
---
Converta o PDF indicado para markdown seguindo estas regras:
1. Use pandoc como ferramenta primária
2. Remova headers/footers repetidos
3. Preserve hierarquia de títulos (# ## ###)
4. Transforme tabelas em formato markdown
5. Salve como docs/converted/nome-do-arquivo.md
6. Retorne: caminho do arquivo + contagem estimada de tokens
Útil quando o PDF tem estrutura complexa que precisa de curadoria.
💡ROI da conversão
Converter um PDF de 50 páginas leva 10 segundos com pandoc. Economiza 50k+ tokens em toda sessão que usa o documento. Paga-se na primeira vez que você anexa.
📂 O que NÃO anexar
Lista negra de arquivos que quase nunca deveriam entrar no contexto. Eles queimam tokens sem agregar valor.
Logs gigantes
Um log de produção de 50MB são milhões de tokens. Quase tudo é ruído.
→ Use grep antes. Anexe só as linhas relevantes.
Arquivos minified
bundle.min.js de 2MB é token impossível de interpretar.
→ Use o fonte, não o minificado.
node_modules / vendor
NEVER. São gigabytes de código de terceiros.
→ Sempre no .gitignore e fora de qualquer anexo.
Snapshots de banco
Dump SQL de 100MB, CSV de 500k linhas, XML gigante.
→ Anexe só a estrutura (schema) + 5 linhas de exemplo.
Binários
Executáveis, .zip, .tar.gz, imagens grandes sem motivo.
→ Só anexe imagens quando o conteúdo visual for a questão.
PDFs inteiros sem filtro
Documento de 200 páginas para tirar 1 dúvida específica.
→ Converta para MD e recorte o capítulo relevante.
❌ Anexo típico problemático
$ ls anexos/
app.log (80MB)
bundle.min.js (2.1MB)
relatorio-final.pdf (45 pág)
node_modules/ (pasta)
dump-producao.sql (120MB)
Total: janela estourada, qualidade péssima.
✅ Anexo curado
$ ls anexos/
erros-ultimos-3-dias.txt (grep do log)
app.source.js (fonte, não bundle)
relatorio-cap-4.md (só o capítulo)
schema.sql (estrutura, não dump)
sample-data.csv (10 linhas)
Total: ~5k tokens, qualidade alta.
✂️ Recortar antes de colar
Hábito nº 1 de quem domina contexto: antes de colar 2.000 linhas, perguntar "quais 50 importam?". Curadoria humana custa 10 segundos; economia em tokens vale muito mais.
Checklist antes de colar qualquer coisa
- 1 Qual é a pergunta específica? — sem pergunta clara, todo anexo é chute
- 2 Qual é a menor fatia que responde? — função, classe, bloco
- 3 Eu sei onde está? — se sim, cole direto; se não, delegue busca
- 4 Pode ser só um resumo? — às vezes 5 linhas de descrição bastam
Fluxo de decisão
🔍Quando não sabe o que recortar
"Mas eu não sei qual função importa!" — ótimo caso para delegar. Em vez de colar o arquivo inteiro "pro Claude procurar", invoque um Explore agent:
"Use o Explore agent: no arquivo src/auth.ts, encontre onde
o token JWT é validado e retorne só o trecho relevante (10–20 linhas)."
O subagente procura; você recebe só as 20 linhas.
💡Princípio geral
Curadoria humana supera força bruta. Menos texto bem escolhido gera respostas melhores que mais texto genérico. Qualidade do anexo > quantidade.
🎯 Skills on-demand vs anexo sempre
A diferença estrutural mais importante de higiene de arquivo: skills são carregadas sob demanda (só quando acionadas); anexos ficam no contexto em todos os turnos seguintes até o fim da sessão.
📚Skills
- →Até 5k tokens cada
- →Carregadas sob demanda
- →Budget combinado de ~25k
- →Só aparecem quando acionadas
- →Ideais para instruções recorrentes
📎Anexos
- →Tamanho livre
- →Sempre carregados
- →Sem budget — ocupam o que forem
- →Ficam até o fim da sessão
- →Custo relido em todo turno
Exemplo: instruções de 5k tokens (convenções de código da empresa)
| Abordagem | Tokens (turno 1) | Tokens (20 turnos) | Vantagem |
|---|---|---|---|
| Colar no prompt | +5.000 | +100.000 (re-lido) | Nenhuma |
| Como skill | 0 (sob demanda) | ~5.000 (só quando precisa) | 20× mais barato |
| No CLAUDE.md | +5.000 | +5.000 (cache) | OK se sempre relevante |
🎯Regra dos 3 tipos de conteúdo
💡Pergunta-chave antes de anexar
"Isso é desta tarefa, é deste projeto, ou é instrução que reutilizo?" Respostas diferentes → lugares diferentes. Nunca anexe "por garantia" algo que é skill ou CLAUDE.md.
📋Resumo do Módulo
Você terminou a Trilha 4! 🎉
Próxima trilha: 5 — 🧪 Exemplos Reais
Casos de uso completos aplicando tudo que você aprendeu até aqui.