Deprecations Stay organized with collections Save and categorize content based on your preferences.
AI-generated Key Takeaways
Google Maps Platform is deprecating and decommissioning various features across Maps, Routes, and Places, with most deprecations lasting 12 months.
Developers should migrate from legacy renderers and styling in the Maps SDK for Android and iOS to their modern equivalents.
The Places SDK is undergoing changes, with several fields and methods deprecated in favor of newer alternatives like
locationBiasandlocationRestriction.Obsolete features like the Local Context Library and Gaming Services have been decommissioned due to limited adoption.
Developers must update their applications to avoid disruptions, referencing the provided migration guides and detailed deprecation timelines.
This page lists all Google Maps Platform products and features which arecurrently in a deprecation period. This includes products under Maps, Routes,and Places.
How deprecation works
The deprecation period for a product, feature, or version begins on theannouncement date for the deprecation. The product, feature, or version willcontinue to be available throughout the deprecation period (typically 12months). Once the deprecation period has elapsed, the product, feature, orversion is expected to be decommissioned, and will no longer be available.
Project Owners with monitored email addresses receive proactive notificationsabout changes that impact each of their projects.Stayinformedabout major updates, deprecations, and other changes.
Key Term:Deprecated indicates that the product or feature should no longerbe used. Reasons for this may include:- A better alternative is available.
- The product or feature is nearing or at end of support.
- The product or feature is scheduled for decommissioning.
Deprecation in SDK versions
In SDKs and the Maps JavaScript API, feature deprecations are tiedto version availability. New major versions declare breaking changes includingfeature deprecations and release notes indicate the maximum supporting versionof each deprecated feature. You can continue to use the deprecated feature foras long as its maximum supporting SDK version is available. To upgrade to thenext major version of the SDK, you must remove use of the deprecated featurefrom your code or migrate to its replacement.
Learn more aboutMaps JavaScript API versionavailability, which follows aquarterly release and decommissioning schedule.
See guidance on managing version dependencies with theMaps SDK for Android,Maps SDK for iOS,Places SDK for Android, andPlaces SDK for iOS.
Active deprecations
This section lists all products and features which are currently in adeprecation period.
Drawing Library (Deprecated as of Aug 8, 2025)
Drawing Library functionality in the Maps JavaScript API will no longer be supported. This API was deprecated in August 2025 and will be made unavailable in a later version of the Maps JavaScript API, releasing in May 2026. Customers and applications relying on Drawing Library for their use cases will be impacted and will need to switch to using alternatives, for exampleTerra Draw.
45° Imagery (Deprecated as of May 27, 2025)
As of version 3.62, Maps JavaScript API satellite and hybrid map types will no longer automatically switch to 45° Imagery at higher zoom levels. Where 45° Imagery is available, the map will show the top-down satellite view even as the user zooms in. Calls to map.setTilt(45) will also be ineffective. Customers and applications relying on 45° Imagery for their use cases will be impacted and will need to switch to using alternatives, for example3D maps.
Heatmap Layer (Deprecated as of May 27, 2025)
The Heatmap Layer functionality in the Maps JavaScript API will no longer be supported due to low customerusage. This API was deprecated in May 2025 and will be made unavailable in a later version of the Maps JavaScript API, releasing in May 2026.
Applications currently using the Heatmap Layer to display heatmaps based on data points will need to be updated.
As a replacement for the Heatmap Layer, consider using third-party library integrations like deck.gl, which offers a HeatmapLayer implementation. You can find more information in thedeck.gl documentation.
Maps SDK for Android legacy renderer (Deprecated as of March 4, 2024)
To provide an improved user experience and app performance, apps built with theMaps SDK for Android have been automatically updated to thelatestrenderer. The legacy renderer isdeprecated and is scheduled for decommissioning in April 2025. Followthe decommissioning progress in public issue404999856.
Maps SDK for iOS: setMetalRendererEnabled (As of v9.0.0)
Since Apple has deprecated OpenGL support as of iOS 12 (2018), support for theOpenGL renderer and thesetMetalRendererEnabled boolean in the Maps SDK foriOS is deprecated as of v9.0.0 , and will be unsupported in the major versionthat will be released in the second quarter of 2025.
Instead, use the Metal renderer, which has been default since Maps SDK for iOSv8.0.0, and removesetMetalRendererEnabled from your codebase.
google.maps.Marker in the Maps JavaScript API (Deprecated as of February 2024)
Advanced Markers (google.maps.marker.AdvancedMarkerElement) are better thangoogle.maps.Marker in almost every way: easier to use, more performant, moreaccessible, more feature-rich, and more customizable. google.maps.Marker in theMaps JavaScript API is deprecated as of 3.56.
What do I need to do? Instead, usegoogle.maps.marker.AdvancedMarkerElement.The minimum version of the Maps JavaScript API withgoogle.maps.marker.AdvancedMarkerElement is 3.53.2. At this time,google.maps.Marker is not scheduled to be discontinued, butgoogle.maps.marker.AdvancedMarkerElement is recommended over google.maps.Marker.While google.maps.Marker will continue to receive bug fixes for any majorregressions, existing bugs in google.maps.Marker won't be addressed. At least 12months notice will be given before support is discontinued.
GoogleMapsM4B SDK (Deprecated as of February 2024)
To streamline the SDK, the obsolete GoogleMapsM4B module in theMaps SDK for iOS is deprecated as of February 2024, and will beunsupported in the major version that will be released in the second quarter of2025.
Since the GoogleMapsM4B module is related to an obsolete billing plan, it issafe to remove dependencies on the legacy GoogleMapsM4B module in your app. Ifyou use CocoaPods to install the Maps SDK for iOS, remove theGoogleMapsM4B pod from the list of dependencies in your Podfile. If youmanually install the Maps SDK for iOS, remove theGoogleMapsM4Bframework from your project.
Bounds, location, and radius in the Maps JavaScript API Place Autocomplete Service (Deprecated as of May 2023)
For the Place Autocomplete Service in the Maps JavaScript API, thefollowing request options are deprecated as of May 2023: bounds, location, andradius. Use locationBias and locationRestriction instead.
The feature will continue to work, and 12 months notice will be given beforesupport is discontinued.
Places compatibility library for Places SDK for Android (As of March 31, 2022)
All versions of the Places compatibility library forPlaces SDK for Android are deprecated as of March 31, 2022. We arefreezing development of the Places compatibility library onPlaces SDK for Android v2.6.0 (specified in dependencies ascom.google.android.libraries.places:places-compat:2.6.0).
No new versions of this library will be released after this date. The only wayto access features and bug fixes in Places SDK for Androidabove Version 2.6.0 will be to use the Places SDK for Android.
The Places compatibility library was introduced in January 2019 to facilitatethe migration from the legacy SDK (available in Play Services) to the standalonePlaces SDK for Android.
Followthe migrationguide to use thePlaces SDK for Android directly. Some status codes, method names, andAutocomplete class names are different between the Places compatibility libraryand the Places SDK for Android. See theVersions documentation forspecifying and maintaining dependencies on versions of thePlaces SDK for Android.
There is no plan to decommission the Places compatibility library at this time.However, if you choose to continue using available versions of the Placescompatibility library, note the limitations on supportingold versions of anSDK.
Content Security Policy update(March 21, 2022 - May 2023)
Support for websites usingContent Security Policy(CSP) that don't specify googleapis.com in theMaps JavaScript API is deprecated as of v3.49, and will beunsupported beginning with v3.50. The last supporting version, v3.49, will bedecommissioned in Q2 2023 after which the Maps JavaScript API willreject all requests using CSP directives that don't specify googleapis.com.
To avoid disruption of your website experience,specify googleapis.com in yourCSP. All currentlyavailable versions of the Maps JavaScript API support CSP.
Places SDK for iOS `GMSPlaceField` now uses the `NS_OPTIONS` macro (As of v4.0.0)
Starting with Places SDK for iOSv4.0.0,GMSPlaceField now uses theNS_OPTIONS macro instead ofNS_ENUM for better Swift support. Read moreaboutMigrating to GMSPlaceField asNS_OPTIONS.
To continue usingGMSPlaceField asNS_ENUM, specifyv3.10.0 or earlier in yourdependencies.
Places SDK for iOS methods: setAutocompleteBoundsUsingNorthEastCorner:SouthWestCorner, initWithBounds:filter (v3.10.0 - v4.0.0)
ThesetAutocompleteBoundsUsingNorthEastCorner:SouthWestCornerhelper method is deprecated as ofv3.10.0, and is unsupported inv4.0.0and higher. Instead, uselocationBias,orlocationRestriction.
TheinitWithBounds:filtermethod is deprecated as ofv3.10.0, and is unsupported inv4.0.0 and higher. Instead, useinitWithFilter:inGMSAutocompleteFetcher.
The maximum supporting version for these deprecated methods isv3.10.0.
For details about replacement methods, seeAppendix1.
GMSCoordinateBounds in Place Autocomplete (v3.9.0 - v4.0.0)
Several properties andparameters usingGMSCoordinateBoundsin the Places SDK for iOS Autocomplete service, are deprecated as ofv3.9.0, and are unsupported inv4.0.0and higher. The maximum supporting version for the deprecatedproperties and parameters isv3.10.0.
Bounds inGMSAutocompleteViewController
The followingGMSAutocompleteViewController properties are deprecated:
GMSAutocompleteViewController.autocompleteBoundsGMSAutocompleteViewController.autocompleteBoundsMode
For equivalent functionality, useGMSAutocompleteViewController.autocompleteFilter,with eitherGMSAutocompleteFilter.locationBiasorGMSAutocompleteFilter.locationRestriction.The minimum version of the Places SDK for iOS with thesereplacement properties is v3.8.0.
Bounds infindAutocompletePredictionsFromQuery andautocompleteQuery
- Parameters
boundsandboundsModefor:
For equivalent functionality, usefindAutocompletePredictionsFromQuery:filter:sessionToken:callbackwith eitherGMSAutocompleteFilter.locationBiasorGMSAutocompleteFilter.locationRestriction.The minimum version of the Places SDK for iOS with thesereplacement properties isv3.8.0.
For details about replacement methods, seeAppendix1.
Places fieldGMSPlace.openNowStatus (v3.0.0 - v4.0.0)
The Places field and propertyGMSPlace.openNowStatus in thePlaces SDK for iOS is deprecated as ofv3.0.0, and is unsupported inv4.0.0 and higher. The maximumsupporting version for the deprecated field isv3.10.0.
Instead, use functionsGMSPlace.isOpen orGMSPlace.isOpenAtDate.The minimum version of the Places SDK for iOS with these replacement functionsisv3.3.0.
Places field:permanently_closed (Deprecated on May 26, 2020)
The Places fieldpermanently_closed in the Places APIand Places Library, Maps JavaScript API is deprecated, and shouldn't be used.Instead, usebusiness_status(Places API) orbusiness_status(Places Library)to get the operational status of businesses. The minimum version ofPlaces Library, Maps JavaScript API withbusiness_status isv3.40.
Places fieldsopen_now,utc_offset (Deprecated on November 20, 2019)
The Places fieldsopen_now andutc_offset in thePlaces Library, Maps JavaScript API are deprecated as ofNovember 20, 2019, and shouldn't be used.
These fields are only deprecated in the Places Library, Maps JavaScript API.
- The
open_nowfield has been replaced byPlaceResult.opening_hours.isOpen()in Place Details. For Nearby Search and Text Search, use theopenNow:truerequest parameter to filter for places that are currently open.Noequivalent is provided for Find Place. To get this value, you must now makea Place Details request. - The
utc_offsetfield has been replaced byPlaceResult.utc_offset_minutesin Place Details.
SeePlaces FieldMigration to learnmore.
Maps JavaScript API:google.maps.event.addDomListener() andgoogle.maps.event.addDomListenerOnce() (Deprecated on April 7, 2022)
The functionsgoogle.maps.event.addDomListener()andgoogle.maps.event.addDomListenerOnce()in the Maps JavaScript API are deprecated, and shouldn't beused. Instead, use the standardaddEventListener()method.
These methods will continue to work and there is no plan to decommission them.
Completed deprecations
This section lists all products and features which have been decommissioned.These products and features are no longer available.
Local Context Library, Maps JavaScript API (Deprecated as of v3.51.2)
Due to the limited adoption of this beta feature,Local Context Library was discontinued in January2024.
If you are interested in building aLocal Context Library-like experience yourself, wesuggest that you check out the "Neighborhood Discovery" solution inQuickBuilder or use thePlaces Library, Maps JavaScript API.Code samples andcodelabsfor the Places Library can help you.
Legacy cloud-based maps styling (March 18, 2024 - March 25, 2025)
On March 25, 2025 the legacy map styles automatically migrated to thenext-generation of cloud-based maps styling. Some styling changes mayresult from this automatic migration.
SeeUpdate a map style to the latestversion toavoid any disruption in your map styles.
Google Maps Platform gaming services(October 18, 2021 - December 31, 2022)
Since the introduction of our gaming services in 2018, we were proud to launchinnovative new game experiences for developers. While we remain dedicated tosupporting the developer community, we've decommissioned Google Maps Platformgaming services as of December 31, 2022 due to limited adoption.
Maps Module in google.load (October 13, 2020 -October 13, 2021)
The service that provided the "Maps" module forgoogle.load was deprecated as of October 13, 2020, and turned off onOctober 13, 2021. Subsequent requests to load the "Maps" moduleingoogle.load will result in an error, and no map will load. See theMigration Guide formore information.
Obsolete place IDs (March 16, 2021 - January 13, 2025)
As of January 13, 2025, certain obsoleteplace IDsare no longer accepted by all Google Maps Platform APIs other than Places API(legacy), Maps Embed, NavSDK, and Maps URLs. AfterJanuary 13, 2025, any requests made using obsolete place IDs arerejected and return error codeINVALID_REQUEST. To prevent userexperience degradation,refreshall obsolete place IDs.
Maps SDK for iOS v2.5 and lower (January 2022 - January 2023)
The Maps SDK for iOS v2.5 and lower were decommissioned in January2023 which raised the minimum OS supported by Maps SDK for iOS to iOS8 and the minimum supported IDE to Xcode 8.
Google encourages you tospecifyand usethe latest version of the Maps SDK foriOS.
Maps JavaScript API v2 (May 19, 2010 - May 26, 2021)
Version 2 of the Maps JavaScript API is no longer available as ofMay 26, 2021. As a result, your site's v2 maps will stop working, and willreturn JavaScript errors. To continue using maps on your site, migrate to theMaps JavaScript API v3. Learn more aboutupgrading Your Maps JavaScript APIApplication from v2 to v3.
Places fields:reference,id,alt_id,scope (September 3, 2019 - August 10, 2020)
The Places fieldsid,alt_id, andscope are no longer available as ofAugust 10, 2020. The Places fieldreference is deprecated, and shouldn't beused.
- The
idresponse field has been replaced by theplace_idresponse field. - The
referenceresponse field has been replaced by theplace_idresponse,and shouldn't be used. - the
alt_idandscopefields have no equivalent, as they were only usedfor the Place Add service which was turned off in July 2018.
SeePlace fieldmigration for details.
iOS version 10, ARMv7 32-bit architecture in Maps SDK for iOS 5.0
As ofMaps SDK for iOS version5.0, iOS 10 and the ARMv7 32-bitarchitecture are no longer supported.
Places SDK for iOS
With the release ofPlaces SDK for iOS5.0,GMSCoordinateBounds isdecommissioned, replaced byGMSPlacesViewportInfo.
Fusion Tables Layer (Experimental) (December 3, 2018 - December 3, 2019)
The Fusion Tables Layer in the Maps JavaScript API was turned off on December 3,2019, and is no longer available as of version 3.38 (3.37 is the last version tosupport fusion tables).Learnmore.
Places SDKs for Android and iOS (January 29, 2019 - July 29, 2019)
Effective January 29, 2019, the upgraded Places SDKs for Androidand iOS replaced the existing versions of the Places SDKs. The current versionsof the Places SDK for iOS, the Places SDK for Android, andthe Place Picker, were deprecated as of January 29, 2019, and wereturned off on July 29, 2019.
- Update to the latest Places SDK for iOSversion.
- Update to the latest Places SDK for Androidversion.
- The Place Picker is no longer available as of July 29, 2019.
Place Add and Place Delete (June 30, 2017 - June 30, 2018)
Effective June 30, 2018, the Place Add and Place Delete features have beenturned off, and are no longer available.
Unsupported Place Search queriesin the Places API and Places Library, Maps JavaScript API(March 31, 2022 - March 31, 2023)
Unsupported Place Search queries for Text Search, Nearby Search, and Find Placein the Places API and Places Library, Maps JavaScript APIare deprecated as of March 31, 2022 and willreceiveINVALID_REQUEST error responses beginning onMarch 31, 2023.
ThePlaces API andPlaces Library, Maps JavaScript APIsupport three methods to find places:TextSearch,NearbySearch, andFindPlace. Each methodaccepts requests with supported combinations of parameters, and rejects mostrequests with combinations of parameters that are not supported.
A few combinations of unsupported parameters have not been properly rejected todate:
- Text Search requests with an empty or missing
queryparameter and withouta supportedtypeparameter. - Text Search requests with
query=*. - Nearby Search requests with
keyword=*. - Nearby Search requests with
name=*. - Find Place requests with
input=*.
These unsupported Place Search requests must be replaced with one of thefollowing:
Nearby Search requestswithout the
keyword(orname) parameter can be used to find nearbyestablishments. It is recommended to also use thetypeparameter with onesupported type (seeTable 1: Placetypes). Thisprovides the closest match to the current behavior of Text Search requestswith an empty or missingqueryparameter.Geocoding APIrequests with the
latlngparameter can be used to find the nearestaddresses. This provides the closest match to the current behavior of:- Text Search requests with
query=*. - Nearby Search requests with
keyword=*. - Nearby Search requests with
name=*. - Find Place requests with
input=*.
- Text Search requests with
Appendix 1: Summary of Places SDK for iOS deprecated API replacements
The following table shows the replacement method to use for each deprecatedmethod or property.
The minimum version of the Places SDK for iOS with thereplacement properties isv3.8.0.
Except as otherwise noted, the content of this page is licensed under theCreative Commons Attribution 4.0 License, and code samples are licensed under theApache 2.0 License. For details, see theGoogle Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2025-11-21 UTC.