Skip to main content

WiFi Analyzer logo

WiFi Analyzer

Wi-Fi signal analyzer, channel planner and local connection diagnostics tool.

Built with GTK4/Adwaita. Part of the Danne L10n Suite.

WiFi Analyzer displaying fictional example networks and channel overlap

Example networks shown; the app displays scan results from the local device.

Features

  • Scan access points through NetworkManager D-Bus; no privileged shell command is required.
  • Prefer the adapter with an active NetworkManager connection when the computer has multiple Wi-Fi devices. Active-link width and Wi-Fi generation are read from that interface.
  • Filter results by network name, BSSID, channel or security type.
  • Inspect 2.4, 5 and 6 GHz bands with a channel-overlap graph.
  • Navigate the channel graph with Left/Right and Home/End, filter channels with Enter/Space, and hear channel selections read by screen readers.
  • Show NetworkManager's announced AP bandwidth when available, with a clearly marked estimate as a fallback.
  • Mark 5 GHz DFS channels. Their availability depends on the local regulatory domain.
  • Estimate channel overlap from access points visible in a scan. The score does not measure client traffic or hidden networks.
  • Exclude channels outside the locally reported regulatory frequency ranges from recommendations when that information is available.
  • Sort results by signal, channel, or security and group repeated SSIDs by access-point count.
  • Export visible, filtered results as CSV, JSON, anonymized JSON or an HTML diagnostic report, with a user-selected file name and destination.
  • Escape formula-like untrusted text in CSV exports so nearby network names are not interpreted as spreadsheet formulas.
  • Keep up to 100 local scan summaries for future history views. Scan data never leaves the device and can be cleared from the menu.
  • Mark the active access point and use the actual channel width reported by iw for that radio when available.
  • Identify Wi-Fi 4, 5, 6/6E and 7 for the active link from iw PHY markers. A generation is never guessed for an unconnected AP.
  • Compare consecutive scans to identify new, missing, or materially changed access points.
  • Create a self-contained HTML diagnostic report or an anonymized JSON export that omits SSIDs, BSSIDs and connection-specific fields. Radio measurements remain and can still reveal a location; review the file before sharing it.
  • Select an access point to identify the strongest overlapping neighbours.
  • Show the active connection's gateway and DNS servers from local system diagnostics.
  • Use optional 60-second monitoring and location profiles for private local scan history.

Installation

PyPI (Debian/Ubuntu)

GTK, libadwaita, PyGObject and Pycairo use native system libraries, so install them from your distribution before installing the Python package:

sudo apt install python3-gi python3-gi-cairo python3-cairo gir1.2-gtk-4.0 gir1.2-adw-1 network-manager iw pipx
pipx install --system-site-packages wifi-analyzer

Debian/Ubuntu

wifi-analyzer is distributed through the Danne L10n Suite APT repository, not the default Debian or Ubuntu repositories. Add the repository before installing:

wget -qO /tmp/yeager-repo-key.asc https://yeager.github.io/debian-repo/yeager-repo-key.asc
sudo install -m 0644 /tmp/yeager-repo-key.asc /usr/share/keyrings/yeager-repo.asc
echo 'deb [signed-by=/usr/share/keyrings/yeager-repo.asc] https://yeager.github.io/debian-repo ./' | sudo tee /etc/apt/sources.list.d/yeager.list
sudo apt update
sudo apt install wifi-analyzer

If APT still cannot find the package, check that the repository appears in apt update and run apt-cache policy wifi-analyzer. The signed APT index may lag behind the latest release. To install the current version, download the .deb from GitHub Releases and install the downloaded file with sudo apt install ./wifi-analyzer_*.deb.

Source packages follow Debian policy and can be built with:

dpkg-buildpackage -us -uc -b

Fedora/RPM distributions

The release includes an RPM built on Fedora 44. Download it from GitHub Releases and install it on Fedora 44 with sudo dnf install ./wifi-analyzer-*.rpm.

Build the source RPM with:

rpmbuild -ba packaging/rpm/wifi-analyzer.spec

GitHub Actions builds both .deb and .rpm artifacts for releases and pull requests.

Translations

The user interface ships gettext catalogues for 21 locales. Swedish is complete and reviewed; other catalogues may be partial, and untranslated strings fall back to English. See po/README.md to contribute or validate a translation. The Swedish manual page is installed as wifi-analyzer(1) and is maintained in docs/man/sv.

Flatpak

Flatpak-paketet byggs från flatpak/io.github.yeager.wifi-analyzer.json. GitHub Actions bygger en installerbar .flatpak-bundle för pull requests och pushar till main. Release-taggar hoppar över Flatpak-jobbet eftersom manifestet pekar på den senast utgivna och versionsstämplade källkoden. Hämta artefakten från paketworkflowen och installera den så här:

flatpak remote-add --user --if-not-exists flathub \
  https://dl.flathub.org/repo/flathub.flatpakrepo
flatpak install --user ./io.github.yeager.wifi-analyzer.flatpak

License

GPL-3.0

Author

Daniel Nylander — danielnylander.se

Metadata

Release files for wifi-analyzer 0.1.28

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for wifi-analyzer 0.1.28
File Size Uploaded Provenance Actions
wifi_analyzer-0.1.28.tar.gz 1.5 MB With provenance Details for wifi_analyzer-0.1.28.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for wifi-analyzer 0.1.28
File Interpreter ABI Platform Actions
wifi_analyzer-0.1.28-py3-none-any.whl Python 3 none any Details for wifi_analyzer-0.1.28-py3-none-any.whl

Total release size: 1.5 MB

Release files / wifi_analyzer-0.1.28.tar.gz

Download URL wifi_analyzer-0.1.28.tar.gz
Size 1.5 MB
Tags Source
SHA-256 checksum
How to use checksums
f918c8c6aa7e6b08ee8d8d5eb00f41b670dd7105c5287c1d7cc05d81eac05c3d
BLAKE2b-256 checksum
How to use checksums
a2c07bd20fc0ebb665be2c6175dcd2cbe2cf7b3ed388f68d36b5467a9e562432
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 30, 2026.

Transparency log

Release files / wifi_analyzer-0.1.28-py3-none-any.whl

Download URL wifi_analyzer-0.1.28-py3-none-any.whl
Size 46.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
b17b2e90a317762480f4243f022d5848b2bf0763552bd91cca91794643d2f893
BLAKE2b-256 checksum
How to use checksums
6d46c14d9236ccf2161ed590d05648134acf7644dd04a1abcf5ffb92a0d2a31c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 30, 2026.

Transparency log

Security for wifi-analyzer 0.1.28

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

Both files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for wifi_analyzer-0.1.28.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 30, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page