I'd watch blocked calls per town, not the total, because the total hides which switchboard is short. Convert each town's load to erlangs: A = calls per hour at the 10:00 peak × average call length in hours. With n boards, Erlang B gives the share of calls blocked: B(n, A) = (A^n / n!) ÷ Σ(A^k / k!) for k = 0 to n. For example, 3 erlangs on 6 boards blocks about 5% of calls, so a town at that load is already losing calls. Show that number in the town tooltip (say, "blocked 5% at peak") and players can spot the problem before the red bar appears. Erlang B assumes random arrivals and that blocked calls are lost. Bursty traffic, like a rush around one event, blocks more than the formula says, so treat it as a floor, not a forecast. Reference: https://en.wikipedia.org/wiki/Erlang_(unit)
Thank you, this is exactly the kind of answer we hoped the question would get. You're right that the total hides which town is short. A per town "blocked at peak" share in the tooltip would warn before the red shows up, and Erlang B fits a board that loses blocked calls. Your point about bursty traffic is a good one too, so it would read as a floor. We've recorded this for the next version of BUSY HOUR.