🎚️

Volume Percentage Calculator

A volume slider's "50%" doesn't mean half as loud. Compare three common volume curves — linear, squared (x²), and log dB — across the full 0–100% range. See the dB equivalent on each curve plus a rough perceived-loudness estimate.

Input

%
0 %50 %100 %
Current: 50 %
Common Slider Positions

Result

Decibels (selected curve)
dB
Amplitude factor
Power factor
Perceived loudness (≈)
Linear curve
Squared (x²)
Log dB (−60 dB floor)
Formulas
Linear: dB = 20·log₁₀(pct / 100)
Squared (x²): dB = 40·log₁₀(pct / 100)
Log dB: dB = −60 × (1 − pct / 100) — floor at 0% set to −60 dB
Perceived loudness ≈ 2^(dB / 10) × 100 % (Stevens-style approximation)
Volume % → dB across all three curves
Linear Squared (x²) Log dB Y-axis clamped to −60 dB; result cards show un-clamped values.

About Volume Curves & Perceived Loudness

A volume slider is not a percentage of loudness — it's a position on a curve that maps the slider knob to actual gain. Different devices and apps pick different curves, which is why "50% volume" on one device sounds very different from "50% volume" on another. The three curves on this page cover the most common cases.

Linear curve — rare in audio, common in tutorials

Maps slider position directly to amplitude: gain = pct / 100. So 50% = 0.5× the signal, which is −6 dB. Sounds "almost as loud" because amplitude has been halved but human loudness perception is logarithmic — a true "half as loud" requires roughly a 10 dB drop. Linear curves feel like the slider is "too top-heavy" — most of the audible range is crammed into the bottom 10%.

Squared (x²) curve — common in OS sliders

Maps slider to amplitude squared: gain = (pct / 100)². So 50% = 0.25× amplitude = −12 dB. This is closer to a perceptual taper but still front-loaded. Many consumer devices (older Android, some embedded systems) use this or its cousin x³ (cubed) because the math is cheap and the result is "good enough" without a true log lookup.

Log dB curve — the audio engineer's choice

Linear in dB: dB = floor × (1 − pct/100), with a chosen floor like −60 dB. So 50% = −30 dB, 75% = −15 dB, 25% = −45 dB. Pro audio mixers, DAW faders, and Apple/Windows newer volume sliders use this taper because it makes the slider feel evenly graduated to the ear. The trade-off is that there's no true "silence" position — 0% maps to whatever floor was chosen (usually −60 to −80 dB).

Perceived loudness — the ear isn't a meter

The "doubling of perceived loudness ≈ +10 dB" rule of thumb comes from psychoacoustic experiments (Stevens, Fletcher-Munson, Zwicker). It means a 50% slider on a log-dB curve (−30 dB) sounds roughly 1/8 as loud as full volume, not 1/2. The perceived loudness column on this page uses 2^(dB / 10) as a quick approximation — accurate enough for ballpark intuition, not for clinical loudness measurements (which would use LUFS / sone scales).

Frequently Asked Questions

Why doesn't 50% volume sound half as loud?
Because the slider isn't a loudness percentage — it's a gain or dB position. And human loudness perception is logarithmic: roughly +10 dB = "twice as loud". For 50% to truly feel half as loud, the slider would need to map to −10 dB. On a linear curve, 50% = −6 dB (still ~66% as loud). On x², 50% = −12 dB (~44% as loud). On the log-dB curve, 50% = −30 dB (~12% as loud). None match "exactly half".
Which curve does my device use?
Hard to say without testing. Rough guide: Older Android / cheap speakers tend toward squared/cubed. iOS / modern macOS / Windows volume sliders use log-dB tapers. DAWs and pro audio always use log-dB faders. YouTube / web video players historically used linear, though many have moved to log. The best test: drop the slider from 100% to 50% — if it sounds "barely quieter" → linear; if it sounds "moderately quieter" → squared; if it sounds "much quieter" → log-dB.
What's the difference between amplitude factor and power factor?
Amplitude is the signal's voltage or sample value; power is amplitude squared. The dB scale uses ÷20 for amplitude and ÷10 for power. So at −6 dB amplitude factor = 0.5 (half), power factor = 0.25 (quarter). At −10 dB amplitude = 0.316, power = 0.1. This page's main dB value uses the amplitude convention (÷20) because that's what audio gain stages actually do — speakers and DACs care about voltage amplitude.
Why is the log-dB curve floor −60 dB and not −∞?
−∞ dB is mathematically silence (gain = 0), but a "0% maps to −∞" curve has a problem: the slider gets infinitely sensitive near the bottom. So real devices clamp the floor at something audible-but-very-quiet — usually −60 dB (one thousandth amplitude) or −80 dB. Below the floor, the device just outputs digital silence. If you want true silence, that's what the mute button is for.
How accurate is the perceived loudness estimate?
It's a rough rule of thumb, accurate to within a factor of 2 for normal music levels (60–90 dB SPL). The full picture uses equal-loudness contours (ISO 226) which vary with frequency, level, and listener. For clinical work, use LUFS (loudness units relative to full scale) or sone. For "is this slider position quiet, loud, or extremely loud?", the 2^(dB/10) approximation is fine.
Can I implement these curves in code?
Yes — they're all one-liners:
linear : gain = pct / 100
squared : gain = (pct / 100) ** 2
log dB : gain = 10 ** (floor * (1 - pct/100) / 20)
For Web Audio, set gainNode.gain.value = gain. For an integer DSP system, multiply your sample by gain (and watch for clipping/quantization).