Todos los artículos
guide data

Entender los datos nutricionales

Un análisis a fondo de nuestras fuentes de datos, la cobertura de nutrientes y cómo trabajar con más de 40 nutrientes por producto.

actualizado el 24 de julio de 2026 FoodBase Team 4 min de lectura

Fuentes de datos

Nuestra base de datos combina dos grandes fuentes de datos abiertos en un formato unificado y normalizado:

Open Food Facts (4,1 M de productos) — una base de datos global mantenida por la comunidad, con una fuerte cobertura europea. Los productos incluyen códigos de barras, nombres/ingredientes multilingües, calificaciones Nutri-Score, clasificación NOVA, datos de alérgenos e imágenes. Con licencia ODbL.

USDA FoodData Central (2,0 M de productos) — la completa base de datos de composición de alimentos del Departamento de Agricultura de EE. UU. Incluye valores de nutrientes verificados en laboratorio para productos de marca, alimentos básicos (foundation) y alimentos de referencia históricos (legacy). Dominio público.

Juntas suman 6,1 millones de productos alimentarios únicos — más de lo que ofrece cualquier fuente por sí sola.

Cómo combinamos los datos

Cuando un producto existe en ambas bases de datos (se emparejan por código de barras), damos prioridad a los valores de nutrientes de la USDA (verificados en laboratorio) y los complementamos con los metadatos de Open Food Facts (imágenes, alérgenos, Nutri-Score, nombres multilingües). Así obtienes lo mejor de los dos mundos: datos nutricionales precisos con metadatos de producto ricos.

Niveles de nutrientes

No todos los productos tienen medidos todos los nutrientes. Organizamos los nutrientes en niveles según su cobertura de datos:

Nivel 1: macros básicos (97 %+ de cobertura)

Disponibles para casi todos los productos de nuestra base de datos:

NutrienteCampoUnidad
Energíaenergy_kcal, energy_kjkcal, kJ
Proteínasproteins_gg
Carbohidratoscarbs_gg
Grasasfat_gg
Azúcaressugars_gg
Grasas saturadassaturated_fat_gg
Sodiosodium_mgmg
Salsalt_gg
Fibrafiber_gg

Nivel 2: nutrientes comunes

Disponibles para una gran parte de los productos — sobre todo los registros verificados en laboratorio — pero lejos de todos. La cobertura varía según el nutriente y sigue mejorando a medida que se actualizan las fuentes:

NutrienteCampo
Colesterolcholesterol_mg
Grasas transtrans_fat_g
Calciocalcium_mg
Hierroiron_mg
Vitamina Cvitamin_c_mg
Potasiopotassium_mg
Vitamina Avitamin_a_iu
Azúcares añadidosadded_sugars_g

Nivel 3: nutrientes ampliados

Disponibles para un subconjunto más pequeño, principalmente alimentos analizados en laboratorio:

Vitamina D, magnesio, zinc, fósforo, vitaminas del grupo B (B1, B2, B6, B9, B12), niacina, ácido pantoténico, manganeso, cobre, selenio, yodo, alcohol, almidón, polioles, grasas monoinsaturadas, grasas poliinsaturadas, ácidos grasos omega-3 y ácidos grasos omega-6.

Trabajar con los datos

Todos los valores son por 100 g

Todos los valores de nutrientes de nuestra API están normalizados a 100 g de producto. Para calcular los valores por porción, multiplica por el tamaño de la porción:

const perServing = (valuePer100g, servingGrams) => {
  return Math.round(valuePer100g * (servingGrams / 100) * 10) / 10;
};

// Example: 42 kcal per 100g, 330ml can
perServing(42, 330); // → 138.6 kcal

Cómo manejar los valores null

La API devuelve null para los nutrientes que no están disponibles en un producto concreto. Tu app debe gestionar bien los valores que faltan — no des por hecho que todos los productos tienen todos los campos.

const calories = food.nutrition_summary?.energy_kcal ?? "N/A";

Compatibilidad multilingüe

Los productos de Open Food Facts incluyen nombres e ingredientes en varios idiomas. El campo name devuelve un array de objetos {lang, text}:

[
  {"lang": "main", "text": "Coca-Cola"},
  {"lang": "fr", "text": "Coca-Cola en canette"},
  {"lang": "de", "text": "Coca-Cola"}
]

El campo name_default siempre contiene el texto en el idioma principal, para acceder rápido sin recorrer el array.

Calidad de los datos

Aplicamos varios filtros de calidad en nuestro pipeline de datos:

  • Límites físicos en los valores de nutrientes para descartar datos basura (por ejemplo, la proteína no puede superar los 100 g por 100 g)
  • Normalización de unidades para garantizar unidades coherentes entre fuentes (g, mg, mcg, UI)
  • Deduplicación por código de barras, dando prioridad a los valores verificados en laboratorio en los productos duplicados
  • Puntuación de completitud para ayudarte a filtrar por calidad de datos cuando lo necesites

¿Quieres echar un vistazo a los datos antes de escribir código? Cada producto del catálogo tiene una página pública en el explorador de productos que muestra exactamente los campos que devuelve la API — tabla nutricional, ingredientes, alérgenos, puntuaciones y todo lo demás.

Constrúyelo con FoodBase

6,1 M de productos, más de 40 nutrientes y análisis de alimentos con IA — gratis para empezar, sin tarjeta de crédito.