Most hydration calculators hide their math behind a label. Ours is three lines of TypeScript in src/components/WaterIntake.tsx, so the honest thing to do is open it up. Here is the exact formula, worked examples with the real rounding behavior, and the inputs the formula deliberately ignores.
The formula in full
liters = weight in kg x 0.033 + activity bonus + climate bonus
glasses = ceil(liters / 0.25)
hourly = round(liters x 1000 / 16)
The activity bonus is a flat addition in liters. Low adds 0, moderate adds 0.5, high adds 1.0, and athlete adds 1.5. The climate bonus has three entries. Temperate adds 0, hot adds 0.5, and cold adds 0.
The displayed liter figure is rounded to one decimal. The glass and hourly figures are computed from the unrounded value before that rounding happens. Keep that ordering in mind, because it produces a visible quirk covered below.
Worked examples with real numbers
A 70 kg person, moderate activity, temperate climate. The base is 70 x 0.033, which is 2.31. Add the 0.5 activity bonus for 2.81 liters. The tool displays 2.8 L, requires 12 glasses of 250 ml, and paces 176 ml per hour. Check the glasses by hand. 2.81 divided by 0.25 is 11.24, and the tool rounds up to 12, because a fraction of a glass still has to be poured.
A 90 kg athlete in a hot climate. The base is 2.97, the athlete bonus is 1.5, and the hot climate bonus is 0.5, totaling 4.97 liters. The display rounds to 5.0 L, the glass count is 20, and the hourly pace is 311 ml.
A 61 kg person, low activity, temperate climate. The base is 2.013 liters. The display reads 2.0 L, but the glass count is 9, because 2.013 divided by 0.25 is 8.052, which rounds up to 9. If you recompute glasses from the displayed 2.0, you get 8. The tool is right and the display is coarse. At rounding boundaries, trust the glass count, or add one glass whenever the displayed liters end in a 9 after the decimal.
What the 16 in the hourly pace assumes
The hourly figure divides your total by 16 waking hours. If you are awake for 18 hours, the real pace is your milliliters divided by 18, and the tool will overstate each hour by about 12 percent at the same total.
Fix it with one step. Take the displayed liters, multiply by 1000, and divide by your actual waking hours. For the 70 kg example awake 18 hours, the pace is 2810 divided by 18, which is 156 ml per hour.
What the formula ignores, on purpose
The weight factor of 33 ml per kg is the only body variable. There is no age input, no sex input, and no pregnancy or breastfeeding adjustment. Two people at 70 kg get the same number regardless of anything else about them.
The climate list treats cold the same as temperate, with a zero bonus in both cases. Only the hot option changes the result, by half a liter.
The output is labeled as water to drink, but the underlying per-kilogram guideline describes total fluid intake, and food contributes a share of it. Presenting the full figure as glasses to drink is the coarsest simplification in the tool.
There is no upper bound check. The formula is linear, so extreme inputs produce extreme outputs without any warning. A 120 kg athlete in a hot climate gets 5.96 liters, displayed as 6.0 L, with no note about pacing intake across the day or replacing electrolytes during long sessions. Use the number as a starting point, and treat thirst and urine color as the correction signals.
How to use the result
1. Weigh yourself in the morning after the bathroom, before eating.
2. Pick the activity level that matches a normal week, and your best week. Occasional workouts do not justify the high bonus.
3. Set climate to hot only if you sweat through most days, and set it during the actual season rather than leaving it fixed.
4. Read the liter figure first, then adopt the glass count as your daily tally, because it already accounts for partial glasses.
5. Recompute the hourly pace with your own waking hours using the division rule above.
6. Recalculate after any weight change of 5 kg or more, since the base scales directly with weight.
Daily hydration checklist
- [ ] Weight entered in kilograms, not pounds.
- [ ] Activity level reflects a typical week.
- [ ] Climate matches the current season.
- [ ] Glass count taken as the target, with the liter figure as the summary.
- [ ] Hourly pace divided by your real waking hours.
- [ ] Recalculation scheduled after the next 5 kg weight change.
Run your own numbers through the [daily water intake calculator](/water-intake-calculator) and compare the glass count against your actual intake for three days. If your results track the formula or diverge from it in a consistent direction, that comparison is exactly the kind of reader data that would sharpen this guide.