Viscosity Converter
Convert dynamic and kinematic viscosity units — Pa·s, cP, Poise, cSt, m²/s and more.
| Unit | Converted Value |
|---|---|
| Pascal-second (Pa·s) | 0.001 |
| Millipascal-second (mPa·s = cP) | 1 |
| Micropascal-second (μPa·s) | 1000 |
| Centipoise (cP = mPa·s) | 1 |
| Poise (P) | 0.01 |
| kgf·s/m² | 1.0197e-4 |
| lbf·s/ft² (slug/ft·s) | 2.0885e-5 |
Reference values:
| Substance | Dynamic | Kinematic |
|---|---|---|
| Air (20°C) | 0.018 mPa·s | 15.1 mm²/s |
| Water (20°C) | 1.002 mPa·s | 1.004 mm²/s |
| Milk | ~3 mPa·s | ~3 mm²/s |
| Blood | ~3–4 mPa·s | ~3–4 mm²/s |
| Olive oil | ~80 mPa·s | ~80 mm²/s |
| Motor oil (SAE 30) | ~90–120 mPa·s | ~100 mm²/s |
| Honey | ~10,000 mPa·s | ~10,000 mm²/s |
About this tool
Viscosity is a fundamental fluid property that describes how much a liquid resists flowing. Whether you're an engineer designing hydraulic systems, a chemist formulating lubricants, or a food scientist optimizing product consistency, understanding viscosity across different measurement units is essential. This converter makes it easy to translate between dynamic viscosity units (like pascal-seconds and poise) and kinematic viscosity units (like stokes and centistokes), removing the friction from unit conversions.
Simply select your starting unit and target unit, enter your value, and the converter instantly displays the result. Whether you're working with SI units like pascal-seconds (Pa·s) or traditional units like centipoise (cP) used in petroleum and cosmetics industries, this tool handles all the calculations automatically. The converter supports both dynamic viscosity (measured in Pa·s, cP, Poise, P) and kinematic viscosity (measured in m²/s, cSt, St), so you can work flexibly across different domains and standards.
Frequently Asked Questions
Code Implementation
# Viscosity unit conversions (base: Pa·s for dynamic, m²/s for kinematic)
DYNAMIC_FACTORS = {
"Pa·s": 1,
"mPa·s": 1e-3, # = cP
"cP": 1e-3,
"μPa·s": 1e-6,
"P": 0.1, # Poise
"kgf·s/m²": 9.80665,
"lbf·s/ft²": 47.880259,
}
KINEMATIC_FACTORS = {
"m²/s": 1,
"cm²/s": 1e-4, # = St (Stokes)
"mm²/s": 1e-6, # = cSt
"cSt": 1e-6,
"ft²/s": 9.2903e-2,
}
def convert_dynamic(value, from_unit, to_unit):
base = value * DYNAMIC_FACTORS[from_unit]
return base / DYNAMIC_FACTORS[to_unit]
def convert_kinematic(value, from_unit, to_unit):
base = value * KINEMATIC_FACTORS[from_unit]
return base / KINEMATIC_FACTORS[to_unit]
def kinematic_to_dynamic(kinematic_cSt, density_g_cm3):
"""cSt × density (g/cm³) = cP"""
return kinematic_cSt * density_g_cm3
# Examples
print(f"1 cP = {convert_dynamic(1, 'cP', 'Pa·s'):.4f} Pa·s")
print(f"1000 cP = {convert_dynamic(1000, 'cP', 'Pa·s'):.2f} Pa·s")
print(f"Water: 1 cSt = {convert_kinematic(1, 'cSt', 'm²/s'):.2e} m²/s")
# Water at 20°C: density ≈ 0.998 g/cm³, kinematic ≈ 1.004 cSt
print(f"Water dynamic: {kinematic_to_dynamic(1.004, 0.998):.3f} cP")Comments & Feedback
Comments are powered by Giscus. Sign in with GitHub to leave a comment.