Guide to Spreading Factors and ADR in LoRaWAN-11

LoRa and LoRaWAN – Part 4 : Guide to Spreading Factors and ADR in LoRaWAN Leave a comment

Guide to Spreading Factors and ADR in LoRaWAN

Spreading Factors

In the previous section, we reviewed LoRa activation methods. LoRa operates based on Chirp Spread Spectrum (CSS) technology, where Chirps (or Symbols) act as data carriers.

The key element here is the Spreading Factor (SF). This factor controls the chirp rate, which directly affects data transmission speed.

  • Lower SF → Faster chirps → Higher data rate
  • Higher SF → Chirp rate halves → Data rate halves

In simple terms: Increasing the Spreading Factor improves range and noise resistance, but reduces data speed. Lower SF gives higher speed but shorter range — because Processing Gain (signal processing strength and noise immunity) decreases, while bit rate increases.

This allows the network to balance range vs. speed for each device.

Additionally, the network uses Spreading Factors as a traffic and congestion control tool. Since SFs are orthogonal, signals modulated with different SFs can be transmitted simultaneously on the same frequency channel without interference. This is a key reason LoRa can support thousands of devices at once.

Impact of Spreading Factors

LoRa modulation supports six Spreading Factor levels, from SF7 to SF12. Each directly affects:

  • Data Rate
  • Time-on-Air (channel occupancy duration)
  • Battery Life
  • Receiver Sensitivity

Spreading Factor Data Rate Time-on-Air Battery Usage Range & Sensitivity
SF7 (lowest) Highest Shortest Lowest Shortest range, lower sensitivity
SF12 (highest) Lowest Longest Highest Longest range, can detect very weak signals

In simple terms:

  • SF7 → Ideal for fast, short-range transmissions
  • SF12 → Perfect when you need very long range, even if battery drains faster and data rate drops

This flexibility is why LoRaWAN works so well across diverse applications — from simple sensors sending data occasionally to devices operating over huge distances.

Data Rate

When the Spreading Factor is lower, the bit rate increases (assuming bandwidth and coding rate remain constant). For example, SF7 provides a higher bit rate than SF12. Conversely, if bandwidth is doubled, the bit rate also doubles (again, with SF and Coding Rate fixed).

For instance, the table below shows calculated bit rates for SF7 with Coding Rate = 1 across 125, 250, and 500 kHz bandwidths:

Spreading Factor Bandwidth Bit rate (kbit/s)
7 125 5.5
7 250 10.9
7 500 21.9

Distance (Range)

The higher the Spreading Factor, the more processing the device performs on the signal, resulting in higher Processing Gain. This means signals modulated with a higher SF have lower error rates and are more easily detected by the receiver — even when very weak.

In simple terms: With SF12, a signal can travel much farther and still be receivable. The same signal sent with SF7 will degrade faster and have shorter range.

Thus, choosing an SF is a trade-off between longer range and higher data rate:

  • High SFExcellent for long range and noise resistance, but slower speed and higher energy use.
  • Low SFFaster, but shorter range.

Time-on-Air

When using a higher Spreading Factor, sending a fixed payload size at a fixed bandwidth takes longer to transmit. This duration is called Time-on-Air.

In simple terms:

  • The same data packet sent with SF7 transmits much faster.
  • With SF12, it occupies the transmitter for a much longer time.

This directly impacts energy consumption — the device must stay active longer.

For accurate Time-on-Air calculations, use the official LoRaWAN Airtime Calculator provided by The Things Network. Simply input:

  • Payload size (in bytes)
  • Bandwidth
  • Spreading Factor

…and it computes the exact channel occupancy time.

 

Receiver Sensitivity

The higher the Spreading Factor, the greater the receiver sensitivity. This means the device can detect and process weaker signals. Typically, when signal strength is low or distance is great, LoRa shifts to higher SFs to maintain a stable link.

The table below shows how increasing SF affects receiver sensitivity (exact values vary by hardware and bandwidth, but the pattern is consistent):

Guide to Spreading Factors and ADR in LoRaWAN-2

Adaptive Data Rate (ADR)

One of LoRaWAN’s key features is Adaptive Data Rate (ADR). This mechanism optimizes:

  • Data Rate
  • Time-on-Air
  • Device Energy Consumption

ADR controls three main parameters on the device:

  • Spreading Factor
  • Bandwidth
  • Transmission Power

When ADR is enabled, the network server instructs the device on necessary changes — for example, reduce TX power or increase data rate. → A device near the gateway doesn’t need high power or high SF — its message reaches easily → minimizes energy use.

Conversely, far-away devices or those in harsh environments must use higher SFs for a stronger link, even if it drains more battery.

In simple terms: ADR ensures each device operates at the best possible settings:

  • Nearby devices: Fast + low power
  • Distant devices: Slower + reliable

This enables LoRaWAN to balance low energy use with wide, reliable coverage.

When ADR Works Best

ADR is most effective when RF conditions are relatively stable — ideal for fixed devices (e.g., parking sensors, meters). → If RF becomes unstable (e.g., a car parks over a sensor), ADR should be temporarily disabled.

For mobile devices:

  • ADR should only activate when the device has been stationary for a long time.
  • While moving, RF conditions change constantlyADR gives poor results.

Key point: The final decision to enable or disable ADR lies with the device itself — not the application or network. The device must intelligently detect when conditions are stable.

Important Note
How ADR calculations are performed depends on the network — this is beyond the scope of this article.

FAQ – Guide to Spreading Factors and ADR in LoRaWAN

What is Spreading Factor (SF) in LoRa?
+

Spreading Factor controls chirp rate in CSS modulation. Higher SF = slower data rate, longer range; lower SF = faster data, shorter range.

How many Spreading Factors does LoRa support?
+

LoRa supports 6 levels: SF7 to SF12. Each step halves the data rate but doubles the range and sensitivity.

Why are different SFs orthogonal?
+

Different SFs are orthogonal — signals with different SFs on the same channel don’t interfere, enabling thousands of devices per gateway.

How does SF affect Time-on-Air?
+

Higher SF increases Time-on-Air — the same payload takes much longer to send at SF12 than SF7, raising energy use.

When should I use SF7 vs SF12?
+

SF7: Fast, short-range, low battery.
SF12: Long range, high sensitivity, ideal for remote or weak-signal areas.

What is Adaptive Data Rate (ADR)?
+

ADR lets the network server optimize device settings (SF, TX power, bandwidth) for best data rate and lowest energy.

How does ADR save battery?
+

ADR reduces TX power and uses lower SF for nearby devices — minimizing airtime and energy per transmission.

When should ADR be disabled?
+

Disable ADR for moving devices or unstable RF (e.g., vehicles, temporary obstructions). Enable only when stationary and stable.

How to calculate Time-on-Air?
+

Use the TTN Airtime Calculator: input payload size, SF, bandwidth → get exact transmission duration.

Who decides to enable ADR?
+

The end device decides — not the network or app. It evaluates RF stability before enabling ADR

Resources

Master transmission limits, reliability, and efficiency in one go.
Dive into Part 5: Understanding Duty Cycle, Coding Rate, and Packet Structure in LoRa Protocol
to optimize performance and maintain compliant, robust communication.

Leave a Reply