BLE data throughput

This chapter gives an indication of achievable BLE connection throughput for GATT procedures used to send and receive data in stated SoftDevice configurations.

Maximum throughput will only be possible when the application reads data packets as they are received, and provides new data as packets are transmitted, without delay. The SoftDevice may transfer more packets than reserved by the bandwidth configuration when data transfer is simplex (read or write only), because extra time is available in the event to transfer data.

All data throughput values apply to packet transfers over an encrypted connection using maximum payload sizes.

Table 1. Maximum data throughput with a single Peripheral or Central connection and a connection interval of 7.5 ms
Protocol BW Config Method Maximum data throughput
GATT Client HIGH

Receive Notification

Send Write command

Send Write request

Simultaneous receive Notification and send Write command

149.2 kbps

149.2 kbps

10.6 kbps

127.9 kbps (each direction)

GATT Server HIGH

Send Notification

Receive Write command

Receive Write request

Simultaneous send Notification and receive Write command

149.2 kbps

149.2 kbps

10.6 kbps

127.9 kbps (each direction)

GATT Client MID

Receive Notification

Send Write command

Send Write request

Simultaneous receive Notification and send Write command

63.9 kbps

63.9 kbps

10.6 kbps

63.9 kbps (each direction)

GATT Server MID

Send Notification

Receive Write command

Receive Write request

Simultaneous send Notification and receive Write command

63.9 kbps

63.9 kbps

10.6 kbps

63.9 kbps (each direction)

GATT Client LOW

Receive Notification

Send Write command

Send Write request

Simultaneous receive Notification and send Write command

21.3 kbps

21.3 kbps

10.6 kbps

21.3 kbps (each direction)

GATT Server LOW

Send Notification

Receive Write command

Receive Write request

Simultaneous send Notification and receive Write command

21.3 kbps

21.3 kbps

10.6 kbps

21.3 kbps (each direction)

The following table Table 2 shows maximum data throughput at a connection interval of 17.5 ms that allows up to 8 LOW bandwidth concurrent connections per interval.

Only throughput for LOW bandwidth configuration is indicated. For higher bandwidth configurations, a longer connection interval would need to be used for each connection to prevent connection events from overlapping. See Scheduling for more information on how connections can be configured.

Throughput may get reduced if a peripheral link is running because peripheral links are not synchronized with central links. If a peripheral link is running, throughput may decrease to half for up to two central links and the peripheral link.

Table 2. Maximum data throughput for each connection, up to 8 connections
Protocol BW Config Method Maximum data throughput
GATT - Client LOW Receive Notification

9.1 kbps

Send Write command

9.1 kbps

Send Write request

4.6 kbps

Simultaneous receive Notification and send Write command

9.1 kbps (each direction)

GATT - Server LOW Send Notification

9.1 kbps

Receive Write command

9.1 kbps

Receive Write request

4.5 kbps

Simultaneous send Notification and receive Write command

9.1 kbps (each direction)

Important: 1 kbps = 1000 bits per second

Documentation feedback | Developer Zone | Updated 2016-04-08