Calculate your Model for End-Stage Liver Disease (MELD) score.
No
Yes (within last 24 hours)
Your MELD Score: —
Understanding the MELD Score
The Model for End-Stage Liver Disease (MELD) score is a numerical assessment used primarily to determine the prognosis of patients with end-stage liver disease. It's also crucial for prioritizing patients on the liver transplant waiting list. The score is calculated based on a patient's routine laboratory values: serum bilirubin, serum creatinine, and the international normalized ratio (INR) of prothrombin time. For patients with advanced liver disease, serum sodium is also included in a variant known as MELD-Na.
The MELD score ranges from 6 to 40. A higher score indicates a greater severity of liver disease and a higher short-term mortality risk, making patients with higher scores a priority for liver transplantation.
How the MELD Score is Calculated
The formula for the MELD score, as originally developed and widely used, is:
MELD Score = 3.78 * ln(Serum Bilirubin in mg/dL) + 11.2 * ln(INR) + 9.57 * ln(Serum Creatinine in mg/dL) + 0.64 * (if on Dialysis)
For patients requiring a MELD-Na score, the formula is adjusted to incorporate serum sodium levels:
The values for bilirubin, INR, and creatinine are entered directly into the formula.
If a patient is on dialysis, a factor of 0.64 is added to the base MELD score. The calculator automatically applies this if "Yes" is selected for dialysis.
The natural logarithm (ln) is used for bilirubin, INR, and creatinine.
Minimum values are often capped for the calculation:
Bilirubin: Minimum 0.1 mg/dL for calculation, though entered values below 1.0 may be capped at 1.0.
INR: Minimum 1.0 for calculation, though entered values below 1.0 may be capped at 1.0.
Creatinine: Minimum 0.1 mg/dL for calculation, though entered values below 1.0 may be capped at 1.0.
Sodium: Minimum 125 mEq/L for calculation, though entered values below 125 may be capped at 125.
Maximum values for bilirubin, INR, and creatinine can also affect the score, typically capping at 10, 8, and 4 respectively for the formula to prevent extremely high scores from single aberrant lab results.
The MELD-Na calculation is more complex and is often performed separately by transplant centers. This calculator provides the standard MELD and can calculate MELD-Na.
The MELD score is a dynamic number and is recalculated periodically, especially for patients on the transplant waiting list.
Use Cases for the MELD Score
The MELD score is critical in several scenarios:
Liver Transplant Prioritization: It is the standard system used by the United Network for Organ Sharing (UNOS) in the United States and similar systems internationally to rank patients awaiting a liver transplant. Higher scores mean a more urgent need.
Prognosis Assessment: It helps physicians predict short-term survival rates for patients with cirrhosis and other chronic liver diseases.
Guiding Treatment Decisions: The score can influence treatment choices for complications of liver disease, such as decisions about palliative care or specific interventions.
It's important to remember that while the MELD score is a powerful tool, it is just one component of a patient's overall clinical picture. Medical professionals consider many other factors when making treatment and transplant decisions.
function calculateMeld() {
var bilirubin = parseFloat(document.getElementById("bilirubin").value);
var inr = parseFloat(document.getElementById("inr").value);
var sodium = parseFloat(document.getElementById("sodium").value);
var creatinine = parseFloat(document.getElementById("creatinine").value);
var dialysis = document.getElementById("dialysis").value;
var meldScoreElement = document.getElementById("meldScore");
// — Input Validation and Capping —
var validInputs = true;
if (isNaN(bilirubin) || bilirubin < 0) { bilirubin = 0; }
if (isNaN(inr) || inr < 0) { inr = 0; }
if (isNaN(sodium) || sodium < 0) { sodium = 0; }
if (isNaN(creatinine) || creatinine 0) { // Only apply if sodium value is valid
var sodiumAdjustment = 1.32 * (1375 – calcSodium) – 0.032 * meld * (1375 – calcSodium);
meldNa = meld + sodiumAdjustment;
}
// — Final Score Adjustment —
// The MELD score is typically capped at 40.
meld = Math.min(40, Math.round(meld));
meldNa = Math.min(40, Math.round(meldNa)); // MELD-Na also capped at 40
// Displaying MELD-Na is common practice in transplant settings.
// We'll display MELD-Na if sodium was entered, otherwise just MELD.
if (sodium > 0) {
meldScoreElement.innerHTML = meldNa.toString();
} else {
meldScoreElement.innerHTML = meld.toString();
}
// Optionally, you could display both or prompt the user which they want.
// For simplicity here, we prioritize MELD-Na if sodium is present.
}