They have a retail price, they can’t play with the retail price every 5 minutes, so they use the new acquisitions budget to play with the headline price for marketing. It’s basically contract price minus marketing budget every month tweaked to look different. In historically dry months they may choose to increase it slightly, or they may just adjust the bonus structure to reflect it on the sales side - whatever is cheapest usually. Some players adjust marketing mid month (BT for example) for things like cash back sites, but it is based on RGU’s and new acquisitions as a % to target - they don’t want to blow the budget in week two, even though it’s perceived as desirable to add more customers. The problem with what you suggest is you loose the ability to market on offer price/sale price as a differentiator and whoever can sell at the cheapest rate, is perceived to win. That creates a scenario where nobody wants to be expensive and support and back end services are sold to the lowest bidder (offshore CS/TS etc) and any network investment is non existent (remember OR is just the last mile in this scenario) and then some genius thinks we can bring in data caps and throttle to save money and then leverage overage charges per megabyte to get rid of customers who cost us money every single month. You leave heavy users with a few ( dry expensive) options and aim for the light users to make money. The winners are rarely going to be the smaller players in the market unless (as has been done) you are literally running it out of your spare room and have near zero overheads, people understand pounds and pence, bits and bytes not so much.
For the minutes it takes every 12-18 months, it’s somewhere between a minute and 2 minutes per month if the contract, it’s hardly a massive time investment on your part to make sure you get the right deal for you. Is it fun? No, but people in general don’t read bills and often overlook it for a a few months/years before calling, given the actual profit per subscriber is relatively low, that makes a difference.