Skip to content

UART Baud Rate Calculator

Calculate UART frame duration, bytes per second throughput, and baud rate error percentage for common MCU clock speeds. Helps you pick the closest standard baud rate with acceptable error.

UART Baud Rate & Timing

Calculates the UBRR register value for AVR microcontrollers (Arduino, ATtiny, etc.) to achieve accurate serial communication. Even small per-bit timing errors accumulate across the frame, so staying under 1% error is critical for reliable data transmission. Use Normal mode for most applications; U2X mode doubles the divisor, giving you more precision at higher baud rates.

UART frame sample-point driftstartd0d1d2d3d4d5d6d7stop

Dashed line = ideal sample point per bit · dot = actual sample point with this UBRR value

U2X halves the oversampling divisor — often gets a lower error at low clock speeds.

Baud rate error

-3.55%

UBRR value
8
Actual baud
111,111
Clock used
16 MHz

Try a different clock speed or the nearest standard baud rate.

UBRR = round(F_CPU / (16 × baud) − 1) · actual baud = F_CPU / (16 × (UBRR + 1))

More MCUs