The Google Maps Platform team regularly updates SDKs with new features, bug fixes, and
performance improvements. This page provides guidance on how to manage your dependencies
on mobile SDKs.
Which version to link to?
For mission-critical apps, link to the latest dot release of the major
version that you are using (X.*), and upgrade yearly to the new major version.
As you release new versions of your application
throughout the year, you may start using newer dot versions of the Maps SDK for iOS. This will
not require updates in your application as new dot versions are backward compatible.
Benefits:
If you discover issues in the Maps SDK for iOS, fixes will be provided in a
backward-compatible way for 12 months after the initial release of the major version, per
the Mobile support
policy. You will not need to urgently upgrade to an incompatible SDK version
to benefit from fixes.
The latest improvements and features are easy to adopt when your app is already built on
the latest version.
Annual incremental updates to the newest major version of the SDK may require less work
to adapt, rewrite, and test your application, than having to handle backwards-incompatible
changes introduced across multiple major version releases.
For non-critical apps, link to any fixed version. When you receive a deprecation
notice for that fixed version, you will have 12 months to make your updated app code available to
your users.
Benefits:
Less frequent maintenance work.
New versions of your app keep supporting users' devices running older mobile operating
systems for longer (until you need to upgrade to a new SDK version).
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.
Installation
Swift Package Manager
The Maps SDK for iOS can be installed via
Swift Package Manager. To add the SDK, ensure you have
removed any existing Maps SDK for iOS dependencies.
To add the SDK to a new or existing project, follow these steps:
Open your Xcode project or workspace, then go to File > Add Package Dependencies.
To install a specific version, set the Dependency Rule field to one of
the version-based options. For new projects, we recommend specifying the latest version and
using the "Exact Version" option. Once complete, click "Add Package".
To update the package for an existing project, follow these steps:
If you are upgrading from a version earlier than 9.0.0, you must remove
the following dependencies: GoogleMapsBase, GoogleMapsCore, and
GoogleMapsM4B after upgrading. Do not remove the dependency for
GoogleMaps. For more information, see the
Version 9.0.0 Release Notes.
From your Xcode project configuration settings, find Frameworks, Libraries,
and Embedded Content. Use the minus sign(-) to remove the following framework:
GoogleMapsBase (Only for upgrades from versions earlier than 9.0.0)
GoogleMapsCore (Only for upgrades from versions earlier than 9.0.0)
GoogleMapsM4B (Only for upgrades from versions earlier than 9.0.0)
From Xcode, go to "File > Packages > Update To Latest Package Versions".
To verify your installation, go to the Package Dependencies section of Project Navigator
to verify the package and its version.
To remove existing Maps SDK for iOS dependencies added using
CocoaPods, follow these steps:
Close your Xcode workspace. Open terminal and execute the following command:
Remove the Podfile, Podfile.resolved and the
Xcode workspace if you are not using them for anything other than CocoaPods.
CocoaPods
Always specify a version number in your dependencies instead of using an optimistic operator
(~>) since that can lead to unpredictable and unrepeatable builds. The
Maps SDK for iOS adheres to semantic versioning,
and new major version releases include breaking changes.
An example Podfile dependency using
Podfile syntax:
source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '16.0'
target 'YOUR_APPLICATION_TARGET_NAME_HERE' do
pod 'GoogleMaps', '10.2.0'
end
Maintenance and upgrade
To build with the latest improvements, regularly check for newer versions and update your version
specifications. If you are updating to a new major version, check the
release notes for backwards-incompatible changes and how to update your code.
In addition to polling for newer versions, Google Cloud
project
owners receive emails about backwards incompatible changes that may affect their projects. To
get proactive notification about backwards incompatible changes,
assign
the owner role with a monitored email address for each of your projects.
[null,null,["Last updated 2025-08-28 UTC."],[[["\u003cp\u003eFor critical applications, link to the latest dot release of the major Google Maps SDK for iOS version and upgrade to the new major version annually to ensure access to bug fixes and new features.\u003c/p\u003e\n"],["\u003cp\u003eNon-critical applications can link to any fixed version, allowing for less frequent maintenance, but requiring an update within 12 months of receiving a deprecation notice.\u003c/p\u003e\n"],["\u003cp\u003eThe Google Maps SDK for iOS can be installed via Swift Package Manager or CocoaPods; detailed instructions for both methods, along with version management guidance, are provided.\u003c/p\u003e\n"],["\u003cp\u003eRegular updates to the SDK are recommended, with release notes available to guide developers through any necessary code changes for compatibility.\u003c/p\u003e\n"],["\u003cp\u003eProject owners with monitored email addresses receive notifications about significant updates and changes, helping to ensure their applications remain up-to-date.\u003c/p\u003e\n"]]],["For app development using Google Maps SDK for iOS, link to the latest dot release for mission-critical apps and upgrade yearly, or use any fixed version for non-critical apps. To install, use Swift Package Manager or CocoaPods, adding the SDK via Xcode or specifying the version in your Podfile. Updating involves checking for newer versions, adjusting your Podfile or updating the package in Xcode. Always review release notes for compatibility and utilize provided links for the latest SDK information.\n"],null,["Select platform: [Android](/maps/documentation/android-sdk/versions \"View this page for the Android platform docs.\") [iOS](/maps/documentation/ios-sdk/versions \"View this page for the iOS platform docs.\") [JavaScript](/maps/documentation/javascript/versions \"View this page for the JavaScript platform docs.\")\n\nThe Google Maps Platform team regularly updates SDKs with new features, bug fixes, and\nperformance improvements. This page provides guidance on how to manage your dependencies\non mobile SDKs.\n\nWhich version to link to?\n\n- **For mission-critical apps**, link to the latest dot release of the major\n version that you are using (X.\\*), and upgrade yearly to the new major version.\n\n As you release new versions of your application\n throughout the year, you may start using newer dot versions of the Maps SDK for iOS. This will\n not require updates in your application as new dot versions are backward compatible.\n\n **Benefits:**\n - If you discover issues in the Maps SDK for iOS, fixes will be provided in a backward-compatible way for 12 months after the initial release of the major version, per the [Mobile support\n policy](https://developers.google.com/maps/software-support#sdk-support). You will not need to urgently upgrade to an *incompatible* SDK version to benefit from fixes.\n - The latest improvements and features are easy to adopt when your app is already built on the latest version.\n - Annual incremental updates to the newest major version of the SDK may require less work to adapt, rewrite, and test your application, than having to handle backwards-incompatible changes introduced across multiple major version releases.\n\n \u003cbr /\u003e\n\n- **For non-critical apps**, link to any fixed version. When you receive a deprecation\n notice for that fixed version, you will have 12 months to make your updated app code available to\n your users.\n\n **Benefits:**\n - Less frequent maintenance work.\n - New versions of your app keep supporting users' devices running older mobile operating systems for longer (until you need to upgrade to a new SDK version).\n\n \u003cbr /\u003e\n\nProject Owners with monitored email addresses receive proactive notifications about changes that\nimpact each of their projects. [Stay\ninformed](https://developers.google.com/maps/support#staying_informed) about major updates, deprecations, and other changes.\n\nInstallation \n\nSwift Package Manager\n\n\nThe Maps SDK for iOS can be installed via [Swift Package Manager](https://developer.apple.com/documentation/xcode/swift-packages). To add the SDK, ensure you have\nremoved any existing Maps SDK for iOS dependencies.\n\n| Important: These instructions assume the use of Xcode 15 or later, but should be similar for previous versions of Xcode.\n\n\u003cbr /\u003e\n\n\nTo add the SDK to a new or existing project, follow these steps:\n\n1. Open your Xcode `project` or `workspace`, then go to **File \\\u003e Add Package Dependencies**.\n2. Enter \u003chttps://github.com/googlemaps/ios-maps-sdk\u003e as the URL, press **Enter** to pull in the package, and click \"Add Package\".\n3. To install a specific `version`, set the **Dependency Rule** field to one of the version-based options. For new projects, we recommend specifying the latest version and using the \"Exact Version\" option. Once complete, click \"Add Package\".\n\nTo update the `package` for an existing project, follow these steps:\n\n1. **If you are upgrading from a version earlier than 9.0.0,** you must remove\n the following dependencies: `GoogleMapsBase`, `GoogleMapsCore`, and\n `GoogleMapsM4B` after upgrading. Do not remove the dependency for\n `GoogleMaps`. For more information, see the\n [Version 9.0.0 Release Notes](/maps/documentation/ios-sdk/release-notes#May_20_2024).\n\n From your Xcode project configuration settings, find **Frameworks, Libraries,\n and Embedded Content** . Use the **minus sign(-)** to remove the following framework:\n - `GoogleMapsBase` (Only for upgrades from versions earlier than 9.0.0)\n - `GoogleMapsCore` (Only for upgrades from versions earlier than 9.0.0)\n - `GoogleMapsM4B` (Only for upgrades from versions earlier than 9.0.0)\n2. From Xcode, go to \"File \\\u003e Packages \\\u003e Update To Latest Package Versions\".\n3. To verify your installation, go to the **Package Dependencies** section of **Project Navigator** to verify the package and its version.\n\n| **Important:** Sometimes, artifacts cannot be resolved or errors can occur, in this case select \"File \\\u003e Packages \\\u003e Reset Package Cache\".\n\n\u003cbr /\u003e\n\n\nTo remove existing Maps SDK for iOS dependencies added using\n`CocoaPods`, follow these steps:\n\n1. Close your Xcode workspace. Open terminal and execute the following command: \n\n ```swift\n sudo gem install cocoapods-deintegrate cocoapods-clean\n pod deintegrate\n pod cache clean --all\n ```\n2. Remove the `Podfile`, `Podfile.resolved` and the Xcode `workspace` if you are not using them for anything other than CocoaPods.\n\nCocoaPods\n\nAlways specify a version number in your dependencies instead of using an optimistic operator\n(`~\u003e`) since that can lead to unpredictable and unrepeatable builds. The\nMaps SDK for iOS adheres to [semantic versioning](https://semver.org),\nand new major version releases include breaking changes.\n\nAn example Podfile dependency using\n[Podfile](https://guides.cocoapods.org/using/the-podfile.html#specifying-pod-versions) syntax: \n\n```scdoc\nsource 'https://github.com/CocoaPods/Specs.git'\n\nplatform :ios, '16.0'\n\ntarget 'YOUR_APPLICATION_TARGET_NAME_HERE' do\n pod 'GoogleMaps', '10.2.0'\nend\n```\n\nMaintenance and upgrade\n\nTo build with the latest improvements, regularly check for newer versions and update your version\nspecifications. If you are updating to a new major version, check the\n[release notes](/maps/documentation/ios-sdk/releases) for backwards-incompatible changes and how to update your code.\n\nSwift Package Manager\n\nTo update the `package` for an existing project, follow these steps:\n\n1. To verify your installation, go to the **Package Dependencies** section of **Project Navigator** to verify the package and its version.\n\n| **Important:** Sometimes, artifacts cannot be resolved or errors can occur, in this case select \"File \\\u003e Packages \\\u003e Reset Package Cache\".\n\n\u003cbr /\u003e\n\nCocoapods\n\n1. Open a terminal and go to the directory containing the `Podfile`:\n\n ```text\n cd \u003cpath-to-project\u003e\n ```\n2. Run `pod outdated` to see if a newer version of the Maps SDK for iOS is available.\n3. If a newer version of the SDK is found, update your `Podfile` with this new version. See [Specifying pod versions](https://guides.cocoapods.org/using/the-podfile.html#specifying-pod-versions) to learn how to set a specific version in your `Podfile`.\n4. Run `pod update`.\n5. Make any necessary changes as a result of the upgrade. See the [Release Notes](/maps/documentation/ios-sdk/releases) for a list of the changes in each release.\n6. Clean and rebuild your project by selecting **Product \\\u003e Clean** and then **Product \\\u003e Build**\n\nManual installation\n\n[Get the link to the latest source files](/maps/documentation/ios-sdk/start#download-sdk)\nat Installing the SDK.\n\nIn addition to polling for newer versions, Google Cloud\n[project\nowners](https://cloud.google.com/iam/docs/understanding-roles#basic-definitions) receive emails about backwards incompatible changes that may affect their projects. To\nget proactive notification about backwards incompatible changes,\n[assign\nthe owner role](https://cloud.google.com/iam/docs/granting-changing-revoking-access) with a monitored email address for each of your projects."]]