Need help with ClusterKit?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

493 Stars 91 Forks MIT License 62 Commits 26 Opened issues


An iOS map clustering framework targeting MapKit, Google Maps and Mapbox.

Services available


Need anything else?

Contributors list

CI Status Version License Platform Swift Package Manager Carthage

ClusterKit is an elegant and efficiant clustering controller for maps. Its flexible architecture make it very customizable, you can use your own algorithm and even your own map provider.


  • Native supports of MapKit, GoogleMaps, Mapbox and YandexMapKit.
  • Comes with 2 clustering algorithms, a Grid Based Algorithm and a Non Hierarchical Distance Based Algorithm.
  • Annotations are stored in a QuadTree for efficient region queries.
  • Cluster center can be switched to Centroid, Nearest Centroid, Bottom.
  • Handles pin selection as well as drag and dropping.
  • Written in Objective-C with full Swift interop support.

|MapKit|GoogleMaps|Mapbox| |---|---|---| |MapKit|GoogleMaps|Mapbox|

Installation & Usage

Please follow the wiki for integration.

If you want to try it, simply run:

pod try ClusterKit

Or clone the repo and run

pod install
from the Examples directory first.

Provide the Google API Key in the AppDelegate in order to try it with GoogleMaps.

Provide the Mapbox Access Token in the AppDelegate in order to try it with Mapbox.

Provide the Yandex API Key in the AppDelegate in order to try it with YandexMapKit.


Assets by Hugo des Gayets.

Thanks @petropavel13 for the YandexMapKit integration.


ClusterKit is available under the MIT license. See the LICENSE file for more info.

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.