How Your Limits Are Calculated

How KidneyPal sets your daily sodium, potassium, phosphorus, protein, and fluid limits — including kidney stones and oxalate — and how to override them with your care team's numbers.

On this page

Every score, ring, and piece of advice in KidneyPal is measured against your personal daily nutrient limits. This page explains which nutrients the app tracks, how your limits are calculated, and how to override them with the numbers your doctor gives you.

The Five Core Nutrients

KidneyPal tracks these for everyone, on every meal:

NutrientWhy it matters for kidneys
SodiumRaises blood pressure and causes fluid retention, both of which strain the kidneys. It hides in processed food, bread, and restaurant meals.
PotassiumWeakened kidneys may not clear potassium well. Levels that climb too high can affect your heart rhythm.
PhosphorusExcess phosphorus can pull calcium from bones and build up in blood vessels. Phosphate additives in packaged food are absorbed especially easily.
ProteinDigesting protein creates waste your kidneys must filter. Most CKD stages call for moderating protein — while dialysis usually increases protein needs.
FluidSome people, especially on dialysis, need to limit total fluid so it doesn’t build up between treatments.

This is general education, not medical advice — your situation may differ. Always follow the numbers your care team gives you.

How Your Personal Limits Are Calculated

When you finish setup, KidneyPal calculates your daily limits from three things in your profile:

1. Your kidney status

Your stage sets the baseline. In early CKD the focus is mainly sodium control with relatively relaxed potassium and phosphorus limits. As CKD advances, all three tighten and the protein target comes down. Dialysis flips the protein guidance upward while keeping minerals controlled, and a transplant generally means more relaxed limits. If you chose Not Sure or are tracking preventively, KidneyPal uses general healthy-eating guidelines. The baselines follow the NKF KDOQI clinical guidelines.

Kidney stones are treated differently — stone prevention isn’t CKD. If your status is Kidney Stones, potassium and phosphorus generally aren’t restricted, so those limits stay relaxed. The focus shifts to hydration and sodium control, moderating animal protein, and watching oxalate (see the oxalate note under Optional Nutrients below). The AI knows this too: its meal advice is framed around stone prevention — fluids, sodium, oxalate, and pairing high-oxalate foods with calcium — rather than the potassium and phosphorus rules written for CKD.

2. Your body weight

Protein recommendations are written as grams per kilogram of body weight, so KidneyPal multiplies your stage’s protein rate by your weight to get your daily gram target. If you skipped the weight question, you can add it anytime — see Settings.

3. Your health conditions

If you selected High Blood Pressure or Heart Disease, your sodium limit is tightened further (it never drops below a sensible floor). Diabetes doesn’t change your core limits, but it’s a good reason to turn on carb tracking — see Optional Nutrients below.

Fluid is a little different: instead of a formula, the fluid tracker uses a standard daily target for your kidney status — from 1,000 ml on dialysis up to 3,000 ml for kidney stones, where drinking more is the goal (the full table is in Tracking Fluids). If your care team has given you a daily fluid restriction, add it as a custom limit (below) and it replaces the default.

Tip: Your care team’s numbers always win. KidneyPal’s calculated limits are sensible guideline-based defaults — if your nephrologist or dietitian has given you different targets, enter those as custom limits.

Custom Daily Limits

Open Settings and scroll to Custom Limits. Each nutrient — Sodium, Potassium, Phosphorus, Protein, and Fluid — shows its current value tagged either auto (calculated by KidneyPal) or custom (entered by you).

The Custom Limits section in Settings with sodium set to a custom 1,500 mg and the other nutrients on auto

To set a custom limit:

  1. Tap the nutrient.
  2. Enter the daily limit from your doctor.
  3. Save. The new number immediately replaces the automatic one everywhere in the app.
The Sodium Limit editor with a custom value entered, the auto-calculated limit shown below, and a Reset to Auto-Calculated button

To go back, open the same nutrient and tap Reset to Auto-Calculated. Leaving the field empty also keeps the automatic limit.

Tip: Changing your kidney status in Settings resets any custom limits back to auto-calculated values for the new stage — so re-enter your doctor’s numbers afterward if they still apply.

Optional Nutrients (requires KidneyPal Pro)

Beyond the core five, Pro users can track seven more. Go to SettingsOptional Nutrients and toggle on what you want on your daily dashboard:

NutrientWhy you might track it
CaloriesWeight management and overall energy balance
Carbs & SugarsImportant for diabetic CKD — sugars show as a subset of total carbs
FatHeart health, with saturated fat shown as a subset
MagnesiumOften runs low in CKD; matters for heart, muscle, and bone
CalciumHelps you watch for mineral imbalance
Vitamin KWorth tracking if you take blood thinners like warfarin
OxalateThe key nutrient for kidney stone prevention — found in spinach, nuts, chocolate, beets, and tea
The Optional Nutrients screen with Calories, Carbs and Sugars, Fat, and Magnesium toggled on, each with a daily limit row

The AI already analyzes all of these on every scan — toggling a nutrient on just shows it in your diary. Each one can have an optional daily limit: set one to get a progress bar and percentage, or tap Track without limit to see totals only.

A note on oxalate

Oxalate was added for people managing kidney stones, and it works a little differently from the others:

  • It turns on by itself for stone formers. If your kidney status is Kidney Stones, oxalate tracking is enabled automatically with a default limit of 50 mg per day — a common target for calcium-oxalate stone prevention. You can change the limit, clear it, or turn the whole thing off like any other optional nutrient.
  • Every analysis includes it. Meal photos, label scans, barcode lookups, and quick logs all return an oxalate estimate, so your daily total builds up on its own once tracking is on.
  • It never touches your Kidney Score. Oxalate is tracking-only, by design — the score is built around the CKD nutrients (sodium, potassium, phosphorus, protein), so a high-oxalate food shows up clearly in your totals without skewing the score.
  • It stays in KidneyPal. Apple Health has no oxalate category, so unlike your other nutrients it isn’t exported there.

Where Your Limits Are Used

Your limits aren’t just numbers on a settings page — they drive the whole app:

  • Diary dashboard — the Nutrient Budget shows how much of each limit you’ve used today. See Your Daily Diary.
  • Kidney safety scores — the same meal scores differently for someone in Stage 2 than for someone on dialysis. See Scanning Meals.
  • AI answers — meal and recipe chat answers are framed around your remaining budget for the day.
  • Trends and insights — weekly charts and AI pattern insights compare your intake to your limits (requires KidneyPal Pro). See Progress & Insights.
  • Doctor report — your limits and adherence appear in the PDF you can hand to your care team (requires KidneyPal Pro). See Doctor Report.

Ready to Start Tracking?

Download KidneyPal and start managing your kidney diet with AI-powered meal scanning and personalized nutrient tracking.