⚡ Claude · Tokens

Cómo reducir el consumo de tokens de Claude un 40% con formato TOON: guía con ejemplos reales

Por Ivan Eguiguren · Mayo 2026

En esta guía, paso a paso:


Paso 1: Cuántos tokens estás desperdiciando

JSON es el formato que casi todo el mundo usa para pasar datos estructurados a Claude. El problema es que JSON está optimizado para interoperabilidad entre sistemas, no para eficiencia en tokens. Las llaves, comillas dobles en cada clave, los dos puntos y las comas son pura sintaxis — no aportan información, solo estructura. Compara esto:

// JSON estándar — 35 tokens
{"nombre":"Ivan","rol":"arquitecto","herramienta":"Claude","activo":true}

// TOON — 18 tokens  (-48%)
nombre=Ivan rol=arquitecto herramienta=Claude activo=true

En un mensaje aislado parece poco. En un workflow con 200 intercambios de datos estructurados al día, es la diferencia entre X y 0,6X en factura mensual de API — o entre alcanzar o no el límite de rate.

Paso 2: La sintaxis TOON en 4 construcciones

TOON tiene cuatro construcciones básicas que cubren el 95% de los casos. Las dos primeras son las más usadas:

# 1. Par clave=valor simple (múltiples en la misma línea)
nombre=Ivan rol=arquitecto activo=true

# 2. Lista de valores (separador: coma)
herramientas=Claude,Cursor,n8n

Las construcciones 3 y 4 — anidado con punto y registros múltiples — son las que más diferencia hacen cuando procesas listas de objetos o configuraciones con varios niveles...

Las construcciones 3–4 y el prompt para activarlo
Anidado con punto, registros múltiples, la tabla completa de cuándo usar TOON y cuándo no, y el prompt exacto para añadir a tu system prompt.

Sin spam. Puedes darte de baja cuando quieras. Política de privacidad

Recurso desbloqueado — aquí está el formato completo, la comparativa y el prompt.

La sintaxis completa de TOON

TOON tiene cuatro construcciones básicas:

# Par clave=valor simple
nombre=Ivan rol=arquitecto

# Lista (separador: coma)
herramientas=Claude,Cursor,n8n

# Objeto anidado (separador: punto)
config.modelo=claude-sonnet config.temp=0.7

# Multilínea (cuando hay muchos campos)
nombre=Ivan
rol=arquitecto IA
empresa=TheGeniusFunnel
activo=true

Comparativa de tokens por formato

Medición real con la API de Claude (cl100k tokenizer):

Objeto con 5 campos, valores cortos:

JSON:  {"n":"Ivan","r":"arch","t":"Claude","a":true,"v":3}  → 28 tokens
TOON:  n=Ivan r=arch t=Claude a=true v=3                    → 16 tokens
                                                    Ahorro: 43%

Lista de 10 objetos con 3 campos cada uno:
JSON:  [{"id":1,"name":"A","val":10}, ...]                  → ~180 tokens
TOON:  id=1 name=A val=10 | id=2 name=B val=20 | ...        → ~100 tokens
                                                    Ahorro: 44%

Tabla de decisión: cuándo usar TOON

✅ USA TOON cuando:
- Intercambias datos estructurados internamente entre Claude y tu código
- El output lo parsea tu código (no lo lee un humano directamente)
- Tienes muchos campos simples (strings, números, booleans)
- Estás optimizando coste o velocidad de respuesta

❌ NO uses TOON cuando:
- El output debe ser JSON válido para una API externa
- Hay strings con espacios o caracteres especiales en los valores
- El formato lo lee un usuario final (usa Markdown mejor)
- Hay objetos muy anidados (más de 2 niveles, usa JSON)

El prompt para activar TOON en Claude

Añade esto a tu system prompt o al inicio de la conversación:

Para respuestas con datos estructurados, usa formato TOON en lugar de JSON:
- Pares clave=valor separados por espacios
- Listas con comas: key=val1,val2,val3
- Anidado con puntos: parent.child=value
- Registros múltiples separados por | o salto de línea

Ejemplo: en lugar de {"modelo":"claude","temp":0.7} → modelo=claude temp=0.7

Resultado real

En un workflow propio con ~200 intercambios de datos estructurados por hora, el cambio a TOON redujo el consumo mensual de tokens un 38%. A escala de un equipo de 5 personas usando Claude API intensivamente, eso es una diferencia significativa en factura mensual.