If you do backups at night and send 50TB/month but only at times when the network would otherwise be idle, why should your connection be slower than anyone else's during the day? Likewise, even if you did send a lot of data during peak hours, what would be the point of throttling you at night when the network has capacity to spare?
It only make sense to throttle people during peak hours who send a lot of traffic during peak hours. But that's what already happens if you don't do anything, because the links get saturated during peak hours and people have to share them so the people who are using the network when it's saturated have slower speeds.
What they could do is sell a more expensive plan where you get prioritization during congestion. Then if you don't use the network during peak hours or don't care about it being slow at those times you can save money, and if you want your connection to be fast all the time you can pay more.
AFAICT the reason they don't do this is it requires admitting that their network is heavily oversubscribed and they're too cheap to upgrade it, which is kind of a PR fail.
It would also both drive and pay for network upgrades, because the people paying the higher price would expect to get the full speed they were sold, so the ISP would have to keep the network at least fast enough to handle all of that traffic. And could afford to because they have more revenue.
Then the better network is faster even for the people paying the lower price at times outside of peak hours.
Caps discourage people from using too much and making the network slow for everyone and/or very expensive to run. It'd be great if, instead, bandwidth was prioritized based on usage each month. So the really heavy users that cause problems for everyone else will run slowly during the day but still can be fast at night.
Ideally there would be a way to mark streams as low-priority in a way that didn't count against your quota, that could be used automatically by backup software and other cases.
Another possible system which seems fair to me would be to give each user a guaranteed 1/N of the bandwidth. If there's any unused, then split it equally among those that are using it. In practice an ISP needs to have enough capacity to support streaming during the peak hours, so that'd keep the 1/N value reasonable. For example, if a local ISP offers 1 gbps connections to 200 customers and has them sharing a 10 gbps upstream connection to the wider internet, each would have a guaranteed 50 mbps, with ability to burst to all 1 gbps most of the time. That's plenty fast for streaming from several devices per household. If someone needs faster guaranteed speed, they can pay extra for more bandwidth shares.