Food Tracking
What you ate, from your heart rate.
Wearables already measure calories burned. The other half of energy balance — calories eaten — has needed a food log, a scale, or a glucose monitor. It doesn't anymore. A meal leaves a thermogenic signature in heart rate that persists for 5–7 hours. Read that wave, and you recover the calories.
In a controlled feeding trial, heart rate alone reproduced measured energy intake with 4.8% mean absolute error — every participant within ±10%. The same heart-rate stream also yields a coupled set of metabolic-health indices that align with glycemic response and cardiorespiratory fitness at clinical-grade strength.
Controlled feeding trial
4.8%
MAPE · HR-derived EI vs measured intake
R² = 0.97 against weighed meals. All eight participants estimated within ±10% from heart rate alone. Steinarsson et al., University of Iceland.
The Signal
Every meal writes a wave into heart rate.
The thermic effect of food (TEF) is the metabolic cost of processing a meal — roughly 10–15% of the energy ingested, paid out as heat over the hours that follow. Sympathetic activation, splanchnic vasodilation, and elevated substrate turnover all lift the cardiovascular system. Heart rate climbs in a smooth, stereotyped wave that peaks 1–2 h after the meal and decays back toward baseline over the next 5–7 h.
Each wave carries a quantifiable load: the integrated number of food-attributable heartbeats. Driftline's metabolic tracking framework fits the wave to the raw signal, partitions postprandial heartbeats into basal, activity, and food components, and converts each component back to energy using a personal calibration.
Postprandial heart rate · single meal · partitioned signal
Heart-rate elevation after a standardized pasta meal. The yellow envelope is the food-beat component — the thermogenic wave attributable to the meal itself. The green band on top is residual activity. The wave persists well beyond the 2–3 h windows commonly used in TEF studies, which is why those studies underestimate total thermogenic load.
How it works
Four steps, from meal to kilocalories.
Eat.
The meal kicks off a coordinated autonomic response — sympathetic activation, digestion, nutrient absorption. The cardiovascular system lifts to meet it.
Heart rate rises.
A thermogenic wave begins. Heart rate climbs within the first hour, peaks around 1–2 h, then decays gradually over the next 5–7 h.
Read the wave.
Driftline fits a thermogenic wave to the heart-rate stream and separates food beats from basal and activity beats.
Convert to calories.
Food beats × your personal Food Factor (FF, beats/kcal) → energy intake. One number. No food log.
The conversion
EI ≈ Food beats / FF
FF (Food Factor) is the cardiovascular cost of processing one kilocalorie, in heartbeats. It is determined per individual from a one-time submaximal calibration. Observed range across the trial: 1.8–4.5 beats/kcal — a 2.5× spread between individuals, which is exactly why population-average constants don't work.
Three Coupled Indices
One physiology. Three readings. They agree.
The same postprandial study produces three independently derived indices — one cardiovascular, one glycemic, one fitness. Each looks at a different domain. Each is computed from different raw inputs. And they converge.
Food Factor
beats / kcal
Cardiac cost of processing energy. Individual range observed: 1.8–4.5 beats/kcal — wide enough that no population average can stand in.
Glycemic Response Index
mg/dL per g/kg
Peak postprandial glucose normalized to the glucose-yielding load. Captures glycemic sensitivity per unit substrate, independent of meal size.
Metabolic Fitness Index
composite
Threshold speed, cardiac range, and body composition fused into one number on a 0–5 scale. The fitness anchor underlying both responses.
The convergence
Three indices, one underlying axis: aerobic muscle and oxidative capacity.
ρ = −0.98
MFI ↔ GRI
Higher fitness, smaller glycemic excursion per gram of carb.
ρ = 0.91
FF ↔ GRI
Higher cardiac cost per kcal travels with higher glycemic strain.
ρ = −0.88
FF ↔ MFI
Fitter individuals process the same kilocalorie at lower cardiac cost.
Skeletal muscle is the principal site of insulin-stimulated glucose disposal and oxidative metabolism. More aerobic muscle clears substrate faster (lower GRI), processes energy at lower cardiac cost (lower FF), and shows up directly in fitness (higher MFI). The three indices read the same physiology through different windows.
Validation
Eight participants. Weighed meals. Heart rate.
Each participant arrived fasted, consumed an ad libitum standardized meal that was weighed to the gram, and stayed in light office work for the next seven hours. Indirect calorimetry ran in parallel as the reference; heart rate ran as the test signal. The model never saw the food.
Measured vs HR-derived energy intake · per participant
Mean absolute percentage error 4.8%, range 0.7–9.8%. Linear fit R² = 0.97, slope 0.98, intercept 31 kcal (n = 8, p < 0.001). Source: Steinarsson, Friðriksson, Jóhannsson & Jakobsdóttir, “Postprandial heart-rate dynamics estimate energy intake and reflect metabolic fitness.”
Where it lands
What a passive intake signal unlocks.
Closed-loop energy balance
EE and EI from one wearable. Calories out and calories in, on the same continuous signal — no food log, no scale, no CGM.
Nutrition coaching
Personalized feedback the morning after, anchored to actual intake rather than self-reported portions. Coaching loops that close.
GLP-1 and weight-loss trials
Quantify TEF and food-related cardiovascular load before and after drug or lifestyle interventions. Continuous, scalable, passive.
Pre-diabetes screening
GRI tracks postprandial glycemic strain; MFI tracks the underlying aerobic capacity. Both move before fasting glucose and HbA1c.
Metabolic-health research
An R² = 0.99 (MFI ↔ GRI) physiological axis without blood draws — usable as a primary or stratifying endpoint in observational cohorts.
Clinical decision support
Continuous postprandial monitoring in populations where calorimetry and CGM are impractical: ageing, frailty, paediatrics, low-resource settings.
Where the work stands
Strong pilot. Free-living validation in progress.
Established
Under controlled, low-activity conditions, heart-rate dynamics estimate energy intake with errors below ±10% in every participant. The three coupled indices — FF, GRI, MFI — converge at clinical strength and reproduce known sex-related and fitness-related patterns.
Not yet established
Generalization across varied meal compositions, free-living conditions, higher activity levels, and larger and more diverse cohorts. The single-meal validation is a pilot (n = 8); a multi-meal, multi-day, free-living study is the next milestone.
EE + EI → energy balance
Calories burned was half the story.
The same heart-rate signal already inside every wearable carries the other half. Validated against weighed meals, linked to glycemic response, anchored in cardiorespiratory fitness. One SDK, both sides of energy balance.