ADC Resolution Calculator — LSB, SNR and effective bits

Step size, ENOB, quantisation noise and SNR for a given ADC bit depth and reference voltage.

Example: A 12-bit ADC with a 3.3 V reference resolves 805.7 µV per step across 4,096 codes, for an ideal SNR of 74 dB.

Check it against real silicon

Chiprun runs your firmware on an emulated microcontroller and hands back the UART output, so you can confirm these numbers rather than trusting them.

Chiprun docs

Formula

LSB = V_ref / 2^N    SNR = 6.02N + 1.76 dB

Worked example

A 12-bit ADC with a 3.3 V reference resolves 805.7 µV per step across 4,096 codes, for an ideal SNR of 74 dB.

  1. LSB = V_ref / 2^N

    LSB = 3.3 V / 2^12

    LSB = 805.7 µV

    4,096 distinct codes across the range.

  2. SNR = 6.02N + 1.76 dB

    SNR = 6.02 × 12 + 1.76

    74 dB

    Each extra bit is worth about 6 dB — one more bit halves the step size.

Frequently asked questions

What is the LSB of a 12-bit ADC?

The reference voltage divided by 4096. With a 3.3 V reference that is about 806 µV per step. The LSB is the smallest voltage change the converter can distinguish, at least in principle.

Where does 6.02N + 1.76 dB come from?

Quantisation error is uniformly distributed across one LSB, giving an RMS of LSB/√12. Comparing a full-scale sine wave against that noise yields exactly 6.02N + 1.76 dB. It is why each additional bit is worth about 6 dB.

Why does my 12-bit ADC only give me 10 stable bits?

Noise. Thermal noise, reference noise, supply ripple and layout coupling all add to the signal, and the bottom bits end up random. That is what ENOB measures. Averaging N samples recovers about log₂(√N) bits — sixteen samples buys you two.

Does a better ADC give me a more accurate measurement?

Only up to the reference. Resolution and accuracy are different things: a 16-bit converter running from a reference with 1% error still gives you a 1% measurement, just expressed with more digits. Fix the reference before adding bits.

Related tools