Select platform: [Android](https://developers.google.com/maps/documentation/android-sdk/advanced-markers/start.md.txt "View this page for the Android platform docs.") [iOS](https://developers.google.com/maps/documentation/ios-sdk/advanced-markers/overview.md.txt "View this page for the iOS platform docs.") [JavaScript](https://developers.google.com/maps/documentation/javascript/advanced-markers/start.md.txt "View this page for the JavaScript platform docs.")

<br />

Follow these steps to get set up with advanced markers.

## Enable the new map renderer

An upgraded map renderer is available as of version 18.0.0 of the
Maps SDK for Android. This renderer brings many improvements, including
support for Cloud-based maps styling, to Maps SDK for Android.

With the release of version 18.2.0 of the Maps SDK for Android, Google switched the
default renderer from the legacy renderer to the upgraded map renderer. This
change means that the upgraded map renderer is now used by default in your app
when you build a new app or rebuild an existing app.

> [!CAUTION]
> **Caution:** To use advanced markers in your app, your app must be built using the upgraded map renderer. If you are adding advanced markers to an existing app, ensure that you rebuild the app so that your app uses the upgraded map renderer. For more information, see [New Map Renderer](https://developers.google.com/maps/documentation/android-sdk/renderer.md.txt).

## Create a map ID

To create a new map ID, follow the steps at
[Create a map ID](https://developers.google.com/maps/documentation/get-map-id#create-a-map-id). Make sure you
set the Map type to **Android**.

> [!IMPORTANT]
> **Important:** For testing, you can skip the step of creating and configuring a map ID by using a map ID of `DEMO_MAP_ID` in your app code. `DEMO_MAP_ID` is intended for testing purposes only. Don't use `DEMO_MAP_ID` in a production environment.

## Update your map initialization code

This step requires the map ID you just created. It can be found on your [Maps
Management](https://console.cloud.google.com/google/maps-apis/studio/maps) page.

To add the map ID to your initialization code, see
[Add the map ID to your app](https://developers.google.com/maps/documentation/get-map-id#add-a-map-id-to-your-app).

## Check map capabilities (required)

Advanced markers requires a map ID. If the map ID is missing, or an
invalid map ID is passed, advanced markers cannot load. Use
the
[`MapCapabilities.isAdvancedMarkersAvailable()`](https://developers.google.com/android/reference/com/google/android/gms/maps/model/MapCapabilities.md.txt)
method to check to see if advanced markers are supported.

> [!CAUTION]
> **Caution:** Some devices might not support the new map renderer and therefore cannot display advanced markers. You must use `MapCapabilities` to check for support at runtime. If advanced markers are not supported, define a fallback option such as using standard [markers](https://developers.google.com/maps/documentation/android-sdk/marker.md.txt). For device requirements for the new map renderer, see [Supported
> devices](https://developers.google.com/maps/documentation/android-sdk/renderer#supported-devices).

### Kotlin


```kotlin
val capabilities: MapCapabilities = googleMap.getMapCapabilities()
System.out.println("is advanced marker enabled?" + capabilities.isAdvancedMarkersAvailable())
```

<br />

### Java


```java
MapCapabilities capabilities = googleMap.getMapCapabilities();
System.out.println("is advanced marker enabled?" + capabilities.isAdvancedMarkersAvailable());
```

<br />

## Next steps

[Create an advanced marker](https://developers.google.com/maps/documentation/android-sdk/advanced-markers/add-marker.md.txt)