CocoaPods announced that they will become read-only in December 2026, after which new pod versions can no longer be published. The following sections provide more information about this change, and explain how to migrate your apps to other installation managers.
Overview
- What's changing? CocoaPods is moving to a read-only state, and Firebase will stop publishing new versions to CocoaPods in October 2026.
- Will my app break? No. Existing versions of Firebase libraries will remain available indefinitely on the CocoaPods registry, and your apps that use those CocoaPod versions will continue to function.
- Why migrate? To continue receiving the latest features, performance improvements, and critical fixes, you should migrate use to Swift Package Manager or manual installation.
To accommodate the announcement from CocoaPods, Firebase will stop publishing new versions to CocoaPods in October 2026. These changes impact all of the following pods and their subdependencies:
| Impacted Firebase pods | ||
|---|---|---|
Firebase |
FirebaseAuth |
FirebaseInstallations |
FirebaseABTesting |
FirebaseCore |
FirebaseMessaging |
FirebaseAI |
FirebaseCrashlytics |
FirebaseMLModelDownloader |
FirebaseAILogic |
FirebaseDatabase |
FirebasePerformance |
FirebaseAnalytics |
FirebaseFirestore |
FirebaseRemoteConfig |
FirebaseAppCheck |
FirebaseFunctions |
FirebaseStorage |
FirebaseAppDistribution |
FirebaseInAppMessaging |
These changes will additionally impact all Firebase distributions that wrap the native Firebase Apple SDK, including the Firebase Unity SDK, Firebase C++ SDK, and FlutterFire.
Migrate your Apple apps
If you're migrating other (non-Firebase) dependencies away from CocoaPods, note that it's industry best practice to use a single installation method for your entire project. Mixing CocoaPods and Swift Package Manager (SPM) within the same target can lead to complex dependency cycles and build errors. If your non-Firebase dependencies do not yet support SPM, using manual installation for Firebase libraries is the most stable way to consolidate your workflow as you migrate.
Swift Package Manager (SPM)
What is Swift Package Manager?
Swift Package Manager (SPM) is Apple's native tool for managing code
distribution. It's integrated directly into Xcode, eliminating the need for
external CLI tools like CocoaPods and simplifying your project structure by
removing the need for a .xcworkspace for most standard configurations.
Migrate to using Swift Package Manager
For most projects, migrating to Swift Package Manager does not require changing your application code unless your project has custom Xcode configurations or dependencies that make heavy use of CocoaPods install scripts.
Here's how to migrate to Swift Package Manager from CocoaPods:
- Verify that each of your app's dependencies support Swift Package Manager. All Firebase libraries support SPM, but you'll need to check SPM-support for your non-Firebase dependencies in their GitHub repositories or product pages. If some of your non-Firebase dependencies don't support SPM, then using manual installation instead of SPM is the most stable migration path away from CocoaPods.
- With Xcode closed, remove CocoaPods from your project:
- Uninstall your CocoaPods dependencies by running the following command in your project directory:
pod deintegrate
- Delete the CocoaPods-generated
.xcworkspace.
- Uninstall your CocoaPods dependencies by running the following command in your project directory:
- In Xcode, update your project with Swift Package Manager dependencies:
- Open your project's
.xcodeprojfile via Xcode. - Re-add your app dependencies using File > Add Package Dependencies.
- Open your project's
- Once the Firebase package is added, you can update the Firebase libraries you depend on by navigating to project settings in Xcode, selecting your app target, and updating the libraries under Frameworks, Libraries, and Embedded Content. Learn more about using SPM in Xcode in the Apple documentation.
Manual installation
What is manual installation?
Manual installation involves downloading the Firebase.zip archive, which
contains pre-compiled XCFrameworks for all Firebase products. This lets you
drag and drop specific SDKs directly into your Xcode project without using a
dependency manager.
Migrate to using manual installation
- With Xcode closed, remove CocoaPods from your project:
- Uninstall your CocoaPods dependencies by running the following command in your project directory:
pod deintegrate
- Delete the CocoaPods-generated
.xcworkspace.
- Uninstall your CocoaPods dependencies by running the following command in your project directory:
- Follow the steps in our installation guide to add Firebase to your project manually.
Migrate your Unity, C++, and Flutter apps
Firebase Unity SDK and FlutterFire
No action is required for most Unity and Flutter developers. Updating to the latest version of Firebase on Unity or Flutter will automatically migrate your underlying dependency manager on Apple platforms to Swift Package Manager.
Note that if you're managing non-Firebase dependencies via CocoaPods, you may need to migrate those manually.
Firebase C++ SDK
If you were including the underlying iOS dependencies via CocoaPods, you can follow the migration instructions above to update your Firebase CocoaPod dependencies to use Swift Package Manager instead.
FAQ
I need to keep using CocoaPods after October 2026. How do I keep my app running?
You can either use the old versions of Firebase pods or copy the Firebase podspecs from GitHub and host them in your own specs repository.
In either case, we recommend you migrate off CocoaPods as soon as possible. We will not provide official support for installing Firebase directly from the podspec after CocoaPods support is discontinued in October 2026. If you choose to host your own podspecs, you will be responsible for keeping them up-to-date.
Why is support for CocoaPods being discontinued in October 2026 when CocoaPods can be published until December 2026?
We chose October to ensure the final versions published to CocoaPods are stable before the registry locks in December. This timeline provides a necessary cushion to safely coordinate these final updates, and it ensures that cross-platform SDKs—which depend on the native SDK but have delayed release cycles—have plenty of time to prepare their own releases.
Will my app stop working if I don't update?
No, this deprecation only affects future releases of Firebase libraries. Existing versions in CocoaPods will remain installable and deployed apps using those pod versions will not be affected.
Does this affect project billing?
No.
I'm getting a "FirebaseLibrary not found" error when compiling my project after migrating to Swift Package Manager. How do I fix this?
Make sure you've added the Firebase package to your Xcode project.
When adding the Firebase package, Xcode will prompt you to add Firebase frameworks to your app's build targets. If you forget to add a framework during this step, you can always add it later in your target's settings under Build Phases > Link Binary with Libraries. If your project contains multiple targets, make sure you have Firebase added to the correct targets.
Will this transition break my CI/CD pipelines?
No, pipelines running pod install or pod update will continue to work for
existing versions. However, they will not pull any new Firebase library updates
released after October 2026.