I just log into my ISP's portal and check occasionally
My router also keeps a track of usage, but I am not methodical enough to reset it on the right day.
It does sound a very difficult thing to implement and use on anything but the simplest system and simplest usage pattern.
In my case, I have 2 PCs. A laptop (F12) and a desktop (F12/Windows), I would have to keep these inline somehow. And there is the wii and my mobile phone which uses some of my bandwith. Sometimes I use my laptop elsewhere and log into hotel or use other wifi, I would have to exclude those and then there are the times I connect to mobile broadband. Then there are the distros I download and try......
The wii has the iPlayer channel, so the bandwidth that uses can be significant.
I have a 20GB per month limit (8am - midnight), before I get slowed to dialup, have never hit it. I do try to keep big downloads to the un-metered period between midnight and 8am. I have a regular wake-on-lan setup on my dd-wrt router and a cron on the F12 desktop which does its updates and any dowloads I have put in whilst I am asleep.