Of course the best way is with metered usage (pay per GB you use in a month). But for some reason everyone seems to be totally against that even though that's the method that makes the most sense.
It doesn't make the most sense. It is not a consumable resource that had a one to one cost, like water.
What makes the most sense is classes of service: Dedicated bandwidth that matches what you are paying. A simple example: ISP has 1,000 gb connection and 1,000,000 subscribers. So, every subscriber would have a 1mb dedicated class of service, and would pay for their share of that.
Now, obviously, there will be times where they can download a 1gb, or whatever the size of their pipe is. However, during prime time, they would reduce down to 1mb, but no less.
If they wanted more, then they could pay 5x as much for 5mb dedicated CoS, and they wouldn't slow as much during the prime time.