This page lists all Google Maps Platform products and features which are currently 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 the announcement date for the deprecation. The product, feature, or version will continue to be available throughout the deprecation period (typically 12 months). Once the deprecation period has elapsed, the product, feature, or version is expected to be decommissioned, and will no longer be available.
Project Owners with monitored email addresses receive proactive notifications about changes that impact each of their projects. Stay informed about major updates, deprecations, and other changes.
Deprecation in SDK versions
In SDKs and the Maps JavaScript API, feature deprecations are tied to version availability. New major versions declare breaking changes including feature deprecations and release notes indicate the maximum supporting version of each deprecated feature. You can continue to use the deprecated feature for as long as its maximum supporting SDK version is available. To upgrade to the next major version of the SDK, you must remove use of the deprecated feature from your code or migrate to its replacement.
Learn more about Maps JavaScript API version availability, which follows a quarterly release and decommissioning schedule.
See guidance on managing version dependencies with the Maps SDK for Android, Maps SDK for iOS, Places SDK for Android, and Places SDK for iOS.
Active deprecations
This section lists all products and features which are currently in a deprecation period.
KML Layer (Deprecated as of April 30, 2026)
The KmlLayer class is deprecated. For new projects, we recommend using
alternative methods to display KML data on the map. See the KML Layer Migration Guide for details.
- Data-driven styling for datasets: Upload your KML data as a dataset and use data-driven styling. Read the Datasets Overview.
- Third-party libraries: Use third-party libraries to parse KML and display it using the Data layer or other overlays.
Heatmap Layer (Deprecated as of May 27, 2025)
The Heatmap Layer functionality in the Maps JavaScript API is no longer supported due to low customer usage. This API was deprecated in May 2025 and is unavailable as of 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 the deck.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 the Maps SDK for Android have been automatically updated to the latest renderer. The legacy renderer is deprecated and is scheduled for decommissioning in April 2025. Follow the decommissioning progress in public issue 404999856.
Maps SDK for iOS: setMetalRendererEnabled (As of v9.0.0)
Since Apple has deprecated OpenGL support as of iOS 12 (2018), support for the
OpenGL renderer and the setMetalRendererEnabled boolean in the Maps SDK for
iOS is deprecated as of v9.0.0 , and will be unsupported in the major version
that will be released in the second quarter of 2025.
Instead, use the Metal renderer, which has been default since Maps SDK for iOS
v8.0.0, and remove setMetalRendererEnabled from your codebase.
google.maps.Marker in the Maps JavaScript API (Deprecated as of February 2024)
Advanced Markers (google.maps.marker.AdvancedMarkerElement) are better than google.maps.Marker in almost every way: easier to use, more performant, more accessible, more feature-rich, and more customizable. google.maps.Marker in the Maps JavaScript API is deprecated as of 3.56.
What do I need to do? Instead, use google.maps.marker.AdvancedMarkerElement. The minimum version of the Maps JavaScript API with google.maps.marker.AdvancedMarkerElement is 3.53.2. At this time, google.maps.Marker is not scheduled to be discontinued, but google.maps.marker.AdvancedMarkerElement is recommended over google.maps.Marker. While google.maps.Marker will continue to receive bug fixes for any major regressions, existing bugs in google.maps.Marker won't be addressed. At least 12 months notice will be given before support is discontinued.
GoogleMapsM4B SDK (Deprecated as of February 2024)
To streamline the SDK, the obsolete GoogleMapsM4B module in the Maps SDK for iOS is deprecated as of February 2024, and will be unsupported in the major version that will be released in the second quarter of 2025.
Since the GoogleMapsM4B module is related to an obsolete billing plan, it is
safe to remove dependencies on the legacy GoogleMapsM4B module in your app. If
you use CocoaPods to install the Maps SDK for iOS, remove the
GoogleMapsM4B pod from the list of dependencies in your Podfile. If you
manually install the Maps SDK for iOS, remove the GoogleMapsM4B
framework 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, the following request options are deprecated as of May 2023: bounds, location, and radius. Use locationBias and locationRestriction instead.
The feature will continue to work, and 12 months notice will be given before support is discontinued.
Places compatibility library for Places SDK for Android (As of March 31, 2022)
All versions of the Places compatibility library for
Places SDK for Android are deprecated as of March 31, 2022. We are
freezing development of the Places compatibility library on
Places SDK for Android v2.6.0 (specified in dependencies as
com.google.android.libraries.places:places-compat:2.6.0).
No new versions of this library will be released after this date. The only way to access features and bug fixes in Places SDK for Android above Version 2.6.0 will be to use the Places SDK for Android.
The Places compatibility library was introduced in January 2019 to facilitate the migration from the legacy SDK (available in Play Services) to the standalone Places SDK for Android.
Follow the migration guide to use the Places SDK for Android directly. Some status codes, method names, and Autocomplete class names are different between the Places compatibility library and the Places SDK for Android. See the Versions documentation for specifying and maintaining dependencies on versions of the Places 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 Places compatibility library, note the limitations on supporting old versions of an SDK.
Content Security Policy update (March 21, 2022 - May 2023)
Support for websites using Content Security Policy (CSP) that don't specify googleapis.com in the Maps JavaScript API is deprecated as of v3.49, and will be unsupported beginning with v3.50. The last supporting version, v3.49, will be decommissioned in Q2 2023 after which the Maps JavaScript API will reject all requests using CSP directives that don't specify googleapis.com.
To avoid disruption of your website experience, specify googleapis.com in your CSP. All currently available 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 iOS
v4.0.0, GMSPlaceField now uses the
NS_OPTIONS macro instead of NS_ENUM for better Swift support. Read more
about Migrating to GMSPlaceField as
NS_OPTIONS.
To continue using GMSPlaceField as NS_ENUM, specify
v3.10.0 or earlier in your
dependencies.
Places SDK for iOS methods: setAutocompleteBoundsUsingNorthEastCorner:SouthWestCorner, initWithBounds:filter (v3.10.0 - v4.0.0)
The
setAutocompleteBoundsUsingNorthEastCorner:SouthWestCorner
helper method is deprecated as of
v3.10.0, and is unsupported in
v4.0.0
and higher. Instead, use
locationBias,
or
locationRestriction.
The
initWithBounds:filter
method is deprecated as of v3.10.0, and is unsupported in
v4.0.0 and higher. Instead, use
initWithFilter:
in GMSAutocompleteFetcher.
The maximum supporting version for these deprecated methods is v3.10.0.
For details about replacement methods, see Appendix 1.
GMSCoordinateBounds in Place Autocomplete (v3.9.0 - v4.0.0)
Several properties andparameters using
GMSCoordinateBounds
in the Places SDK for iOS Autocomplete service, are deprecated as of
v3.9.0, and are unsupported in
v4.0.0
and higher. The maximum supporting version for the deprecated
properties and parameters is v3.10.0.
Bounds in GMSAutocompleteViewController
The following GMSAutocompleteViewController properties are deprecated:
GMSAutocompleteViewController.autocompleteBoundsGMSAutocompleteViewController.autocompleteBoundsMode
For equivalent functionality, use