The free version of the API is limited by 25000 requests a day. But what happens if this limit is reached?
Is there a way to detect that the request limit has been reached so a fallback Google Maps Image API map can be displayed instead?
The usage limit is based on site or application, not the client IP address.
You can use the Google API console to monitor your usage if you add an API key to each of your map requests. I have not seen a way to query the usage programmatically. https://code.google.com/apis/console
Per the comment below by @alds, it does appear that JS Maps API v3 and Static Maps API are separate services, therefore having separate request limits. Falling back to a static Google map image could help.
This also explains the usage limits in better detail: http://googlegeodevelopers.blogspot.com/2011/11/understanding-how-maps-api-usage-limits.html
You cannot detect via the API that the request limit has been reached. There are no events that are fired and the API does not expose a function or property to determine that the API quota has been reached.
Google has decided that this is not a feature they will implement.
@kilogauss I would disagree that falling back to static Google Map is not an option.
According to https://developers.google.com/maps/faq#usagelimits
"Web sites and applications using the Google Maps API may at no cost generate up to 25,000 map loads per day FOR EACH service" (capitalization and boldface mine).
And on https://developers.google.com/maps/faq#usage_pricing, you can see that JS Maps API v3 and Static Maps API are separate services.
©2020 All rights reserved.