I have all the data needed for geocoding -- do I still need Google?

I have a dataset (about 120k records) that is already complete with latitude, longitude, and full address (street, city, state, zip) in separate fields. Is there any way to use these individual elements to create a “geographic address” field in my Bubble database without hitting up Google? If I can bypass Google, I can save $400-500. Another alternative: Can I geocode and write to Bubble using another service like HERE or TravelTimePlatform instead of Google (because they are cheaper and/or I can use their free plans alongside Google’s $200 credit)? Thanks in advance for any knowledge of how to accomplish this. Seems like it should be doable.

Hi Edd. Did you ever manage to do this? I’m currently looking into various other geocoding options as Google’s pricing is horrific. Bing Places seems one of the cheapest I’ve found at the moment (I think it allows 125k free).

Does anyone know whether the geocode object can be sent to Bubble w/out the Google API call?

E.g. I have all the data from another DB/service, pass this to Bubble.

The manual is unclear about this: The Bubble API | Bubble Docs

  1. Geographic addresses: This data should be sent as a string ‘33 Nassau Avenue, Brooklyn, NY 11222,’ and Bubble will use the Google Map API to encode it as an address with a latitude and longitude. You can also send them as an object. { address: String lat: Number lng: Number }

Other options I assume we could create our own object.

When initializing the API call, manually set the datatype to text or something else and then send it to Google or a different API yourself? I think setting the datatype to geographical address might automatically use the google API but I’m not sure. Let me know what you find out.

Edit: Have you ever tried using API - OpenStreetMap Wiki ?

Thanks @jonah.deleseleuc , we’re still finding the geoadress from Google useful, although we have a very large number of items where we have this info already (address,ZIP, street, state etc.)

When imported to the DB, each one of these requires the Google API call to convert them to the GEO object, so there’s some potential savings there.

Okay, so then what I would do is save it to plain text in a text field. For example, address_text. Then, create a backend workflow called convert_address_text_to_geo of whatever you’d like but just make it publically accessible. Then set it up to take a text as an input in the API connector. When you initialize the call set the data type to geographical address. That way, when you want to save the text to DB you don’t perform the API call. Then when you need to use the Geo address in the frontend or elsewhere simply make the API call for that individual address.