I will try to answer the best I can, but some of it will depend on which operating system you are on (jellybean, gingerbread, etc.)
First of all, be aware that collecting money for tethering most likely will violate the terms of your contract with your carrier.
Jellybean phones natively track the amount of data that tethering is using (go to data usage in the settings menu) . Also if you are using a tethering app, it will usually show how much data is being consumed. But you are not able to do this on a per device basis, so your best bet is probably too just charge them a flat fee if you are going to do that.