The Fracture Risk Assessment Tool (FRAX) is a validated diagnostic tool used to estimate the 10-year probability of bone fractures in patients. Developed by the World Health Organization (WHO), it integrates clinical risk factors with or without bone mineral density (BMD) at the femoral neck.
Why Calculating FRAX is Important
Osteoporosis is often a silent disease until a fracture occurs. By using a FRAX calculation, healthcare providers can identify individuals who are at high risk of fracture but may not yet meet the bone density criteria for osteoporosis. This allows for proactive intervention and treatment.
How to Interpret Your FRAX Results
The results provide two specific percentages:
Major Osteoporotic Fracture: Includes clinical spine, forearm, hip, or proximal humerus fractures. Generally, a risk >20% is considered a threshold for treatment.
Hip Fracture: Specifically looks at hip risk. A 10-year probability of >3% is often used as a pharmacological intervention threshold in the United States.
Key Risk Factors in the Calculation
The algorithm weighs several factors differently:
Age: Risk increases exponentially with age.
BMI: Lower body mass index (BMI) typically increases the risk of fracture.
Prior Fracture: A previous fragility fracture significantly increases the likelihood of future events.
Glucocorticoids: Long-term use of steroids like Prednisone can weaken bone structure.
T-Score: While the tool can work without it, adding your DEXA scan T-score provides a much more accurate assessment.
Disclaimer: This calculator is an estimation tool based on clinical weighting and for educational purposes only. It does not replace professional medical advice from the official FRAX tool or a licensed physician.
function calculateFraxRisk() {
var age = parseFloat(document.getElementById("age").value);
var sex = document.getElementById("sex").value;
var weight = parseFloat(document.getElementById("weight").value);
var height = parseFloat(document.getElementById("height").value);
var tscoreInput = document.getElementById("tscore").value;
// Risk Factor Booleans
var prevFracture = document.getElementById("prevFracture").checked;
var parentHip = document.getElementById("parentHip").checked;
var smoking = document.getElementById("currentSmoking").checked;
var steroids = document.getElementById("glucocorticoids").checked;
var arthritis = document.getElementById("rheumatoid").checked;
var secondary = document.getElementById("secOsteo").checked;
var alcohol = document.getElementById("alcohol").checked;
if (isNaN(age) || age 90) {
alert("Please enter an age between 40 and 90.");
return;
}
// Baseline risk model (Approximation of FRAX hazard function)
var baseMajor = 0.5;
var baseHip = 0.1;
// Age Weighting
var ageFactor = Math.pow(1.07, (age – 40));
baseMajor *= ageFactor;
baseHip *= Math.pow(1.09, (age – 40));
// Sex adjustment
if (sex === "female") {
baseMajor *= 1.8;
baseHip *= 1.4;
}
// BMI Adjustment
var bmi = weight / ((height / 100) * (height / 100));
if (bmi 30) {
baseMajor *= 0.8;
baseHip *= 0.6;
}
// Clinical Risk Factor Multipliers
if (prevFracture) { baseMajor *= 1.9; baseHip *= 1.9; }
if (parentHip) { baseMajor *= 1.5; baseHip *= 2.3; }
if (smoking) { baseMajor *= 1.4; baseHip *= 1.5; }
if (steroids) { baseMajor *= 1.8; baseHip *= 2.1; }
if (arthritis) { baseMajor *= 1.4; baseHip *= 1.3; }
if (secondary) { baseMajor *= 1.2; baseHip *= 1.1; }
if (alcohol) { baseMajor *= 1.4; baseHip *= 1.4; }
// BMD (T-Score) Adjustment
if (tscoreInput !== "") {
var ts = parseFloat(tscoreInput);
var tFactorMajor = Math.pow(1.5, -ts);
var tFactorHip = Math.pow(2.2, -ts);
baseMajor *= (tFactorMajor * 0.5);
baseHip *= (tFactorHip * 0.4);
}
// Cap at 100% and round
var finalMajor = Math.min(Math.round(baseMajor * 10) / 10, 99);
var finalHip = Math.min(Math.round(baseHip * 10) / 10, 99);
// Display
document.getElementById("fraxResults").style.display = "block";
document.getElementById("majorProb").innerText = finalMajor + "%";
document.getElementById("hipProb").innerText = finalHip + "%";
// Interpretation logic
var interpretation = "";
if (finalMajor >= 20 || finalHip >= 3) {
interpretation = "High Risk Assessment: Your calculated probability meets or exceeds the common clinical thresholds for treatment consideration (20% Major / 3% Hip). Please consult a bone health specialist.";
} else if (finalMajor >= 10 || finalHip >= 1) {
interpretation = "Moderate Risk Assessment: You fall into a category where lifestyle modifications and regular monitoring are typically advised.";
} else {
interpretation = "Lower Risk Assessment: Your 10-year probability is currently below most intervention thresholds. Maintain a healthy calcium and Vitamin D intake.";
}
document.getElementById("interpretation").innerHTML = interpretation;
// Scroll to results
document.getElementById("fraxResults").scrollIntoView({ behavior: 'smooth', block: 'nearest' });
}