YAMon - per user & per device usage monitoring

In the spring of 2013, my ISP could not explain how we kept exceeding our monthly usage cap. I did not trust their totals and their reports and the stock graphs & tables on my router did not provide the level of detail I wanted to see - i.e., who used how much data when?

That lead me to develop YAMon - a tool that records and reports on the traffic (downloads and uploads) for all of the devices connecting to your router. The data is aggregated by hour, day and month (within your ISP billing interval) and can be rolled-up into arbitrary groups (e.g., by family member, roommate, device location or function, or by any other logical grouping of devices).

  • Hourly & daily reports allow you to see which devices used how much bandwidth, when? (Did your kids go to school? Did they shut off their devices at bedtime?).
  • The monthly usage report shows who is consuming the most bandwidth on which device and projects your total usage for your ISP billing interval (allowing you to throttle consumption before you get hit with a large overage fee).
  • The devices tab shows all devices that have connected to your network and allows you to organize them into arbitrary logical groups (e.g., by family member or device owner, or by function/location, etc.)
  • The live usage report allows you to see which IP addresses each device is connecting to and includes geo-location lookups (so you can find out why your kid are connecting to a server in Lithunia or elsewhere... no offense intended to anyone from Lithuania)

I just posted v3.3.4 to the YAMon web site - http://usage-monitoring.com...

Let me know if you have any questions or feature requests.



I downloaded the script I will take a look at it tomorrow, One thing though what font is that on your download page holy crap it's hard to read. What is that drop shadow's. Kinda reminds me of GeoCities web sites.

I installed it. And after installation finished i ran this program, but i can't access page.
This is my /tmp/www folder

lrwxrwxrwx 1 root root 20 Oct 25 22:06 css -> /opt/YAMon3//www/css
lrwxrwxrwx 1 root root 14 Oct 25 22:07 data3 -> /mnt/sda/data/
lrwxrwxrwx 1 root root 23 Oct 25 22:06 images -> /opt/YAMon3//www/images
lrwxrwxrwx 1 root root 29 Oct 25 22:07 index.html -> /opt/YAMon3/www/yamon3.3.html
drwx------ 2 root root 80 Oct 25 22:07 js
lrwxrwxrwx 1 root root 18 Oct 25 22:06 logs -> /opt/YAMon3//logs/
lrwxrwxrwx 1 root root 8 Oct 25 22:06 www -> /tmp/www

1 Like

I am having the same problem with YAMon 3.3.4 on LEDE 17.01.0: Going to gives this message:

The requested URL /user/index.html was not found on this server.

I do see files arriving in the YAMon/data folder... Any clues? Thanks.

1 Like

Sorry for the grief.... You might have to make the following LEDE specific changes:

  1. add a symlink (in a PuTTY or terminal window, run ln -sf /tmp/www /www/user)
  2. set the permissions to allow others to see /opt/YAMon3/www/yamon3.3.html
    (easiest in WinSCP via a right click-->Permissions or in PuTTY chmod 704 /opt/YAMon3/www/yamon3.3.html)

I thought I'd fixed that in the setup.sh... grrrr... Please let me know if this works.


it gives me this error. There is data3/2017/09/ path with

2017-09-mac_data.js 2017-10-27-hourly_data.js

Files in it. I guess 2017-10-27-horly_data.js must be in data3/2017/10 folder. right?

javascript is not disabled! but i have this error.

That HELP link does not work

Yes, the two changes (adding symlink, tweaking permissions) now display stats on the web page. I'm not seeing error messages like matamana2608, but will need to check the data carefully to see if it seems accurate. Thanks!

I found my problem. The issue with this program is that it uses too much tracking sites. Why did developer do this? I have blocked some tracking sites with my router for example gstatic.com and that is the cause of my error.

Just curious:
"The most popular and most productive opensource tool to monitor router traffic. "

Where is the link to the Yamon sources?
I tried to look for it on your website, but did not find the source code. There are some github repos with much older versions, but I did not find the current version. There is just the zipped archive to be installed?

1 Like

re: gstatic.com... I am of the impression that Google has set up this DNS name for performance testing, not tracking. (See the comment on line 249 of blip.js for supporting info.) It seems that Google has distributed servers with the 'gstatic.com' name many places around the Internet to get low-latency responses everywhere.

Yes i searched the info about this gstatic but there are some subdomains like csi.gstatic.com which turns out to be some logging site. If you look csi gstatic in google you will find people complain about URI load times for this domain. https://www.google.nl/search?q=csi+gstatic&gws_rd=cr&dcr=0&ei=b670WZfIGczjvASuipmwCA

The YAMon reports on your router make use of the following external resources:

  1. The jQuery libraries (for general JS functionality)
  2. The Google Visualization libraries (for graphs & charts)... If those libraries are tracking you, I do not see any of that info.
  3. YAMon JS & CSS files hosted at my domain (usage-monitoring.com... my ISP is ipage.com). I keep those files there so that I can implement fixes & add features without requiring you to update your router. There is an option in your config.file that will download a local copy of these files (but not the jQuery or GV libraries).

Yes, there is also a link in the reports to a an optional PayPal donate page. The donations page @ usage-monitoring.com (
http://usage-monitoring.com/donations.php) clearly shows that I'm not getting rich from this :-).

The pages at usage-monitoring.com use the same jQuery & GV libraries and have some links to Amazon & Facebook. Oh, and I do have basic google analytics links on the pages.

I'm willing to bet that this site uses way more sophisticated visitor analytics tools than I have on mine.

Does this address your concerns?

1 Like

Yes. Thanks for detailed explanation.

No. You unzip that file and there is a shell script install.sh which when you run, it downloads all the needed files and goes through install process. It's simple enough for anyone to install it. Hope some linking problems get fixed soon so anyone can use this tool.


If that is all you are concerned about, I use luci-wrtbwmon and wrtbwmon, I actually wrote a quick tutorial for myself on blogger.


Great, that's exactly what i need just a per user bandwith monitor. I tried nlbwmon but it does give correct bandwith. When you sum it up it's much less then actual bandwith used by all devices. I'll try that badnwith monitor :slight_smile:

I tried your bandwith monitor and it works great! It shows exacvtly as much bandwith as network>interfaces.

nice this worked really well!, good write up and pictures..kudos

why would the post be delete? did I miss something?

I am very familiar with wrtbwmon... it is probably the granddaddy of monitoring tools on DD-WRT.
It is an excellent option for basic information but it did not provide the level of detail that I wanted (and other YAMon users requested )

I downloaded YAMon this weekend but did not get around to trying it, It sounds very interesting hopefully next week I will try it.