Beta
Healthier Eats gives every meal a single 0-100 score so you can compare options side-by-side. The score is a transparent blend of the nutrition values restaurants already publish, plus a small set of caps that stop one bad number being hidden by good ones. It is not medical advice and not a diet plan.
We use the nutrition table on the brand's own site or menu. Each meal is judged on six values, all measured per portion as sold:
We also record allergens, diet flags (vegan, vegetarian, pescatarian), cuisine and occasion. Those are used for filtering, not for the score itself.
Each component is converted to a 0-100 sub-score using fixed bands. Bigger is better for protein and fibre; smaller is better for calories, sugar, salt and saturated fat.
| Component | 100 | ~75 | ~50 | ~25 | 0 |
|---|---|---|---|---|---|
| Calories | ≤ 300 | ≤ 500 | ≤ 750 | ≤ 900 | > 900 |
| Fibre | ≥ 8 g | ≥ 6 g | ≥ 4 g | ≥ 2 g | < 2 g |
| Sugar | ≤ 5 g | ≤ 10 g | ≤ 15 g | ≤ 25 g | > 25 g |
| Salt | ≤ 1.5 g | ≤ 2.0 g | ≤ 2.4 g | ≤ 3 g | > 4 g |
| Saturated fat | ≤ 3 g | ≤ 5 g | ≤ 7 g | ≤ 10 g | > 10 g |
Protein is a blend of two ideas: 60% from grams per portion (30g = full marks) and 40% from how much of the meal's energy actually comes from protein (20% of kcal = full marks). This rewards meals that are genuinely protein-led, not just big.
The six sub-scores are combined as a weighted average. Weights reflect how strongly each component shapes whether a meal is a good everyday choice:
The raw score is the weighted sum divided by the total weight, then rounded to a whole number between 0 and 100.
UK adults are advised to have no more than 6g salt per day (NHS). UK front-of-pack guidance treats more than 1.8g salt per portion as high for food portions over 100g. Healthier Eats uses these serving-level thresholds to decide when salt should limit the maximum score, so a high-salt meal cannot rank as elite just because the rest of its nutrition looks good.
| Salt per portion | Maximum final score |
|---|---|
| ≤ 1.8 g | No cap |
| > 1.8 g and ≤ 2.4 g | 88 |
| > 2.4 g and ≤ 3.0 g | 82 |
| > 3.0 g and ≤ 4.0 g | 75 |
| > 4.0 g and ≤ 6.0 g | 65 |
| > 6.0 g | 50 |
Salt intentionally affects the final score twice: through the weighted salt sub-score (which smoothly rewards lower salt) and through these serving-level caps.
Applied caps are stored alongside the score so you can see exactly why a meal did not go higher. The strictest cap wins.
Healthier Eats uses a nutrition-based comparison model. The score is calculated from published per-portion nutrition values and is designed to compare similar restaurant meals against each other.
The score does not currently include ingredient quality, processing level, additives, cooking method, allergens or personal dietary suitability. This is because ingredient-level data is not published consistently across all restaurant brands.
Including ingredients without consistent data would risk penalising brands that disclose more information while giving less transparent brands an unfair advantage.
Not every brand publishes fibre. We never treat missing fibre as zero - that would unfairly punish meals where the brand simply did not disclose. We also never remove fibre from the calculation, because doing so would let meals with missing fibre inflate their scores by avoiding the fibre drag. Instead:
A meal with no fibre published, scoring 90.8 / 90.4 / 100 / 100 / 100 on calories / protein / sugar / salt / saturated fat.
Tags are awarded purely on the published numbers:
We surface a watch-out tag when a value is noticeably higher than typical options:
A rice bowl with 620 kcal, 32 g protein, 6 g sugar, 2.6 g salt, 4 g saturated fat, 5 g fibre.
We aim to use the official restaurant source for every meal and re-check periodically. Sample items in this beta are clearly marked as Sample data. Restaurants update recipes, portion sizes and ingredients without notice - always check the brand directly before ordering, especially for allergens.