That's not true. The number of client API loads are counted, but the number of map tiles loaded by that client is not. i.e. you are charged per page load, irrespective of the user activity on that page.
Use of the Google Geocoding API is subject to a query limit of 2,500 geolocation requests per day
if you're using the server endpoint, which perhaps checks what server the request is coming from- I have no idea. The JS, client-side version definitely requires a key.