ForHosting KIT · Health & fitness

SAAG calculator

Serum albumin of 3.5 g/dL minus ascitic albumin of 1.2 g/dL gives a SAAG of 2.3, above the 1.1 cutoff, so portal hypertension is likely. Enter both albumin values to get the gradient and its reading. 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
Serum albumin
3.5
Ascites albumin
1.2
You get
Saag
2.3 g/dL
Threshold
1.1
Indication
likely
Indication label
High SAAG (≥ 1.1 g/dL) — portal hypertension likely

The serum-ascites albumin gradient, almost always written SAAG, is serum albumin minus ascitic-fluid albumin in grams per decilitre. Hepatology teaching uses a 1.1 g/dL cutoff: a high SAAG means portal hypertension is likely, and a low SAAG means it is unlikely. This calculator accepts both albumin values, returns the gradient, and labels that indication so classrooms, paracentesis worksheets, and product backends share one contract.

What SAAG measures and how the 1.1 g/dL cutoff is applied

The serum-ascites albumin gradient is a subtraction used whenever ascitic fluid is sampled and a contemporaneous serum albumin is available. Compute SAAG as serum albumin minus ascitic-fluid albumin, both in grams per decilitre. Hepatology textbooks and paracentesis teaching slides treat 1.1 g/dL as the operational cutoff: a gradient greater than or equal to 1.1 g/dL is a high SAAG and indicates that portal hypertension is likely, whereas a gradient below 1.1 g/dL is a low SAAG and indicates that portal hypertension is unlikely.

High-SAAG ascites is classically associated with cirrhosis, cardiac ascites, and hepatic venous outflow obstruction. Low-SAAG ascites is classically associated with peritoneal carcinomatosis, tuberculous peritonitis, pancreatic ascites, biliary leak, and nephrotic syndrome. This capability implements only that arithmetic and the binary indication; it does not diagnose a specific etiology, does not apply protein or LDH Light criteria, and does not replace a clinician who sees the patient.

Inputs must be finite and non-negative. Zero albumin is accepted as a non-negative number so a documented zero is not silently rewritten. Always treat the indication as educational teaching of the 1.1 g/dL rule, not as a medical-device output or a stand-alone diagnosis.

Where a SAAG calculator is used, pricing, and practical limits

Medical-school and nursing courses constantly assign SAAG drills from paired albumin numbers, so a single trusted oracle that returns the gradient beside a portal-hypertension flag speeds grading and demo setup. Gastroenterology and hepatology training programs use the 1.1 g/dL rule at the bedside after diagnostic paracentesis, and instructors need deterministic answer keys that match hand arithmetic.

Product teams building educational worksheets, simulation labs, or health-education apps want a documented serum-minus-ascites path that clients can audit by hand rather than a black-box score that mixes protein, cell count, and imaging without disclosure. Research assistants preparing synthetic ascites datasets need stable SAAG labels from known albumin pairs without network calls or model drift. If you later need anion gap, corrected calcium, BUN-to-creatinine ratio, or mean arterial pressure, treat those as separate search intents and landings rather than overloading this SAAG page.

Always present results as educational estimates from the published gradient formula; clinical decisions require qualified professionals, the rest of the fluid analysis, and protocols this tool does not collect.

Classroom SAAG answer keys

Let students submit serum and ascitic albumin and pin expected SAAG plus the 1.1 g/dL portal-hypertension flag in automated checkers.

Paracentesis teaching apps

Education apps show how high versus low SAAG maps to portal hypertension without re-coding the subtraction on every client.

How is SAAG calculated?

SAAG equals serum albumin minus ascitic-fluid albumin, both in g/dL.

What units does the SAAG calculator use?

Grams per decilitre (g/dL) for both albumins, matching the 1.1 g/dL cutoff.

Which conditions cause a high SAAG?

A gradient of 1.1 g/dL or more is classically linked to cirrhosis, ascites of cardiac origin and blocked venous outflow from the liver, which is why a high gradient points to portal hypertension.

Which conditions cause a low SAAG?

A gradient below 1.1 g/dL is classically linked to cancer spread to the peritoneum, tuberculous peritonitis, pancreatic ascites, a bile leak and nephrotic syndrome, where portal hypertension is unlikely to be behind the fluid.

Does the SAAG tell me what is causing the ascites?

No. It only sorts the fluid into portal hypertension likely or unlikely. It does not name a specific cause, does not use protein or LDH criteria, and needs the rest of the fluid analysis and a clinician.

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/saag

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/saag \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"serum_albumin":3.5,"ascites_albumin":1.2}'
{
  "serum_albumin": 3.5,
  "ascites_albumin": 1.2
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "health.saag",
  "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.

Negative serum or ascitic albumin fails with invalid_input and is never billed. Successful API calls cost $0.002 per item; failed validation does not consume prepaid balance.

What SAAG measures and how the 1.1 g/dL cutoff is applied

A negative serum or ascitic albumin cannot represent a laboratory albumin for this model and fails with invalid_input rather than taking an absolute value. The path is pure floating-point arithmetic with no network, no random seed, and no wall clock, so identical pairs always yield identical JSON.

Input contract, response fields, units, and error behaviour

Send two required fields. Values above fifteen g/dL are rejected so a g/L panel is not silently treated as g/dL against a 1.1 cutoff. Classic checks include serum 3.5 with ascites 1.2, which yields SAAG 2.3 and portal hypertension likely, and serum 3.2 with ascites 2.6, which yields SAAG 0.6 and portal hypertension unlikely. Equality at 1.1 is high SAAG. The field serum_albumin is the serum albumin in grams per decilitre and must be a finite number from zero through fifteen; aliases serum, serum_alb, alb_serum, and serum_albumin_gdl are accepted. The field ascites_albumin is the ascitic-fluid albumin in the same unit and must also be finite and non-negative through fifteen; aliases ascites, ascitic, ascitic_albumin, ascitic_fluid_albumin, and alb_ascites are accepted. Missing fields, empty strings, non-numeric values, NaN, Infinity, and any negative albumin fail with invalid_input and are not charged. On success the response echoes the cleaned serum_albumin and ascites_albumin, reports saag as their difference, sets unit to g/dL, and always includes threshold 1.1. The boolean portal_hypertension is true when saag is greater than or equal to 1.1 and false otherwise. The indication field is likely or unlikely, and indication_label restates the high-SAAG or low-SAAG teaching sentence for display. The formula string restates SAAG equals serum albumin minus ascitic fluid albumin, and method is always serum_ascites_albumin_gradient so downstream code can branch without sniffing shapes. Convert g/L to g/dL before calling; this endpoint does not rescale units.

Where a SAAG calculator is used, pricing, and practical limits

Because this capability is a pure parse engine, API pricing is the published base of $0.002 per successful item and failed validation does not consume balance. Pair this endpoint with your own laboratory workflow—confirm that both albumins were drawn around the same time and reported in grams per decilitre—then store saag, portal_hypertension, and indication alongside the raw values.

Simulation labs and SaaS backends

Server pipelines that already store paired albumin panels call a prepaid endpoint for SAAG fields instead of duplicating the cutoff in every language.

What SAAG value suggests portal hypertension?

A gradient greater than or equal to 1.1 g/dL is a high SAAG and sets portal_hypertension to true with indication likely. Below 1.1 g/dL the indication is unlikely.

What happens if an albumin value is negative?

The request fails with invalid_input. Negative serum_albumin or ascites_albumin values are rejected and not charged.

What does the SAAG 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 →