Assuming you need to support commercial use at production volumes, I don’t think the Google APIs and licensing agreement would meet the requirement.
You also need to determine the level of accuracy of geocoding that will meet your requirements. If you are trying to find the nearest store to a consumer you need a lower level of geocoding accuracy than if you are attempting to assign the correct tax codes or dispatch emergency responders.
Free providers often use the US Census Bureau “Tiger” data sets. Those are adequate for purposes that don’t require high degrees of accuracy.
Vendors such as MapInfo (owned by Pitney-Bowes) provide java and web services APIs that allow you to geocode addresses quickly and accurately. Oracle 9i or later with the Spatial Analysis Engine option will also do this.
For any geocoding tool, you also need to purchase any underlying street level database for the target countries. Typical vendors of these data sets are Teleatlas (now being acquired by TomTom), Navteq (being acquied by Nokia). Pitney-Bowes who formerly focused on postage meter hardware has been acquiring several geocoding and address standardization vendors and should be on any short list of vendors in this space.
Vendors:
Other resources:
Mark
#Integration-Server-and-ESB#Flow-and-Java-services#webMethods