Baud Rate Calculator
Calculate the baud rate (symbol rate) for any digital communication link. Choose your mode: convert a bit rate using a modulation scheme, derive the baud rate from ASK or FSK bandwidth, or convert between baud and frequency. The result panel shows the step-by-step working, a modulation comparison chart, and a standard baud-rate reference table.
Formula
Worked example
A 115,200 bps UART link using binary (NRZ) encoding: 115,200 / 1 = 115,200 baud. Symbol period = 1/115,200 = 8.68 us. Nyquist bandwidth = 57,600 Hz. Switching to 16-QAM (4 bits/symbol) at the same baud rate would yield 460,800 bps on an RF link.
What is baud rate and how does it differ from bit rate?
Baud rate is the number of symbol changes transmitted per second on a communication channel, measured in baud (symbol/s). A symbol is a distinct signal state - a voltage level, phase, or amplitude - that the receiving end must distinguish. Bit rate (measured in bps) is the number of information bits transferred per second. The two are equal only when each symbol carries exactly one bit, as in simple binary (two-level) signalling. When a modulation scheme packs more bits into each symbol - QPSK carries 2, 16-QAM carries 4, 256-QAM carries 8 - the bit rate becomes a multiple of the baud rate. For UART and RS-232 serial links the modulation is always binary, so "baud rate" and "bit rate" are used interchangeably in practice, but they are not the same concept.
Formulas: bit rate, ASK bandwidth and FSK bandwidth
The three standard baud-rate formulas are: (1) Basic conversion: Baud = Bit rate / Bits per symbol. This applies to any modulation scheme where you know the bit rate and the constellation size. (2) ASK: Baud = B_ASK / (1 + mf), where B_ASK is the channel bandwidth occupied by the amplitude-shift-keying signal and mf is the modulation factor (0 to 1). A fully modulated ASK signal (mf = 1) produces a baud rate equal to half its bandwidth. (3) FSK: Baud = (B_FSK - 2*delta_f) / (1 + mf), where B_FSK is the total bandwidth and delta_f is the frequency deviation between the mark and space carriers. The Nyquist minimum bandwidth for any channel is half the baud rate: BW_min = Baud / 2.
Common baud rates in serial communications
Standard serial interfaces - UART, RS-232, RS-485, SPI, and many wireless modules - use a fixed list of baud rates: 110, 300, 1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200, 230400, 460800 and 921600. These values descend from early telephone modem standards and divide cleanly into common crystal oscillator frequencies (e.g. 11.0592 MHz or 7.3728 MHz). The most widely used default for modern microcontrollers (Arduino, STM32, ESP32) is 115200 baud with 8N1 framing: 8 data bits, no parity, 1 stop bit, giving a frame of 10 bits and a useful throughput of 11,520 bytes per second.
Choosing the right baud rate for your application
Higher baud rates move data faster but require a cleaner signal path, tighter clock tolerances, and shorter cable runs. RS-232 is typically limited to 115200 baud at distances over a few metres; RS-485 can reach 10 Mbaud on short links. For microcontroller UART, the baud-rate divisor must be an integer (or close to one), so the actual rate may differ slightly from the nominal value - always check the error percentage in your data sheet. For RF links and cable TV, higher-order QAM (64-QAM, 256-QAM, 1024-QAM) multiplies bit rate without increasing baud rate, preserving channel bandwidth at the cost of requiring higher signal-to-noise ratio.
Standard baud rates and typical applications
| Baud rate | Symbol period | Typical use |
|---|---|---|
| 110 | 9090.9 us | Early teletype / TTY |
| 300 | 3333.3 us | Early dial-up modem |
| 1,200 | 833.3 us | Dial-up modem, older serial |
| 2,400 | 416.7 us | Serial protocols, GSM control |
| 4,800 | 208.3 us | GPS NMEA 0183, some MIDI |
| 9,600 | 104.2 us | Default Arduino / most microcontrollers |
| 19,200 | 52.1 us | Serial printer, MODBUS RTU |
| 38,400 | 26.0 us | Bluetooth SPP, serial console |
| 57,600 | 17.4 us | High-speed Arduino, debug UART |
| 115,200 | 8.7 us | Standard high-speed UART |
| 230,400 | 4.3 us | Fast UART (Linux ttyS default max) |
| 460,800 | 2.2 us | USB-serial adapters (CP2102) |
| 921,600 | 1.1 us | USB-serial adapters (FTDI) |
Commonly used baud rates in serial communications, with symbol period and typical use.
Frequently asked questions
Is baud rate the same as bit rate?
Only when each symbol carries exactly one bit - which is the case for all basic UART/RS-232 serial links using binary (NRZ) encoding. For any multi-level modulation (QPSK, 16-QAM, 256-QAM), bit rate = baud rate x bits per symbol, so a 10,000-baud 16-QAM channel delivers 40,000 bps. Confusion between the two terms comes from the UART world where they are numerically equal, but they are distinct quantities.
What is a good baud rate for Arduino or ESP32?
115200 baud is the standard choice for Serial.begin() on modern boards. It keeps the error percentage under 0.2% with typical oscillators and is supported by virtually all USB-serial adapters and terminal programs. For debugging at lower power, 9600 baud also works well. Avoid non-standard values unless your hardware data sheet explicitly supports them, since the UART clock divider may not produce the exact rate you specify.
What is the Nyquist bandwidth?
The Nyquist bandwidth is the minimum channel bandwidth needed to transmit a given baud rate without inter-symbol interference, equal to baud rate / 2. A channel of 57,600 Hz can theoretically support 115,200 baud. In practice, real channels need some guard band, so the usable baud rate is usually somewhat less than 2 x actual bandwidth.
How does modulation factor affect ASK baud rate?
In amplitude shift keying, the modulation factor (mf) describes how deeply the carrier amplitude is varied. A fully modulated ASK signal (mf = 1) requires a bandwidth of B_ASK = Baud x (1 + 1) = 2 x Baud. A partial modulation of mf = 0.5 needs B_ASK = Baud x 1.5. Re-arranging: Baud = B_ASK / (1 + mf). So the higher the modulation factor, the more bandwidth is consumed for a given baud rate.
What is serial framing efficiency and how does it affect throughput?
UART serial frames wrap each byte in start/stop (and optionally parity) bits. The common 8N1 frame (8 data, no parity, 1 stop) transmits 10 bits per byte, giving 80% efficiency. At 115200 baud that is 11,520 bytes/s, not 14,400. The 8N2 frame (2 stop bits) drops to 73% efficiency. Higher baud rates with 8N1 remain the most efficient choice for raw throughput.