NTC Thermistor Resistance Calculator: Formula & How to Use
- Temperature
- 25 °C
- You entered
- Resistance at 25°C
- 10000 Ω
- You entered
- B value (K)
- 3950 K
- You entered
- Reference temp
- 25 °C
- You entered
This calculator works out the resistance of an NTC (negative temperature coefficient) thermistor at a given temperature using the Steinhart-Hart equation, or the simpler B-parameter equation, depending on which you choose. You enter the thermistor’s reference resistance (usually at 25°C), its B value (or the three Steinhart-Hart coefficients), and the temperature you want to evaluate. The calculator returns the resistance in ohms, which is the value you would measure across the thermistor leads at that temperature.
Formula
The most common NTC thermistor model is the B-parameter equation:
R(T) = R₀ · exp( B · ( 1/(T) − 1/(T₀) ) )
- R(T) – resistance at the target temperature (Ω)
- R₀ – resistance at reference temperature T₀ (Ω)
- B – B value (or beta) of the thermistor, in kelvin (K)
- T – target absolute temperature in kelvin (K) = temperature in °C + 273.15
- T₀ – reference absolute temperature in kelvin (K), typically 298.15 K (25°C)
For higher accuracy over a wide temperature range, the Steinhart-Hart equation is used:
1/T = A + B·ln(R) + C·(ln(R))³
where A, B, C are coefficients specific to the thermistor, T is absolute temperature in kelvin, and R is resistance in ohms. This version is more precise but requires three coefficients, which are often provided in datasheets.
Worked Example
Using the default values from the calculator: R₀ = 10000 Ω at T₀ = 25°C, B = 3950 K, and target temperature T = 25°C.
- Convert temperatures to kelvin: T = 25 + 273.15 = 298.15 K, T₀ = 298.15 K.
- Compute the exponent: 1/298.15 − 1/298.15 = 0.
- Multiply by B: 3950 × 0 = 0.
- R = 10000 × e⁰ = 10000 Ω.
The result is 10000 Ω, which matches the reference resistance because the target temperature equals the reference temperature. For a target of 50°C, the exponent becomes 3950 × (1/323.15 − 1/298.15) ≈ −1.027, giving R ≈ 10000 × e⁻¹·⁰²⁷ ≈ 3580 Ω.
How an NTC Thermistor Works
An NTC thermistor is a resistor whose resistance decreases as temperature increases. It is made from metal oxides (such as manganese, nickel, or cobalt) that behave as semiconductors. The resistance change is large and nonlinear – often several percent per degree Celsius – which makes NTC thermistors very sensitive for temperature sensing. They are widely used in 3D printers, battery packs, automotive sensors, and household thermostats.
The B-parameter equation is a simplification that assumes a constant B value, but in reality B varies slightly with temperature. For most applications between 0°C and 100°C, the error is small (typically under 1°C). For wider ranges or higher precision, the Steinhart-Hart equation is preferred.
How to Choose the Right NTC Thermistor
Selecting an NTC thermistor involves several key specifications:
- Resistance at 25°C (R25) – common values are 10kΩ, 100kΩ, 1kΩ, and 2kΩ. Higher resistance draws less current and reduces self-heating, but may be more susceptible to noise.
- B value – typically between 3000 and 5000 K. A higher B means a steeper resistance-temperature curve, giving more sensitivity but also more nonlinearity.
- Tolerance – the accuracy of the resistance at a given temperature, often ±1% or ±5%.
- Thermal time constant – how quickly the thermistor responds to temperature changes. Smaller sensors respond faster.
- Dissipation constant – how much power the thermistor can handle without self-heating errors. It is usually given in mW/°C.
For a typical microcontroller project, a 10kΩ NTC with B=3950 is a common choice because it matches many libraries and examples. Always check the datasheet for the exact B value and reference temperature.
Common Mistakes and How to Avoid Them
- Using Celsius instead of kelvin – the B equation requires absolute temperature. Always add 273.15.
- Forgetting the reference temperature – R₀ is not always at 25°C; some thermistors use 0°C or 85°C. Use the datasheet value.
- Assuming linearity – the resistance change is exponential, so a linear approximation is only valid over a very narrow range.
- Ignoring self-heating – if the current through the thermistor is too high, it warms itself and reads a lower resistance. Keep current low (e.g., below 1 mA for a 10kΩ thermistor).
- Mixing up B and Steinhart-Hart coefficients – they are not interchangeable. Use the correct formula for the data you have.
Limitations of the B-Parameter Formula
The B-parameter equation is a two-point fit: it matches the resistance at T₀ and at T₀+B/2 (roughly). Between those points, the error is usually small, but outside that range it grows. For example, a 10kΩ NTC with B=3950 might have an error of several degrees at −40°C or +150°C. The Steinhart-Hart equation, with three coefficients, can fit the actual curve much more accurately over a wider range.
Also, the formula assumes the thermistor is at thermal equilibrium with its environment. In practice, response time and self-heating affect readings. For high-precision measurements, calibration against a known temperature source is recommended.
Alternatives to NTC Thermistors
- RTD (Resistance Temperature Detector) – uses platinum, more linear and stable, but more expensive and less sensitive.
- Thermocouple – works over a very wide temperature range, but requires cold-junction compensation and has lower sensitivity.
- Digital temperature sensors – such as the DS18B20, output a digital signal and are easier to interface, but are slower and have a narrower range.
- PTC thermistors – resistance increases with temperature; used for overcurrent protection, not usually for sensing.
Choose NTC when you need high sensitivity, small size, and low cost. Choose RTD for precision, thermocouple for extreme temperatures, and digital sensors for simplicity.
Frequently Asked Questions
What is the difference between B value and Steinhart-Hart coefficients?
The B value is a single number that approximates the temperature-resistance relationship over a limited range. Steinhart-Hart uses three coefficients (A, B, C) and provides a much more accurate fit over a wider temperature range. Use B if you only need rough accuracy; use Steinhart-Hart for precision.
Why does my NTC thermistor read 0 ohms or infinite?
If you measure 0 ohms, the thermistor may be shorted (faulty) or you are measuring at a very high temperature. If you read infinite (open circuit), the thermistor may be broken or the leads are not connected properly. Check the datasheet for the expected resistance at room temperature – a 10kΩ thermistor should read around 10kΩ at 25°C.
Can I use the B-parameter formula for any NTC thermistor?
Yes, but only if you know the B value and the reference resistance. Many datasheets provide these. If you only have a resistance-temperature table, you can fit the B value yourself using two points, but the accuracy will be limited.
How do I convert the resistance reading to temperature?
Rearrange the B equation: 1/T = 1/T₀ + (1/B)·ln(R/R₀). Then T (in kelvin) = 1 / [1/T₀ + (1/B)·ln(R/R₀)]. Subtract 273.15 to get °C. This calculator does that for you when you enter the resistance.
What is self-heating and why does it matter?
Self-heating occurs when the current through the thermistor dissipates power (P = I²R), raising its temperature above the ambient. This causes a lower resistance reading. To minimize it, keep the current low (e.g., below 1 mA) and use a thermistor with a higher dissipation constant.