ForHosting KIT · Health & fitness

Sodium change calculator

See how far serum sodium should move after one litre of fluid: with sodium at 110, 3% saline (513 mEq/L) and 42 litres of body water, it rises by about 9 mEq/L. A teaching estimate, not a treatment plan. Free in your browser.

  • Free
  • Runs in your browser
  • No sign-up
  • Your data stays on your device
Use it from WebAPIEmailTelegramApp soon
If you enter
Sodium
110
Infusate sodium
513
Total body water
42
You get
Sodium change
9.3720930233 mEq/L
Projected sodium
119.3720930233

The Adrogué-Madias formula estimates how much serum sodium is expected to rise or fall after one litre of a given intravenous fluid. Clinicians, students, and health-software teams use that estimate when teaching hypotonic and hypertonic infusions, reviewing hyponatremia and hypernatremia cases, or wiring educational calculators into apps. This sodium change calculator takes current serum sodium, infusate sodium concentration, and total body water, then returns the expected change in milliequivalents per litre together with a projected sodium after that litre. Results are educational estimates only and do not replace serial laboratory monitoring, fluid choice, or professional medical advice.

What the Adrogué-Madias sodium change measures and which fluids it covers

The plus one accounts for the extra litre you are adding; the numerator is the sodium surplus or deficit that litre carries relative to the patient's current sodium. When infusate sodium is higher than serum sodium, as with three percent saline at five hundred thirteen milliequivalents per litre, the change is positive and serum sodium is expected to rise. When infusate sodium is lower, as with five percent dextrose in water at zero milliequivalents per litre, the change is negative and serum sodium is expected to fall.

Isotonic saline at one hundred fifty-four milliequivalents per litre produces a small change when serum sodium is near one hundred forty. A total body water of zero is rejected because a body-water compartment of nothing is not a valid clinical input.

Where the estimate helps, and its limits

Call the free in-browser sodium change calculator for classroom demos, nursing homework, and quick personal learning without reimplementing Adrogué-Madias in every spreadsheet. Typical workflows send a hyponatremia panel with three percent saline and a TBW estimate to show how steeply sodium may rise per litre, or send dextrose in water against a high serum sodium to show the expected fall. People with symptoms, known sodium disorders, kidney disease, heart failure, or medication changes should follow professional medical advice rather than any single automated number alone.

Hyponatremia teaching worksheets

Education apps show how three percent saline versus dextrose in water moves serum sodium per litre without recoding the TBW-plus-one identity on every client.

What happens if total body water is zero?

A total body water of zero is not a valid clinical input for this formula and is not charged.

Does this replace medical advice or include potassium in the bag?

No. Results are educational estimates. People with sodium disorders should follow professional guidance, not this calculator alone.

How is the expected sodium change calculated?

Subtract the patient's current sodium from the sodium in the fluid, then divide by total body water plus one litre. A positive result means sodium is expected to rise after that litre; a negative one means it is expected to fall.

Why does dextrose in water lower sodium while 3% saline raises it?

Because 5% dextrose in water carries no sodium, so it dilutes the body's sodium. 3% saline holds 513 mEq/L, far above any serum level, so each litre adds more sodium than the body water around it.

How do I estimate total body water?

A common estimate is about 0.6 times body weight in kilograms for adult men and 0.5 for adult women, lower in older or more adipose patients. The calculator does not estimate it for you: you enter the litres you already worked out.

Everything on this page is available programmatically. This section is for teams who want to wire it into their own systems; everyone else can just use the tool above.

POSThttps://api.kit.forhosting.com/health/sodium-change

Prefer to automate it? One authenticated POST creates the task; the result comes back by webhook or a signed link. The same capability also runs here on the web, by email and from Telegram — and soon from our app too.

curl -X POST https://api.kit.forhosting.com/health/sodium-change \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"sodium":110,"infusate_sodium":513,"total_body_water":42}'
{
  "sodium": 110,
  "infusate_sodium": 513,
  "total_body_water": 42
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "health.sodium_change",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

The API is asynchronous: the call returns a task_id immediately and the result arrives by webhook. Polling is capped at 1 req/s per task.

Per request$0.002

Published price — no tokens, no invented credits. A failed task is never charged.

HTTPCodeMeaning
401unauthorizedMissing or invalid API key.
402insufficient_balanceYour balance doesn't cover the task price.
404unknown_typeThat task type doesn't exist.
429rate_limitedToo many requests. Use the webhook instead of polling.

Total body water of zero is rejected as invalid_input because a body-water compartment of nothing is not a valid clinical input.

What the Adrogué-Madias sodium change measures and which fluids it covers

The expected serum sodium change per litre of infusate is the Adrogué-Madias identity used throughout electrolyte teaching: sodium_change equals infusate sodium minus current serum sodium, all divided by total body water plus one litre. Total body water is typically estimated as a fraction of body weight—about zero point six times weight in kilograms for adult men, zero point five for adult women, and lower fractions in older or more adipose patients—but this endpoint does not estimate that fraction for you; you send the litre value you already computed. The arithmetic is deterministic: identical numbers always produce identical JSON, with stable rounding so tests can pin sodium_change across runtimes without floating-point surprises.

Input contract, response fields, and error behaviour

Serum sodium must be strictly positive and within the declared teaching range. Infusate sodium must be non-negative so dextrose in water at zero remains valid. Optional output keys are omitted rather than set to null. POST a JSON body with three required finite numbers. Field sodium is current serum sodium in milliequivalents per litre; aliases include na, Na, serum_sodium, current_sodium, and sodium_meq. Field infusate_sodium is the infusate sodium concentration in the same units; aliases include infusate_na, na_inf, infusate, and infusate_na_meq. Field total_body_water is total body water in litres; aliases include tbw, body_water, tbw_l, and total_body_water_l. Each field may arrive as a JSON number or as a numeric string. Missing fields, empty strings, and non-finite values fail with invalid_input naming the field. Total body water must be greater than zero: a value of zero or a negative volume fails with invalid_input and is not billed, because a body-water compartment of zero is not a valid input for this formula. On success the body echoes the three inputs, reports sodium_change as the expected change in milliequivalents per litre, reports projected_sodium as current sodium plus that change after one litre, sets unit to mEq/L, restates the formula string, and sets method to adrogue_madias so clients can branch on algorithm identity. Pair this endpoint with your own weight-to-TBW estimate; this calculator does not infer sex, age, or adiposity from the request.

API usage, pricing, product workflows, and practical limits

Use the prepaid API when a health SaaS, electronic worksheet, simulation lab, tutoring platform, or school LMS needs a stable contract under KIT balance at $0.002 per successful item; validation failures never consume balance after the engine rejects the request. Keep requests small, pin sodium_change in tests with the documented rounding, and you get reproducible figures for edge workers, LMS plugins, and consumer health funnels without standing up clinical decision support you are not licensed to offer. Always disclose that the numbers are educational estimates: the original formula ignores potassium in the infusate unless you have already added it into infusate_sodium yourself, ignores ongoing urinary losses, and does not replace serial sodium checks, fluid-restriction rules, or clinician-prescribed correction limits.

Nursing and medical-school homework

Students submit current sodium, infusate sodium, and TBW and pin expected sodium_change JSON in automated checkers with deterministic Adrogué-Madias outputs.

Simulation labs and SaaS backends

Server pipelines that already store electrolyte panels and a TBW estimate call a prepaid endpoint for sodium_change instead of duplicating the formula in every language.

How is the expected sodium change calculated?

sodium_change = (infusate_sodium − sodium) / (total_body_water + 1), all in mEq/L with TBW in litres. That is the Adrogué-Madias change per litre of infusate. The response also returns projected_sodium = sodium + sodium_change.

What fields are required?

Three required fields: sodium (current serum Na in mEq/L), infusate_sodium (infusate Na in mEq/L), and total_body_water (litres, must be greater than zero). Missing fields return invalid_input and are not billed.

What does the sodium change calculator cost?

The browser tool is free. API requests use prepaid KIT balance at $0.002 per successful call; invalid input is not billed.

Read the full KIT documentation →