A light-weight & open-source menubar app that shows current upload & download speed plus the top apps using bandwidth
See the codeA native macOS menubar app showing real-time upload and download rates, router-wide bandwidth, historical traffic statistics, and built-in speed testing.
Latest release: NetFluss 2.6
Auto-update — NetFluss now keeps itself up to date. Once a day it checks for a new version and shows you what's new; one click downloads, verifies and installs the update and relaunches NetFluss — or skip it, or get reminded later. Check for Updates… is also in the menu bar icon's right-click menu and in About, and the daily check can be switched off in Preferences → General. Every update is verified with an EdDSA signature and NetFluss's Apple Developer ID before it is installed. Coming from 2.5 or earlier? Download 2.6 once manually — from then on NetFluss updates itself.
Clearer router connection errors — OPNsense, OpenWRT and UniFi now say exactly what went wrong instead of a generic "cannot reach": HTTPS refused (with the http:// or port to enter instead), a TLS failure, or a changed router certificate — with a new Trust Current Certificate button in the OPNsense credential test. Addresses like router.lan:8443 are accepted, and re-trusting a certificate now works for URL-form addresses too. (#56)
Complete German, 简体中文 and 繁體中文 translations — every remaining dialog and message, including router, VPN and speed-test errors, is now translated.
dns.google 🇺🇸 instead of a bare IP.
netstat diffing NetFluss already uses — no packet capture, no nettop daemon, no extra privileges, and sampling stops the moment you close the window.
Data Usage totals, right in the popover — a new section showing how much you have actually moved, without opening a separate window: Upload, Download, and an emphasised Total row, each split across a Today and a This Month column, read from the history NetFluss already collects. It updates live while the popover is open, and a chart button in its header jumps straight to the full Bandwidth Statistics window. Enable it under Preferences → Statistics (it needs historical statistics collection turned on); tunnel adapters can be excluded from the figures, and loopback and AirDrop always are. (Thanks to @truekasun.)
VPN fixes — WireGuard and Intel Macs. A round of fixes for issues reported against the 2.4 VPN client:
wg-quick's orphan-prone DNS monitor is stopped, private tunnel DNS is routed through the tunnel, and NetFluss now tracks the real utun interface instead of guessing. Teardown, file permissions, and stale-config cleanup were hardened. (#48, #50)Lower energy use and better stability
Security hardening — router monitors use TOFU certificate pinning with session reuse and never silently downgrade to HTTP; Keychain items are pinned to this device; OpenVPN configs are sanitized before use; the IKEv2 password is kept out of argv; helper logs are opened O_NOFOLLOW.
UniFi: UDR and API-key support — UniFi Dream Router is supported, and you can authenticate with a Network API key instead of a local admin account (API keys work with 2FA enabled and never expire), with clearer, more granular connection errors.
More accurate usage totals — loopback and AirDrop are excluded from totals, since they never carry internet traffic. (#54)
Complete German, 简体中文 and 繁體中文 translations for everything above.
Much lower energy use — background sampling was reworked so NetFluss's Activity Monitor energy impact drops back to normal menu-bar-app levels (no more heavyweight per-process sampling running every few seconds).
Accurate download rate in every scenario — the macOS 26.5 fix for the frozen ifi_ibytes inbound counter now reads a lightweight kernel-statistics source, so the download number and Bandwidth Statistics history stay correct without the earlier CPU cost.
"System default" menu bar color — a new colour choice that follows the menu bar appearance automatically, staying legible when the wallpaper switches between light and dark. (Thanks to @mvanhorn.)
ifi_ibytes counter is frozen on the active physical Wi-Fi / Ethernet adapter for some configurations (often Macs with a managed profile or specific NetworkExtension-based security software). NetFluss now detects that and substitutes a per-process inbound rate from nettop so both the menu-bar number and the Bandwidth Statistics history record correctly. Auto-pauses the helper subprocess when no real traffic is happening, so unaffected Macs see no extra CPU usage.
Port Nnetstat diffing used elsewhere in NetFluss; no nettop daemon, no extra privileges, and sampling stops when the window closes
.zip bundle (e.g. a provider's router profiles); each config becomes a selectable server
.ovpn) and WireGuard (.conf) run via bundled, signed binaries through the NetFluss privileged helper1H, 24H, 7D, 30D, and 1Y rangesOther grouping when many interfaces are active1H view
Download NetFluss-2.5.zip from the latest release, unzip it, and move NetFluss.app to /Applications.
NetFluss is notarized and signed with a Developer ID certificate, so Gatekeeper should clear it automatically on first launch.
You can also use Homebrew to install NetFluss:
brew tap rana-gmbh/netfluss
brew trust rana-gmbh/netfluss
brew install --cask netfluss
Homebrew requires third-party taps to be trusted before it will load them, so the brew trust step is needed once. Without it, the install stops with Error: Refusing to load cask rana-gmbh/netfluss/netfluss from untrusted tap. Later updates come through brew upgrade --cask netfluss.
swift build -c release
Or open Package.swift in Xcode and run the executable scheme.
ifi_baudrate and may show — when unavailable.ipwho.is (with api.ipify.org as fallback).If you enjoy using NetFluss please consider supporting the project via this link: https://buymeacoffee.com/robertrudolph
NetFluss is released under the GNU General Public License v3.0. Copyright © 2026 Rana GmbH
Swift
82.8%
JavaScript
13.7%
HTML
2.4%
A light-weight & open-source menubar app that shows current upload & download speed plus the top apps using bandwidth
See the codeA native macOS menubar app showing real-time upload and download rates, router-wide bandwidth, historical traffic statistics, and built-in speed testing.
Latest release: NetFluss 2.6
Auto-update — NetFluss now keeps itself up to date. Once a day it checks for a new version and shows you what's new; one click downloads, verifies and installs the update and relaunches NetFluss — or skip it, or get reminded later. Check for Updates… is also in the menu bar icon's right-click menu and in About, and the daily check can be switched off in Preferences → General. Every update is verified with an EdDSA signature and NetFluss's Apple Developer ID before it is installed. Coming from 2.5 or earlier? Download 2.6 once manually — from then on NetFluss updates itself.
Clearer router connection errors — OPNsense, OpenWRT and UniFi now say exactly what went wrong instead of a generic "cannot reach": HTTPS refused (with the http:// or port to enter instead), a TLS failure, or a changed router certificate — with a new Trust Current Certificate button in the OPNsense credential test. Addresses like router.lan:8443 are accepted, and re-trusting a certificate now works for URL-form addresses too. (#56)
Complete German, 简体中文 and 繁體中文 translations — every remaining dialog and message, including router, VPN and speed-test errors, is now translated.
dns.google 🇺🇸 instead of a bare IP.
netstat diffing NetFluss already uses — no packet capture, no nettop daemon, no extra privileges, and sampling stops the moment you close the window.
Data Usage totals, right in the popover — a new section showing how much you have actually moved, without opening a separate window: Upload, Download, and an emphasised Total row, each split across a Today and a This Month column, read from the history NetFluss already collects. It updates live while the popover is open, and a chart button in its header jumps straight to the full Bandwidth Statistics window. Enable it under Preferences → Statistics (it needs historical statistics collection turned on); tunnel adapters can be excluded from the figures, and loopback and AirDrop always are. (Thanks to @truekasun.)
VPN fixes — WireGuard and Intel Macs. A round of fixes for issues reported against the 2.4 VPN client:
wg-quick's orphan-prone DNS monitor is stopped, private tunnel DNS is routed through the tunnel, and NetFluss now tracks the real utun interface instead of guessing. Teardown, file permissions, and stale-config cleanup were hardened. (#48, #50)Lower energy use and better stability
Security hardening — router monitors use TOFU certificate pinning with session reuse and never silently downgrade to HTTP; Keychain items are pinned to this device; OpenVPN configs are sanitized before use; the IKEv2 password is kept out of argv; helper logs are opened O_NOFOLLOW.
UniFi: UDR and API-key support — UniFi Dream Router is supported, and you can authenticate with a Network API key instead of a local admin account (API keys work with 2FA enabled and never expire), with clearer, more granular connection errors.
More accurate usage totals — loopback and AirDrop are excluded from totals, since they never carry internet traffic. (#54)
Complete German, 简体中文 and 繁體中文 translations for everything above.
Much lower energy use — background sampling was reworked so NetFluss's Activity Monitor energy impact drops back to normal menu-bar-app levels (no more heavyweight per-process sampling running every few seconds).
Accurate download rate in every scenario — the macOS 26.5 fix for the frozen ifi_ibytes inbound counter now reads a lightweight kernel-statistics source, so the download number and Bandwidth Statistics history stay correct without the earlier CPU cost.
"System default" menu bar color — a new colour choice that follows the menu bar appearance automatically, staying legible when the wallpaper switches between light and dark. (Thanks to @mvanhorn.)
ifi_ibytes counter is frozen on the active physical Wi-Fi / Ethernet adapter for some configurations (often Macs with a managed profile or specific NetworkExtension-based security software). NetFluss now detects that and substitutes a per-process inbound rate from nettop so both the menu-bar number and the Bandwidth Statistics history record correctly. Auto-pauses the helper subprocess when no real traffic is happening, so unaffected Macs see no extra CPU usage.
Port Nnetstat diffing used elsewhere in NetFluss; no nettop daemon, no extra privileges, and sampling stops when the window closes
.zip bundle (e.g. a provider's router profiles); each config becomes a selectable server
.ovpn) and WireGuard (.conf) run via bundled, signed binaries through the NetFluss privileged helper1H, 24H, 7D, 30D, and 1Y rangesOther grouping when many interfaces are active1H view
Download NetFluss-2.5.zip from the latest release, unzip it, and move NetFluss.app to /Applications.
NetFluss is notarized and signed with a Developer ID certificate, so Gatekeeper should clear it automatically on first launch.
You can also use Homebrew to install NetFluss:
brew tap rana-gmbh/netfluss
brew trust rana-gmbh/netfluss
brew install --cask netfluss
Homebrew requires third-party taps to be trusted before it will load them, so the brew trust step is needed once. Without it, the install stops with Error: Refusing to load cask rana-gmbh/netfluss/netfluss from untrusted tap. Later updates come through brew upgrade --cask netfluss.
swift build -c release
Or open Package.swift in Xcode and run the executable scheme.
ifi_baudrate and may show — when unavailable.ipwho.is (with api.ipify.org as fallback).If you enjoy using NetFluss please consider supporting the project via this link: https://buymeacoffee.com/robertrudolph
NetFluss is released under the GNU General Public License v3.0. Copyright © 2026 Rana GmbH
Swift
82.8%
JavaScript
13.7%
HTML
2.4%