Skip to content
← All setup steps

Google Cloud

Maps, address search, and “Sign in with Google”.

Three features in your app come from Google Cloud: the map on property listings, address autocomplete when someone searches, and "Sign in with Google".

You'll be in the same Google account as your Firebase project — Firebase creates a Google Cloud project behind the scenes, so you may find it already there.

Budget half an hour.

Costs

Maps and Places are billed per use, and Google requires a billing account on file even for free usage. Every Google Cloud account gets a recurring monthly credit for Maps — enough that a typical property app costs nothing.

Set a budget alert anyway: Billing → Budgets & alerts. A modest monthly cap with an email alert means a surprise can never become an expensive surprise.

Turn on the APIs

At console.cloud.google.com, with your project selected, go to APIs & Services → Library and enable:

  • Maps SDK for Android
  • Maps SDK for iOS
  • Places API

Create the keys

APIs & Services → Credentials → Create credentials → API key, three times. Name them so you can tell them apart:

Key Restrict it to
Maps — Android Android apps, using your package name
Maps — iOS iOS apps, using your bundle ID
Places Both, or leave unrestricted if the option isn't offered

Restrict every key. On each key: Application restrictions → choose Android or iOS → add your package name or bundle ID.

This matters. API keys inside a mobile app can be extracted by anyone who downloads it — that's true of every app on both stores, not just yours. A restricted key is useless to anyone else because Google checks it came from your app. An unrestricted key can be lifted and billed to you.

For the Android key you'll also need a SHA-1 fingerprint, which comes from our signing key. Ask us and we'll send it. If you're creating the key before you have it, leave the restriction off and tell us — we'll finish it once the app exists.

Sign in with Google

APIs & Services → Credentials → Create credentials → OAuth client ID.

You'll be asked to configure the consent screen first if you haven't already: pick External, fill in your app name, support email and a link to your privacy policy.

Create three clients:

  1. Android — needs your package name and the same SHA-1 fingerprint
  2. iOS — needs your bundle ID
  3. Web — needed by the sign-in library even though your app isn't a website. Create it and send it over; it doesn't need any configuration.

The third one confuses people every time. It's genuinely required.

What to send us

Value Notes
Maps key — Android
Maps key — iOS
Places key
OAuth client ID — Android
OAuth client ID — iOS
OAuth client ID — Web ends in .apps.googleusercontent.com

These are identifiers rather than passwords, and they're restricted to your app, so ordinary email is acceptable. If you'd rather use one of the safe methods on the checklist, that's fine too.

If you'd prefer we set all of this up, add us to your Google Cloud project as Editor and say so — it's the fiddliest page in this whole guide and we're happy to do it.