Wi-Fi signal strength

This page reads the laptop's current Wi-Fi link metrics — RSSI, noise floor, channel, modulation, MCS index — directly from the operating system. Connect the laptop to your phone's hotspot, then move the phone around and watch every metric track the radio link in real time.

How to run

  1. Turn on your phone's personal hotspot and connect this laptop to it.
  2. Download the helper script and place it in a folder of your choice.
  3. In a terminal, cd into that folder and run python3 helper.py.
  4. Open http://localhost:8765 in your browser. (If you're already there, refresh.)
  5. Walk the phone around the room and watch the dBm value (and TX rate) change.
Download helper.py
pip install pyobjc-framework-CoreWLAN && python3 helper.py
Per-platform notes

macOS: install pyobjc-framework-CoreWLAN for ~4 Hz updates. Without it, the helper falls back to system_profiler, which works but updates only every ~8 s. SSID and BSSID are hidden by default unless you grant Terminal Location Services permission.

Linux: the helper uses iw dev <iface> link. No extra setup.

Windows: the helper uses netsh wlan show interfaces. Signal is reported as a percentage and converted to a dBm estimate (−100 + pct/2).

dBm
SSID: Source: Updated: waiting…
−100 dBm (weak)−30 dBm (strong)

Link details

Noise floor
SNR
TX rate
Rate / stream
MCS index
Modulation
Coding
Spatial streams
PHY mode
Channel
Band
Width
Security
BSSID
SSID

Shannon ceiling

The Shannon–Hartley theorem caps the data rate any link can carry: C = B · log2(1 + SNR). Here B is the channel width and SNR is the linear signal-to-noise ratio (10SNRdB/10).

Bandwidth (B)
SNR (linear)
Shannon limit (C)
TX rate / C
Bar shows TX rate as a fraction of the Shannon ceiling. Real Wi-Fi typically reaches 50–70%; the rest is overhead (preamble, ACKs, retries) and the gap between the FEC code and Shannon's optimal code.
MCS reference table

The MCS (Modulation and Coding Scheme) index encodes the modulation and the forward-error-correction code rate. At a given channel width and number of spatial streams, MCS determines the data rate. The row matching your current link is highlighted.

MCS Modulation Coding 20 MHz 40 MHz 80 MHz 160 MHz

Per-stream data rates shown for 802.11ax (Wi-Fi 6) at long guard interval (0.8 µs). Multiply by the number of spatial streams (NSS) to get the link's TX rate. 802.11ac tops out at MCS 9 (no 1024-QAM); 802.11n cycles MCS 0–7 across spatial streams (MCS 8–15 = same modulation/coding × NSS 2).

Channels around you

Click Scan now to detect nearby Wi-Fi networks (takes ~6 s — the radio briefly hops channels).
Network list

RSSI · last 60 seconds

Higher (less negative) is stronger signal. Green ≥ −55 dBm, yellow ≥ −70 dBm, red below.