Get This Tool
Netmon
Pricing
- Model
- Free
Summary
Most network monitoring setups end up calling home — telemetry, cloud dashboards, 'freemium' tiers that gate the features you actually need. netmon runs entirely on your hardware, sends nothing off your LAN except a Telegram message, and keeps your ISP's dirty secrets between you and your router.
netmon runs a speed test every hour, scans active LAN devices via nmap ARP sweep, logs results to a local SQLite database, and every four hours fires a Telegram report with a 24-hour trend graph and an LLM-generated commentary on your network's behavior. The workflow is fixed: timed cycles, no branching, no autonomous decisions. That's intentional — it's a scheduled reporter, not an agent. It fits a Raspberry Pi tucked in a closet without complaint. The ceiling appears when you want anything beyond Telegram delivery, custom alert thresholds, or multi-site aggregation — none of those are in the codebase, so you extend it yourself or accept the defaults.
Bottom line: The right pick for a privacy-first home lab operator who wants hourly speed data and snarky LLM commentary in Telegram with zero cloud dependency — the wrong pick for anyone who needs multi-network visibility, webhook integrations, or alert routing beyond a single Telegram bot.
Community Performance Report Card
No community ratings yet. Be the first to rate this tool!
Community Benchmarks Community
Sign in to submit a benchmarkNo community benchmarks yet. Be the first to share a real-world data point.
Pros
Sign in to edit- All data stays on-device in a local SQLite database, so no third-party service ever sees your network performance history — which means GDPR concerns, data broker exposure, and cloud outage dependencies simply don't apply.
- Hourly speed tests with a 24-hour trend graph generated locally, so you get a timestamped record of ISP degradation without paying for a SaaS monitoring seat.
- LAN device counts via nmap ARP scan on each cycle, so you catch unexpected devices joining your network without running a separate discovery tool.
- MIT-licensed with a minimal file structure (under 15 source files per the repository), so forking and adding a custom alert condition or output channel is scoped work, not an archaeology project.
- Designed explicitly for Raspberry Pi deployment, so the hardware cost to run it continuously is negligible and the setup assumes constrained resources from the start.
Cons
Sign in to edit- There is no threshold-based alerting: if your download speed drops to 2 Mbps at 3 a.m., netmon logs it and includes it in the next four-hour report — it does not wake you up. Teams that need immediate breach-of-SLA notification have to add their own alerting layer or switch to a tool like Uptime Kuma or Healthchecks.io that has this built in.
- Telegram is the only delivery channel. There is no webhook, no email output, no HTTP endpoint, and no local web dashboard. If your organization blocks Telegram or you want alerts in Slack or PagerDuty, you are rewriting tg.py yourself before this tool is usable.
- The fixed four-hour report cadence and one-hour test interval are not configurable through the .env file alone — adjusting the schedule means modifying runner.py directly. Teams with non-standard monitoring windows discover this after setup, not before.
- There is no multi-site or multi-network support. A single netmon instance monitors one LAN. Anyone managing more than one location — a home office and a remote cabin, a small business with two subnets — runs separate instances with no aggregation layer, which defeats the purpose of a unified view.
Community Reviews
Sign in to write a reviewNo reviews yet. Be the first to share your experience.
About
- Platforms
- macOS, Linux
- API Available
- No
- Self-Hosted
- Yes
- Last Updated
- 2026-07-24T04:45:11.371Z
Best For
Who it's for
- Raspberry Pi deployments
- Users wanting local-only operation
- Telegram-centric alert setups
What it does well
- Home network performance tracking
- LAN device monitoring
- Automated periodic reporting
- Privacy-focused self-hosted monitoring
Integrations
Discussion Community
Sign in to commentNo discussion yet. Sign in to start the conversation.
Compare Netmon
Spotted incorrect or missing data? Join our community of contributors.
Sign Up to ContributeCommunity Notes & Tips Community
Sign in to contributeBe the first to contribute. General notes, observations, gotchas, and tips from people who use this tool day-to-day.
Frequently Asked Questions
- Is Netmon free?
- Yes — Netmon is fully free to use. There is no paid tier.
- Is Netmon open source?
- Yes. Netmon is open source.
- Can I self-host Netmon?
- Yes. Netmon supports self-hosting on your own infrastructure.
- What platforms does Netmon support?
- Netmon is available on: macOS, Linux.
Hours Saved & ROI Stories Community
Sign in to contributeBe the first to contribute. Concrete time/cost savings, with context. e.g. "Cut my code review backlog from 4h to 45m per week."
Curated lists that include this category
netmon is an open-source Python tool that runs on your local hardware and does three things on a fixed schedule: speed tests every hour, nmap-based LAN device counts via ARP scan, and a Telegram report with a 24-hour trend graph every four hours. The graph is generated locally, the database is a local SQLite file, and the only outbound call is the Telegram message delivery. Configuration lives in a single .env file. The vendor states the tool is 100% private and self-hosted, with no cloud component.
The differentiating detail is the LLM-generated commentary. Rather than a plain metrics dump, each periodic report includes a sarcastic, LLM-written summary of what your network has been doing — the docs describe it as lines like ‘someone’s hogging the bandwidth again.’ This sits on top of the trend graph and turns a dry log into something a non-engineer household member might actually read. The LLM call is handled by ai.py; the specific model provider is configurable via the .env example in the repository.
netmon fits a single home network on a Raspberry Pi or any always-on Linux box where the operator wants local-only telemetry and Telegram as the single pane of glass. It breaks when the use case grows: there is no alerting threshold system, no webhook output, no multi-site support, and no dashboard beyond what Telegram renders. Teams or home lab operators who outgrow Telegram-only reporting will hit a wall and either fork the codebase or move to a tool like Grafana plus a purpose-built exporter stack.
