Three countries use Fahrenheit for everyday temperatures: the United States, Liberia, and Myanmar. The rest of the world uses Celsius. And scientists everywhere use Kelvin. Here's why, and how to convert between them.
The Three Scales
Celsius (°C)
The metric system's temperature scale, based on water:
- 0°C: Water freezes
- 100°C: Water boils (at sea level)
- Also known as Centigrade (100 degrees between freezing and boiling)
Fahrenheit (°F)
The traditional US scale with a less intuitive origin:
- 32°F: Water freezes
- 212°F: Water boils
- Originally based on the coldest temperature Fahrenheit could achieve (0°F) and human body temperature (96°F, later refined to 98.6°F)
Kelvin (K)
The absolute scale for science:
- 0 K: Absolute zero (coldest possible temperature)
- 273.15 K: Water freezes
- 373.15 K: Water boils
- Note: No degree symbol—it's just "K", not "°K"
Conversion Formulas
Celsius ↔ Fahrenheit
// Celsius to Fahrenheit
const cToF = (c) => (c * 9/5) + 32;
// Fahrenheit to Celsius
const fToC = (f) => (f - 32) * 5/9;
The formula explained:
- Fahrenheit has 180 degrees between freezing (32) and boiling (212)
- Celsius has 100 degrees in the same range
- Ratio: 180/100 = 9/5
- Offset: 32°F = 0°C
Celsius ↔ Kelvin
// Celsius to Kelvin
const cToK = (c) => c + 273.15;
// Kelvin to Celsius
const kToC = (k) => k - 273.15;
Simple offset—same scale size, different zero point.
Fahrenheit ↔ Kelvin
// Fahrenheit to Kelvin
const fToK = (f) => (f - 32) * 5/9 + 273.15;
// Kelvin to Fahrenheit
const kToF = (k) => (k - 273.15) * 9/5 + 32;
Just combine the two conversions.
Quick Reference Table
| Description | °C | °F | K |
|---|---|---|---|
| Absolute zero | -273.15 | -459.67 | 0 |
| Coldest on Earth (recorded) | -89.2 | -128.6 | 184 |
| Water freezes | 0 | 32 | 273.15 |
| Cold day | 10 | 50 | 283.15 |
| Room temperature | 20-22 | 68-72 | 293-295 |
| Warm day | 25 | 77 | 298.15 |
| Body temperature | 37 | 98.6 | 310.15 |
| Hot day | 38 | 100 | 311.15 |
| Hottest on Earth (recorded) | 56.7 | 134 | 329.85 |
| Water boils | 100 | 212 | 373.15 |
Where They Meet
There's one temperature where Celsius and Fahrenheit show the same number:
x = (x × 9/5) + 32
x = 1.8x + 32
-0.8x = 32
x = -40
Answer: -40°C = -40°F
This is a useful fact to remember—at -40, both scales agree!
Mental Math Shortcuts
Celsius to Fahrenheit (approximate)
Double and add 30:
15°C → 15 × 2 + 30 = 60°F (actual: 59°F)
20°C → 20 × 2 + 30 = 70°F (actual: 68°F)
25°C → 25 × 2 + 30 = 80°F (actual: 77°F)
30°C → 30 × 2 + 30 = 90°F (actual: 86°F)
Works reasonably well for common weather temperatures.
Fahrenheit to Celsius (approximate)
Subtract 30, then halve:
68°F → (68 - 30) / 2 = 19°C (actual: 20°C)
86°F → (86 - 30) / 2 = 28°C (actual: 30°C)
50°F → (50 - 30) / 2 = 10°C (actual: 10°C)
Quick Landmarks
Memorize these anchor points:
- 0°C = 32°F (freezing)
- 10°C = 50°F (cool)
- 20°C = 68°F (room temp)
- 30°C = 86°F (warm)
- 40°C = 104°F (very hot)
- 100°C = 212°F (boiling)
Each 10°C ≈ 18°F
Why These Numbers?
The Origin of Fahrenheit
Daniel Gabriel Fahrenheit (1724) based his scale on:
- 0°F: A brine solution (water, ice, and salt)—the coldest he could reliably produce
- 96°F: Human body temperature (he was slightly off)
- 32°F and 212°F: Water's freezing and boiling points emerged from this scale
The seemingly random numbers make more sense knowing this history.
The Origin of Celsius
Anders Celsius (1742) designed a more logical scale:
- 0: Water freezes
- 100: Water boils
- Originally inverted (100 = freezing, 0 = boiling), later flipped
The Origin of Kelvin
Lord Kelvin (1848) created an absolute scale:
- 0 K: Absolute zero—where molecular motion stops
- Based on thermodynamic principles
- Each kelvin equals one Celsius degree
- Used in science because negative temperatures become unnecessary
When to Use Each Scale
Celsius
- ✅ Weather forecasts (most countries)
- ✅ Cooking (most recipes worldwide)
- ✅ Science (along with Kelvin)
- ✅ International communication
Fahrenheit
- ✅ Weather in the US
- ✅ Cooking (US recipes)
- ✅ Some argue it's better for weather because:
- 0-100°F roughly spans human-comfortable outdoor temperatures
- More granularity without decimals
Kelvin
- ✅ Scientific calculations
- ✅ Thermodynamics
- ✅ Astrophysics (color temperature of stars)
- ✅ When ratios matter (double kelvin = double thermal energy)
- ❌ Never for everyday use
Programming Examples
Complete Temperature Converter
const Temperature = {
// Celsius conversions
celsiusToFahrenheit: (c) => (c * 9/5) + 32,
celsiusToKelvin: (c) => c + 273.15,
// Fahrenheit conversions
fahrenheitToCelsius: (f) => (f - 32) * 5/9,
fahrenheitToKelvin: (f) => (f - 32) * 5/9 + 273.15,
// Kelvin conversions
kelvinToCelsius: (k) => k - 273.15,
kelvinToFahrenheit: (k) => (k - 273.15) * 9/5 + 32,
// Format with unit
format: (value, unit, decimals = 1) => {
return `${value.toFixed(decimals)}°${unit}`;
}
};
// Usage
console.log(Temperature.celsiusToFahrenheit(20)); // 68
console.log(Temperature.format(68, 'F')); // "68.0°F"
Python Version
class Temperature:
@staticmethod
def c_to_f(celsius):
return (celsius * 9/5) + 32
@staticmethod
def f_to_c(fahrenheit):
return (fahrenheit - 32) * 5/9
@staticmethod
def c_to_k(celsius):
return celsius + 273.15
@staticmethod
def k_to_c(kelvin):
return kelvin - 273.15
@staticmethod
def f_to_k(fahrenheit):
return (fahrenheit - 32) * 5/9 + 273.15
@staticmethod
def k_to_f(kelvin):
return (kelvin - 273.15) * 9/5 + 32
# Usage
print(Temperature.c_to_f(20)) # 68.0
C# Version
public static class Temperature
{
public static double CelsiusToFahrenheit(double c) => (c * 9.0 / 5.0) + 32;
public static double FahrenheitToCelsius(double f) => (f - 32) * 5.0 / 9.0;
public static double CelsiusToKelvin(double c) => c + 273.15;
public static double KelvinToCelsius(double k) => k - 273.15;
}
Interesting Temperature Facts
- Coldest temperature in the universe: About 1 K (in labs, even colder: nanokelvins)
- Hottest temperature ever achieved: ~5.5 trillion K (in particle accelerators)
- Surface of the Sun: ~5,778 K (5,505°C / 9,941°F)
- Human survival range: Roughly -40°C to 60°C with proper conditions
- Comfortable indoor range: 20-22°C (68-72°F)
Summary
| Scale | Zero Point | Boiling Point | Best For |
|---|---|---|---|
| Celsius | Water freezes | 100°C | Everyday (world) |
| Fahrenheit | Salt/ice bath | 212°F | Everyday (US) |
| Kelvin | Absolute zero | 373.15 K | Science |
Key Conversion: °F = (°C × 9/5) + 32
Need to convert temperatures quickly? Try our Temperature Converter!