I’m trying to determine the actual Wi-Fi band (e.g. 2.4GHz, 5GHz, or 6GHz) of the network that is currently connected on macOS.
I’m not looking for a heuristic based on the Wi-Fi name (SSID), such as checking whether it contains “5G” or “6G”. Instead, I want a reliable and accurate method that reflects the real connection parameters reported by the system.
Specifically, I’m interested in:
Whether macOS exposes the current Wi-Fi band or channel information through public APIs (e.g. CoreWLAN)
Or if there is any supported system-level way to retrieve this information programmatically
If this information is not directly accessible, I’d also like to understand:
Why macOS does not expose it
And whether there is a recommended alternative approach
Any insights or examples would be greatly appreciated.
AFAIK this information is available from Core WLAN. See the various properties on CWChannel.
IMPORTANT Modern versions of macOS limit what Wi-Fi information you can access unless you have the Location privilege, as shown in System Settings > Privacy & Security. That restriction has been discussed on the forums many times. If you rummage through the posts with the Core WLAN tag, you’ll find a bunch of backstory.
Share and Enjoy
—
Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@" + "apple.com"