The Glucose Excretion Rate (GER) is a physiological measurement used to determine the total mass of glucose lost through the kidneys into the urine over a specific period. In healthy individuals, the kidneys reabsorb almost all filtered glucose, resulting in a GER of nearly zero. However, in conditions like diabetes mellitus or during the use of SGLT2 inhibitors, glucose "spills" into the urine.
The GER Formula
Calculating the glucose excretion rate requires two primary variables: the concentration of glucose in the urine and the rate at which urine is being produced. The formula is expressed as:
GER = [U_glucose] × V
Where:
GER: Glucose Excretion Rate (typically in mg/min).
Measure Urine Flow (V): Determine the volume of urine produced over a set time (e.g., 24 hours) and convert it to mL per minute. (Example: 1440 mL in 24 hours = 1 mL/min).
Measure Glucose Concentration: Perform a urinalysis to find the glucose concentration in mg/dL.
Apply the Math: Multiply the concentration by the flow rate. Note: Since mg/dL is "per 100 mL", ensure your units align.
Example Calculation
Suppose a patient has a urinary glucose concentration of 1,000 mg/dL and a urine flow rate of 2 mL/min.
First, convert mg/dL to mg/mL: 1,000 mg / 100 mL = 10 mg/mL.
The renal threshold for glucose (RTg) is typically around 180 mg/dL of blood glucose. When blood sugar exceeds this level, the SGLT transporters in the proximal tubule become saturated, and the GER increases significantly. Measuring GER is vital for clinical trials evaluating the efficacy of diabetic medications and assessing renal function handling of carbohydrates.
function calculateGER() {
var uGlucose = document.getElementById('urineGlucose').value;
var uFlow = document.getElementById('urineFlow').value;
var resultBox = document.getElementById('gerResultBox');
var output = document.getElementById('gerOutput');
var hourly = document.getElementById('gerHourly');
if (uGlucose === "" || uFlow === "" || uGlucose < 0 || uFlow < 0) {
alert("Please enter valid positive numbers for both fields.");
return;
}
var glucose = parseFloat(uGlucose);
var flow = parseFloat(uFlow);
// Calculation: (mg/dL / 100) * mL/min = mg/min
// Because dL is 100mL
var gerMin = (glucose / 100) * flow;
var gerHour = gerMin * 60;
output.innerHTML = gerMin.toLocaleString(undefined, {minimumFractionDigits: 2, maximumFractionDigits: 2});
hourly.innerHTML = gerHour.toLocaleString(undefined, {minimumFractionDigits: 2, maximumFractionDigits: 2});
resultBox.style.display = "block";
}