Calculadora de calorías por macronutrientes (Atwater)
Pasa los gramos de proteína, carbohidratos, grasa y alcohol a calorías con los factores de Atwater: 25 g de proteína, 40 g de carbohidratos y 12 g de grasa suman 368 kcal. Verá además lo que aporta cada macronutriente y el total en kilojulios. Gratis en su navegador.
- Gratis
- Funciona en su navegador
- Sin registro
- Sus datos no salen de su equipo
Ejecutar — gratis
Ejemplo resuelto
- Proteína (g)
- 25
- Carbohidratos (g)
- 40
- Fat g
- 12
- Alcohol (g)
- 0
- Proteínas (kcal)
- 100 kcal
- Carbohidratos (kcal)
- 160
- Grasas (kcal)
- 108
- Calorías del alcohol (kcal)
- 0
Las etiquetas nutricionales, los diarios de comidas y los sistemas de nutrición necesitan una respuesta transparente a una sola pregunta: dados los gramos de proteína, carbohidratos, grasa y alcohol de una ración o de un día, ¿cuánta energía metabolizable aporta? Esta calculadora de calorías a partir de macronutrientes aplica los factores generales de Atwater—cuatro kilocalorías por gramo de proteína, cuatro de carbohidratos, nueve de grasa y siete de alcohol—y devuelve la contribución de cada macronutriente y la energía total en kilocalorías y kilojulios. Úsela para verificar el cálculo de etiquetas, convertir exportaciones de trackers en totales energéticos o auditar planes de comidas sin copiar una fórmula de hoja de cálculo en cada cliente.
Factores de Atwater y qué significa la energía alimentaria total
El sistema general de Atwater es la vía convencional con la que la ciencia de la nutrición y el etiquetado alimentario convierten la masa de macronutrientes en energía metabolizable. A la proteína y al carbohidrato disponible se les asignan cuatro kilocalorías por gramo, a la grasa nueve y al etanol siete. Esos factores ya promedian pérdidas digestivas y los ajustes del calor de combustión usados en dietética; no son los valores crudos de bomba calorimétrica de cada alimento, sino el valor por defecto estándar cuando solo se conocen los gramos.
La energía total es la suma de los cuatro productos: cuatro veces los gramos de proteína más cuatro veces los de carbohidratos más nueve veces los de grasa más siete veces los de alcohol. Esta capacidad no corrige fracciones de fibra dietética, alcoholes de azúcar con factores alternativos ni digestibilidad incompleta de la proteína: esos matices requieren tablas de composición y quedan fuera de una transformación pura de gramos a energía.
Lo que obtiene es un total reproducible al estilo de etiqueta, alineado con cómo la mayoría de aplicaciones de consumo y muchos ejemplos regulatorios enseñan las calorías a partir de macros.
Quién recalcula calorías desde los macros y para qué
Las plataformas de coaching dietético ya almacenan objetivos en gramos y registros de platos; multiplicar por factores de Atwater en el servidor mantiene a cada cliente e informe en una sola definición de energía alimentaria en lugar de celdas de hoja divergentes. Los coordinadores de investigación convierten diarios de alimentos pesados en energía diaria sin licencias de bases de composición cuando solo se registraron macros.
Las herramientas de cumplimiento de etiquetas recalculan la línea de energía a partir de proteína, carbohidratos, grasa y alcohol declarados, de modo que un cambio de envase se revalida en segundos. Los equipos de meal-kit y comedores suman macros de componentes en energía de plato para menús y compras. La validación fallida no consume saldo.
Qué puede hacer con ella
Verificar la energía de la etiqueta a partir de macros declarados
Recalcule la línea de calorías a partir de gramos de proteína, carbohidratos, grasa y alcohol con factores Atwater estándar antes de publicar el envase o el menú.
Preguntas frecuentes
¿Qué factores de Atwater usa esta calculadora?
Factores generales: 4 kcal/g de proteína, 4 kcal/g de carbohidratos, 9 kcal/g de grasa y 7 kcal/g de alcohol. La respuesta incluye un objeto factors para mostrar la tabla junto al total.
¿Es obligatorio el alcohol si el alimento no lo contiene?
Los cuatro campos en gramos son obligatorios para que un valor ausente nunca se trate como cero por accidente.
¿Por qué el total no coincide con las calorías de la etiqueta?
Porque la calculadora usa los factores generales de Atwater. No ajusta las fracciones de fibra, los polialcoholes con factores propios ni la digestibilidad incompleta de la proteína; esos matices requieren tablas de composición de alimentos.
¿Qué macronutriente aporta más calorías a mi comida?
La calculadora muestra la aportación de cada uno por separado. Con 25 g de proteína, 40 g de carbohidratos y 12 g de grasa salen 100, 160 y 108 kcal: la grasa, a 9 kcal por gramo, casi iguala a los carbohidratos con menos de un tercio de los gramos.
¿Cómo paso el total de kilocalorías a kilojulios?
No hace falta hacerlo a mano: el resultado incluye ambos. Los kilojulios son las kilocalorías multiplicadas por 4,184, así que 368 kcal equivalen a 1539,712 kJ.
Herramientas relacionadas
Para desarrolladores — acceso por API
Todo lo de esta página está disponible por programación. Esta sección es para equipos que quieren integrarlo en sus sistemas; el resto puede usar la herramienta de arriba sin más.
Endpoint de API
¿Prefiere automatizarlo? Un POST autenticado crea la tarea; el resultado llega por webhook o enlace firmado. La misma capacidad también se ejecuta aquí en la web, por email y desde Telegram — y pronto también desde nuestra app.
Llámela desde su stack
curl -X POST https://api.kit.forhosting.com/health/energy-from-macros \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"protein_g":25,"carbohydrate_g":40,"fat_g":12,"alcohol_g":0}'const res = await fetch("https://api.kit.forhosting.com/health/energy-from-macros", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"protein_g": 25,
"carbohydrate_g": 40,
"fat_g": 12,
"alcohol_g": 0
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/health/energy-from-macros",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"protein_g": 25,
"carbohydrate_g": 40,
"fat_g": 12,
"alcohol_g": 0
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/health/energy-from-macros", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"protein_g":25,"carbohydrate_g":40,"fat_g":12,"alcohol_g":0}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"protein_g":25,"carbohydrate_g":40,"fat_g":12,"alcohol_g":0}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/health/energy-from-macros", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Ejemplo de solicitud
{
"protein_g": 25,
"carbohydrate_g": 40,
"fat_g": 12,
"alcohol_g": 0
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "health.energy_from_macros",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}La API es asíncrona: la llamada devuelve un task_id al instante y el resultado llega por webhook. El polling está limitado a 1 req/s por tarea.
Precio
Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.
Errores
| HTTP | Código | Significado |
|---|---|---|
401 | unauthorized | API key ausente o inválida. |
402 | insufficient_balance | El saldo no cubre el precio de la tarea. |
404 | unknown_type | El tipo de tarea no existe. |
429 | rate_limited | Demasiadas peticiones. Use el webhook en vez de sondear. |
Notas técnicas
Contrato de entrada, campos de respuesta y errores de validación
Se rechazan gramos negativos porque la masa no puede ser negativa en este contrato. Faltar cualquiera de los cuatro campos también falla con un mensaje claro de campo ausente y no se factura. Ejemplo: veinticinco gramos de proteína, cuarenta de carbohidratos, doce de grasa y cero de alcohol producen cien kcal de proteína, ciento sesenta de carbohidratos, ciento ocho de grasa, cero de alcohol y trescientas sesenta y ocho kilocalorías totales. Envíe por POST un objeto JSON con cuatro números finitos no negativos obligatorios: protein_g, carbohydrate_g, fat_g y alcohol_g, medidos en gramos. Se aceptan alias cortos para que los formularios existentes se conecten sin renombrar: protein, protein_grams o p para proteína; carbohydrate, carbs, carb_g, carbs_g o c para carbohidratos; fat, lipid_g, lipids o f para grasa; alcohol, ethanol_g, ethanol o a para alcohol. Los valores pueden llegar como números JSON o cadenas numéricas; cadenas vacías, booleanos, objetos, NaN e Infinity fallan con invalid_input nombrando el campo. En caso de éxito la respuesta devuelve los gramos limpios, protein_kcal, carbohydrate_kcal, fat_kcal y alcohol_kcal como contribuciones por macro, total_kcal como su suma, total_kj como total_kcal multiplicado por 4.184 (conversión termoquímica), un objeto factors que reafirma cuatro, cuatro, nueve y siete, una cadena formula breve y unit en kcal para la figura energética principal. Combine la comprobación gratuita en el navegador con automatización API cuando necesite los mismos números en un registro de backend.
Dónde una API de calorías a partir de macros aporta valor real
Como la implementación es pure parse de nivel A, cada llamada exitosa cuesta el precio base publicado $0.002, sin tokens de modelo ni red saliente.
Casos de integración
Convertir gramos del tracker en energía diaria
Sume los gramos de macros registrados por día o ración y obtenga total_kcal y total_kj con un contrato API determinista para informes y paneles.
Auditar planes de coaching y diarios de investigación
Aplique una definición compartida 4/4/9/7 en planes de clientes o registros de estudio para que los totales energéticos sean comparables y comprobables con golden tests.
Preguntas técnicas
¿Cómo calculo las calorías a partir de gramos de macronutrientes?
Envíe protein_g, carbohydrate_g, fat_g y alcohol_g finitos y no negativos. total_kcal es 4·P + 4·C + 9·F + 7·A; total_kj es total_kcal × 4.184.
¿Por qué se rechazó mi solicitud?
Cada campo debe ser un número finito no negativo (número JSON o cadena numérica). Valores ausentes, no numéricos, infinitos o negativos devuelven invalid_input y no se facturan.
¿Cuánto cuesta la calculadora de calorías por macronutrientes?
La herramienta en el navegador es gratuita. Las peticiones API usan saldo prepago KIT a $0.002 por llamada exitosa; la entrada inválida no se factura.