Skip to content
🛠️ToolsShed

Blood Pressure Checker

Enter your blood pressure reading and see which category it falls into.

CategorySystolicDiastolic
Normal< 120< 80
Elevated120–129< 80
High Blood Pressure Stage 1130–13980–89
High Blood Pressure Stage 2140–17990–119
Hypertensive Crisis≥ 180≥ 120

About this tool

Blood pressure is the force exerted by blood against artery walls, measured in two numbers: systolic (pressure when the heart beats) over diastolic (pressure when the heart rests). Understanding whether your reading falls into the normal, elevated, or high blood pressure categories is important for cardiovascular health monitoring. High blood pressure (hypertension) is often called the silent killer because it usually has no symptoms, yet it significantly increases the risk of heart attack, stroke, and kidney damage.

To use this checker, enter your systolic and diastolic readings in mmHg (millimeters of mercury). The tool instantly categorizes your blood pressure according to the American Heart Association (AHA) guidelines: normal (less than 120/80), elevated (120-129 and less than 80), high blood pressure stage 1 (130-139 or 80-89), high blood pressure stage 2 (140 or higher or 90 or higher), and hypertensive crisis (higher than 180/120). This helps you quickly assess whether your reading suggests a need for lifestyle changes or medical attention.

A single reading provides a snapshot, but blood pressure naturally fluctuates throughout the day. For a more accurate picture, take readings at the same time each day, when you're relaxed and have not had caffeine within 30 minutes. Many people find their pressure is highest in the morning or when stressed. If you consistently see elevated readings, consult a healthcare provider—some people with hypertension feel fine and discover it only through regular monitoring. Lifestyle factors like diet, exercise, stress management, and sleep play major roles in controlling blood pressure.

Frequently Asked Questions

Code Implementation

def classify_blood_pressure(systolic: int, diastolic: int) -> dict:
    """
    Classify blood pressure using AHA 2017 guidelines.
    Returns category, description and recommendation.
    """
    if systolic > 180 or diastolic > 120:
        category = "Hypertensive Crisis"
        recommendation = "Seek emergency care immediately if symptomatic."
    elif systolic >= 140 or diastolic >= 90:
        category = "High Blood Pressure Stage 2"
        recommendation = "Consult a doctor. Lifestyle changes + medication likely needed."
    elif systolic >= 130 or diastolic >= 80:
        category = "High Blood Pressure Stage 1"
        recommendation = "Consult a doctor. Lifestyle changes recommended."
    elif systolic >= 120 and diastolic < 80:
        category = "Elevated"
        recommendation = "Monitor regularly. Healthy lifestyle changes advised."
    else:
        category = "Normal"
        recommendation = "Maintain healthy habits."

    return {
        "systolic": systolic,
        "diastolic": diastolic,
        "category": category,
        "recommendation": recommendation,
    }

# Test cases
readings = [
    (115, 75),   # Normal
    (125, 78),   # Elevated
    (135, 85),   # Stage 1
    (145, 95),   # Stage 2
    (185, 125),  # Crisis
]

for sys, dia in readings:
    result = classify_blood_pressure(sys, dia)
    print(f"{sys}/{dia} mmHg — {result['category']}")
    print(f"  → {result['recommendation']}")

Comments & Feedback

Comments are powered by Giscus. Sign in with GitHub to leave a comment.