Google recently made some changes to their Maps API, which ACME uses on many pages. They switched from having a free level of service to charging for everything but giving a $200/month credit. By itself that would be no big deal. However they also raised the effective price of serving maps by about a factor of ten.
The price increase was not mentioned in the announcement of this change. The Maps API control panel and documentation pages make it pretty hard to figure out. You have to look up the costs for each type of API request, halfway down a big old document, and do the math yourself. It's almost like they intentionally hid a huge price increase behind an innocuous-sounding accounting change.
While ACME's usage used to easily fit into the free service limit, we are now at about five times the $200/month credit. Since I don't want to pay $1000/month, I have put a daily quota on map API usage, which will result in errors for much of the day. I apologize for this. It hurts me too, since I use my own maps a lot.
I'm going to look into using other map services. The effort to switch over will be huge.
For now, I added a quota limit to keep Google from charging me $1000/month for what used to be free. This means that when I am over quota, which means 4/5ths of each day, users will get a pop-up warning about the maps not loading correctly. Interestingly, it seems that when I am over quota, the API removes the change-map-type widget to prevent my users from switching to a non-Google map type. Why would that be? I was able to hack around this problem by having all my maps start up in the still-free OpenCycle map type. I will look into a way to let users switch between non-Google map types. Writing my own change-map-type widget that is not intentionally crippled this way is not hard.