# Dog Food Portion Calculator

> Estimates a dog's resting energy requirement (RER = 70 × kg^0.75), multiplies it by the life-stage factor used by veterinary nutrition services (e.g. neutered adult 1.6, puppy under 4 months 3.0) and converts the daily calories into cups and grams of a food of known energy density, with a meal split.

- Calculator id: `dog-food-portion` · Category: Everyday Life (`everyday`) · Tool name: `estimate_dog_food_portion`
- Canonical page: https://tttkmbb.com/everyday/dog-food-portion · This document: https://tttkmbb.com/everyday/dog-food-portion.md · JSON definition: https://tttkmbb.com/everyday/dog-food-portion.json

## Purpose

Estimates a dog's resting energy requirement (RER = 70 × kg^0.75), multiplies it by the life-stage factor used by veterinary nutrition services (e.g. neutered adult 1.6, puppy under 4 months 3.0) and converts the daily calories into cups and grams of a food of known energy density, with a meal split.

**Use when:** You need to know how many cups or grams of a specific food to feed a dog per day from its weight, life stage and the kcal per cup or per 100 g on the bag.

**Do not use when:** The dog is ill, underweight, a giant-breed puppy or on a prescription diet; results are informational starting points, not veterinary advice. For cats or a calorie figure without food conversion use pet-calories.

## Input

| Parameter | Type | Unit | Required | Description |
| --- | --- | --- | --- | --- |
| `weight_kg` | number | kg | required | Current body weight (use the target weight for weight loss). (min 0.5, max 120) |
| `life_stage` | enum: puppy_under_4_months \| puppy_4_to_12_months \| adult_neutered \| adult_intact \| adult_inactive_obese_prone \| weight_loss \| senior \| working_dog_moderate \| pregnant_last_trimester \| lactating |  | optional, default "adult_neutered" | Life stage or activity; each maps to a multiple of RER. |
| `food_kcal_per_cup` | number | kcal/cup | optional, default 350 | Metabolisable energy per standard 8 oz measuring cup from the bag (dry foods 300–450). (min 50, max 1000) |
| `food_kcal_per_100g` | number | kcal/100 g | optional | Energy per 100 g from the bag, to get the portion in grams (dry foods 330–420, wet foods 70–130). (min 30, max 700) |

## Output

| Field | Type | Unit | Description |
| --- | --- | --- | --- |
| `rer_kcal` | number | kcal/day | RER = 70 × weight_kg^0.75. |
| `mer_factor` | number |  | Multiplier applied to RER. |
| `mer_kcal` | number | kcal/day | Maintenance energy requirement = RER × factor. |
| `cups_per_day` | number | cups | mer_kcal / food_kcal_per_cup. |
| `grams_per_day` | number | g | mer_kcal / food_kcal_per_100g × 100 (when given). |
| `meals_per_day` | integer |  | 2 for adults, 3 for puppies of 4–12 months, 4 for puppies under 4 months. |
| `cups_per_meal` | number | cups | cups_per_day / meals_per_day. |
| `grams_per_meal` | number | g | grams_per_day / meals_per_day (when given). |
| `meals_note` | string |  | How to split the daily amount. |
| `body_condition_note` | string |  | How to adjust the portion over time. |

## Formula

`RER = 70 × weight_kg^0.75; MER = RER × factor (puppy <4 months 3.0, puppy 4–12 months 2.0, neutered adult 1.6, intact adult 1.8, inactive 1.4, weight loss 1.0, senior 1.4, moderate work 3.0, last-trimester pregnancy 3.0, lactation 4.0); cups_per_day = MER / food_kcal_per_cup; grams_per_day = MER / food_kcal_per_100g × 100`

Factors follow the Ohio State University Veterinary Medical Center calorie table used with the WSAVA nutrition toolkit; the inactive factor is the upper end of its 1.2–1.4 range, the senior factor 1.4 and the lactation factor the lower bound of 4–8. Individual needs vary by ±25 %, so the portion is a starting point to be adjusted against body condition; informational, not veterinary advice.

## Data Sources

- Ohio State University Veterinary Medical Center – Basic calorie calculator for dogs and cats — https://vmc.vet.osu.edu/services/companion-animal-nutrition-support-service (reference, retrieved 2026-09-24)
- WSAVA Global Nutrition Committee – Nutritional assessment guidelines and toolkit — https://wsava.org/global-guidelines/global-nutrition-guidelines/ (standard, retrieved 2026-09-24)

Data freshness: `static`. Deterministic formula with fixed constants; results never go stale. Inputs supplied by the caller determine the output.

## API

- `GET https://tttkmbb.com/api/v1/calculate/dog-food-portion?weight_kg=…`
- `POST https://tttkmbb.com/api/v1/calculate/dog-food-portion` with JSON body `{"inputs": {…}}`
- Response: unified envelope (`success`, `request`, `result.values`, `result.units`, `sources`, `freshness`, `timestamp`, `next_actions`, `links`); see https://tttkmbb.com/docs/response-format.md
- Schema: https://tttkmbb.com/api/v1/calculators/dog-food-portion · OpenAPI operationId `estimate_dog_food_portion` in https://tttkmbb.com/openapi.json
- Authentication: none. Rate limit: fair use, see https://tttkmbb.com/docs/rate-limits.md.

## MCP

- Server: `https://tttkmbb.com/mcp` (Streamable HTTP, JSON-RPC 2.0, no auth)
- Tool:  `run_calculator` with `{"calculator_id": "dog-food-portion", "inputs": {…}}`

## Example

- 20 kg neutered adult, 350 kcal/cup: inputs `{"weight_kg":20,"life_stage":"adult_neutered","food_kcal_per_cup":350}` → `{"rer_kcal":662,"mer_factor":1.6,"mer_kcal":1059.2,"cups_per_day":3.03,"meals_per_day":2,"cups_per_meal":1.51}`
- 5 kg puppy of 6 months, 380 kcal/cup, 360 kcal/100 g: inputs `{"weight_kg":5,"life_stage":"puppy_4_to_12_months","food_kcal_per_cup":380,"food_kcal_per_100g":360}` → `{"rer_kcal":234.1,"mer_kcal":468.1,"cups_per_day":1.23,"grams_per_day":130,"meals_per_day":3,"grams_per_meal":43}`

```
GET https://tttkmbb.com/api/v1/calculate/dog-food-portion?weight_kg=20&life_stage=adult_neutered&food_kcal_per_cup=350
```

## Limitations

The dog is ill, underweight, a giant-breed puppy or on a prescription diet; results are informational starting points, not veterinary advice. For cats or a calorie figure without food conversion use pet-calories. Factors follow the Ohio State University Veterinary Medical Center calorie table used with the WSAVA nutrition toolkit; the inactive factor is the upper end of its 1.2–1.4 range, the senior factor 1.4 and the lactation factor the lower bound of 4–8. Individual needs vary by ±25 %, so the portion is a starting point to be adjusted against body condition; informational, not veterinary advice. All values are computed from the formula above; no measurement or live data is involved.

## FAQ

**Where do I find kcal per cup?**

On the bag's guaranteed analysis or feeding guide as 'ME (calculated) kcal/cup' or kcal/kg; divide kcal/kg by 10 to get kcal per 100 g.

**Why is this less than the bag's feeding chart?**

Feeding charts are typically based on intact, active adults (1.8 × RER or more); most neutered pets need 20–30 % less, which is why bag-fed dogs often gain weight.

**Do treats count?**

Yes: keep treats under 10 % of daily calories and reduce the food portion accordingly, otherwise the diet becomes unbalanced and the dog overeats.

## Related

- [Pet Calorie Calculator](https://tttkmbb.com/everyday/pet-calories.md) — Calorie needs for dogs and cats without food conversion.
- [Dog Age Calculator](https://tttkmbb.com/everyday/dog-age.md) — Life stage from the dog's age and size.
