Progress Map Ultimate renders maps with the Google Maps JavaScript API. Without a valid API key (and the right APIs enabled on your Google Cloud project), maps will not load correctly on the front end or in admin map fields.
What you need from Google Cloud
- A Google Cloud project
- Billing enabled on the project (Google provides a monthly credit; monitor usage)
- An API key restricted sensibly (HTTP referrers for browser keys)
- The required APIs enabled for that project
APIs commonly required
Exact needs depend on which features you use. At minimum for interactive maps:
- Maps JavaScript API
Often also required depending on features:
- Geocoding API — address → coordinates (admin & search)
- Places API — autocomplete / place-related features
- Directions API — Directions module / route features
- Distance Matrix API — some distance displays
Enable what your maps actually use; disable unused APIs to reduce risk and noise in Google’s console.
Create and restrict a key (overview)
- Open Google Cloud Console
- Create or select a project
- Enable the APIs listed above
- Create an API key under APIs & Services → Credentials
- Restrict the key:
- Optionally restrict the key to only the APIs you enabled
Keep a separate key for server-side use only if you later add strictly server geocoding; most Progress Map front-end usage is browser-side with referrer restriction.
Insert the key in Progress Map
- In WordPress admin, open Progress Map plugin settings (global settings screen).
- Find the field for the Google Maps API key.
- Paste the key and save.
After saving, reload a map edit screen and a front-end map page. The map canvas should initialize.
Verify it works
| Check | Expected |
|---|---|
| Map edit screen / location metabox | Map tiles load; you can pan/zoom |
| Front-end map page | Map loads; markers appear if locations exist |
| Browser console | No InvalidKey / RefererNotAllowedMapError / ApiNotActivatedMapError |
Common errors
- RefererNotAllowedMapError — add the exact site URL pattern to key restrictions
- ApiNotActivatedMapError — enable Maps JavaScript API (or the specific API named in the error)
- Billing not enabled — enable billing on the Google Cloud project
- Key works in admin but not front — different domain (www vs non-www) missing from referrers
Security tips
- Never commit API keys to public repositories
- Prefer referrer-restricted keys for WordPress sites
- Rotate the key if it was exposed
- Watch Google Cloud quotas if you have high traffic or heavy Places usage
