You handle this โ not the client. Google Places keys are created under a Google Cloud project that you manage. Each client app gets its own project and its own restricted key. Sign in with applanta.dev@gmail.com.
Sign in with applanta.dev@gmail.com โ click the project dropdown at the top-left โ select New Project.
Use the client's business name slug โ e.g., faith-decor-catering or cuts-by-marcus. Click Create. Wait ~30 seconds for it to provision.
Left sidebar โ APIs & Services โ + Enable APIs and Services โ search bar.
Search "Places API" โ click the result โ click Enable. Required for address autocomplete and place search.
Search "Maps JavaScript API" โ Enable. Only needed if the app renders a visible map โ skip if it's autocomplete-only.
Left sidebar โ APIs & Services โ Credentials โ + Create Credentials โ API key. Copy the key before closing โ it looks like AIzaSy....
Click the new key โ under "Application restrictions" โ select HTTP referrers (websites) โ click Add an item โ add their app domain:
For Firebase: *.web.app/* and *.firebaseapp.com/*
For custom domain: *.theirdomain.com/*
Add localhost/* if you need to test locally.
Under "API restrictions" โ select "Restrict key" โ check only the APIs you enabled (Places API + Maps JavaScript API if applicable) โ click Save.
The key is safe to include in front-end HTML since it's domain-restricted. It goes in the Google Maps/Places script tag in the app's <head>:
<script src="https://maps.googleapis.com/maps/api/js?key=AIzaSy...&libraries=places"></script>
Save to: OneDrive/Client-Builds/[BusinessName]/google-places-key.txt with the project ID noted alongside.
Google gives every project $200/mo free credit. That covers roughly 10,000 autocomplete requests per month. A typical small business app won't come close to this. No unexpected charges for standard usage. Enable billing alerts in Cloud Console just in case.