The Albumin Excretion Rate (AER) is a critical diagnostic measurement used to assess kidney function. It calculates the amount of albumin (a type of protein) released into the urine over a specific period, typically 24 hours. Elevated levels of albumin in the urine are often the earliest sign of kidney disease, particularly in patients with diabetes or hypertension.
How is AER Calculated?
This calculator determines the excretion rate based on the concentration of albumin in the urine, the total volume of urine collected, and the duration of the collection. The formulas used are:
Total Albumin (mg) = (Concentration [mg/L] × Volume [mL]) ÷ 1000
AER (mg/24h) = (Total Albumin [mg] ÷ Time [hours]) × 24
Clinical guidelines generally classify albumin excretion into three categories:
Category
24-Hour Collection (mg/24h)
Timed Collection (µg/min)
Clinical Significance
Normoalbuminuria
< 30
< 20
Normal kidney function regarding protein excretion.
Microalbuminuria
30 – 300
20 – 200
Early sign of kidney damage; often reversible with treatment.
Macroalbuminuria
> 300
> 200
Indicates overt nephropathy and higher risk of kidney failure.
Why is this important?
Monitoring AER is vital for early detection of diabetic nephropathy and cardiovascular risk. Regular screening allows healthcare providers to intervene early with medications (such as ACE inhibitors or ARBs) and lifestyle changes to preserve kidney function.
Note: This tool is for educational purposes. A diagnosis of kidney disease typically requires multiple positive tests over a period of 3 to 6 months. Always consult a healthcare professional for interpretation of lab results.
function calculateAER() {
// 1. Get input values
var albConc = document.getElementById("urineAlbumin").value;
var volume = document.getElementById("urineVolume").value;
var time = document.getElementById("collectionTime").value;
// 2. Validate inputs
if (albConc === "" || volume === "" || time === "" || isNaN(albConc) || isNaN(volume) || isNaN(time)) {
alert("Please enter valid numeric values for all fields.");
return;
}
// Convert strings to floats
albConc = parseFloat(albConc);
volume = parseFloat(volume);
time = parseFloat(time);
if (time <= 0) {
alert("Collection time must be greater than 0.");
return;
}
// 3. Calculation Logic
// Step A: Calculate Total Albumin excreted in the collection period (in mg)
// Formula: (mg/L * mL) / 1000 = mg
var totalAlbuminMg = (albConc * volume) / 1000;
// Step B: Calculate AER normalized to 24 hours (mg/24h)
var aer24h = (totalAlbuminMg / time) * 24;
// Step C: Calculate AER in micrograms per minute (µg/min)
// Convert total mg to µg (x1000), then divide by total minutes (hours * 60)
var aerUgMin = (totalAlbuminMg * 1000) / (time * 60);
// 4. Update UI with Results
document.getElementById("resMg24").innerHTML = aer24h.toFixed(2) + " mg/24h";
document.getElementById("resUgMin").innerHTML = aerUgMin.toFixed(2) + " µg/min";
// 5. Determine Clinical Status
var statusBox = document.getElementById("statusBox");
var statusText = "";
// Reset classes
statusBox.className = "status-box";
// Using mg/24h thresholds standard: 300 (Macro)
if (aer24h = 30 && aer24h <= 300) {
statusText = "Category: Microalbuminuria (Moderately Increased)";
statusBox.classList.add("status-micro");
} else {
statusText = "Category: Macroalbuminuria (Severely Increased)";
statusBox.classList.add("status-macro");
}
statusBox.innerHTML = statusText;
// Show result section
document.getElementById("resultSection").style.display = "block";
}