<!--
{
  "availability" : [
    "iOS: 11.0.0 -",
    "iPadOS: 11.0.0 -",
    "macCatalyst: 13.1.0 -",
    "macOS: 10.13.0 -",
    "tvOS: 11.0.0 -",
    "visionOS: 1.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "MapKit",
  "identifier" : "/documentation/MapKit/MKMapViewDelegate/mapView(_:clusterAnnotationForMemberAnnotations:)",
  "metadataVersion" : "0.1.0",
  "role" : "Instance Method",
  "symbol" : {
    "kind" : "Instance Method",
    "modules" : [
      "MapKit"
    ],
    "preciseIdentifier" : "c:objc(pl)MKMapViewDelegate(im)mapView:clusterAnnotationForMemberAnnotations:"
  },
  "title" : "mapView(_:clusterAnnotationForMemberAnnotations:)"
}
-->

# mapView(_:clusterAnnotationForMemberAnnotations:)

Asks the delegate to provide a cluster annotation object for the specified annotations.

```
optional func mapView(_ mapView: MKMapView, clusterAnnotationForMemberAnnotations memberAnnotations: [any MKAnnotation]) -> MKClusterAnnotation
```

## Parameters

`mapView`

The map view containing the specified annotations.

`memberAnnotations`

The annotations for the map to cluster together. The returned [`MKClusterAnnotation`](/documentation/MapKit/MKClusterAnnotation) object needs to include the specific annotations in this parameter.

## Return Value

The cluster annotation object.

## Discussion

Use this method to customize the cluster annotations that display on your map. Typically, MapKit creates cluster annotation objects automatically when one or more annotations with the same cluster identifier are too close together. However, you can implement this method and return a custom cluster annotation object for the specified set of annotations.

---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)