NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
pub.dev · #263 most downloaded on pub.dev
Flutter plugin for Google Analytics for Firebase, an app measurement solution that provides insight on app usage and user engagement on Android and iOS.
Last release 24 days ago
14 Sep 2026
Ships on a steady schedule
a new release about every 3 weeks
Nearly every release is documented
notes for 60 of the last 60 stable releases
Nothing withdrawn
no release was ever pulled
9 years old
217 releases · first in 2017
Update a dependency to the latest release.
FIX: update all Dart SDK version constraints to Dart >= 2.16.0 (#8184).
One column per quarter.
DOCS: code comment typo - logAdImpression mentions wrong event (#8180).
logAdImpression mentions wrong event (#8180). (960a75a7)FEAT(auth,ios): add support for migrateCurrentUser (#18460).
FirebaseAnalyticsObserver so that it also fires events when the modal route changes. (#7711). (f3bb2055)FIX: bump Android compileSdkVersion to 31 (#7726).
compileSdkVersion to 31 (#7726).NSNull should be converted to nil on iOS/macOS (#7810).setUserProperty should now accept null as a valid value on Android (#7735).compileSdkVersion to 31 (#7726). (a9562bac)NSNull should be converted to nil on iOS/macOS (#7810). (f588cf38)setUserProperty should now accept null as a valid value on Android (#7735). (c2237acb)REFACTOR: fix all unnecessary_import analyzer issues introduced with Flutter 2.8.
unnecessary_import analyzer issues introduced with Flutter 2.8.FIX: ensure setDefaultEventParameters() API throws stating not supported on web. (#7522).
setDefaultEventParameters() API throws stating not supported on web. (#7522).DOCS(auth): clarify behavior of password reset email with email enumeration protection enabled (#18296).
FIX: use jsify() with event parameters for logEvent() so they are sent (#7509).
jsify() with event parameters for logEvent() so they are sent (#7509).Bump platform interface a major version due to pigeon dependency update
Bump platform interface a major version due to pigeon dependency update
REFACTOR: move all packages to workspace (#18182). (6cdfcb10)
FIX: update core, auth and app-check logic so internal resources on method channels are properly disposed (#18268). (a0de4ed8)
FEAT(auth,android): add revokeAccessToken support for Android (#18206) (#18207). (7e0a2227)
Note: This release has breaking changes.
As part of our on-going work for #6769 this is our Firebase Analytics rework changes.
Overall, Firebase Analytics has been heavily reworked to bring it inline with the federated plugin setup along with adding new features, documentation and updating unit and end-to-end tests.
DEPRECATED: FirebaseAnalytics.android namespace has been deprecated in favour of calling setSessionTimeoutDuration() directly: FirebaseAnalytics.instance.setSessionTimeoutDuration(const Duration(milliseconds: 2000)).
DEPRECATED: logEcommercePurchase() has been deprecated in favour of using logPurchase().
DEPRECATED: logPresentOffer() has been deprecated in favour of using logViewPromotion().
DEPRECATED: logPurchaseRefund() has been deprecated in favour of using logRefund().
DEPRECATED: logSetCheckoutOption() has been deprecated.
BREAKING FEAT: update Android minSdk version to 19 as this is required by Firebase Android SDK 29.0.0 (#7298).
BREAKING: FirebaseAnalyticsObserver() class has been removed.
BREAKING: Constructing a FirebaseAnalytics instance is now deprecated, use FirebaseAnalytics.instanceFor (web only) or FirebaseAnalytics.instance instead.
BREAKING: logAddPaymentInfo() updated parameters to be logged in Analytics console.
BREAKING: logAddToCart() updated parameters to be logged in Analytics console.
BREAKING: logAddToWishlist() updated parameters to be logged in Analytics console.
BREAKING: logBeginCheckout() updated parameters to be logged in Analytics console.
BREAKING: logRemoveFromCart() updated parameters to be logged in Analytics console.
BREAKING: logViewItem() updated parameters to be logged in Analytics console.
BREAKING: logViewItemList() updated parameters to be logged in Analytics console.
NEW: logAddShippingInfo() added support for logging shipping information.
NEW: logAdImpression() added support for logging ad impression.
NEW: logPurchase() added support for logging a purchase.
NEW: logRefund() added support for logging a refund.
NEW: logScreenView() added support for logging a screen view.
NEW: logSelectItem() added support for logging a item that has been selected.
NEW: logSelectPromotion() added support for logging a promotion that has been selected.
NEW: logViewCart() added support for logging a view of the current cart.
NEW: logViewPromotion() added support for logging a view of the current promotion.
NEW: setConsent() added support for setting the applicable end user consent state (e.g., for device identifiers) for the app on this device.
NEW: setDefaultEventParameters() added support for setting default parameters that will be set on every event logged from the SDK, including automatic ones.
Nothing published for this version
FEAT: automatically inject Firebase JS SDKs (#7359).
FEAT: add macOS support (#7313).
FEAT: support initializing default FirebaseApp instances from Dart (#6549).
FirebaseApp instances from Dart (#6549).FIX: ignore emulator already set error on web (hot restart issue) (#7483).
DEPRECATED: FirebaseDatabase() has now been deprecated in favor of FirebaseDatabase.instanceFor().
Realtime Database has been fully reworked to bring the plugin inline with the federated plugin setup, a more familiar API, better documentation and many more unit and end-to-end tests.
General
Fixed an issue where providing a Map with int keys would crash.
FirebaseDatabase
DEPRECATED: FirebaseDatabase() has now been deprecated in favor of FirebaseDatabase.instanceFor().
DEPRECATED: reference() has now been deprecated in favor of ref().
NEW: Added support for ref(), which allows you to provide an optional path to any database node rather than calling child().
NEW: Add emulator support via useDatabaseEmulator().
NEW: Add support for refFromURL().
BREAKING: setPersistenceEnabled() is now synchronous.
BREAKING: setPersistenceCacheSizeBytes() is now synchronous.
BREAKING: setLoggingEnabled() is now synchronous.
DatabaseReference
BREAKING: parent is now a getter (inline with the JavaScript API).
BREAKING: root is now a getter (inline with the JavaScript API).
BREAKING: set() now accepts an Object? value (rather than dynamic) and no longer accepts a priority.
NEW: Added support for setWithPriority().
NEW: Added support for locally applying transaction results via the applyLocally property on runTransaction.
Query
NEW: once() now accepts an optional DatabaseEventType (rather than just subscribing to the value).
BREAKING: limitToFirst() now asserts the value is positive.
BREAKING: limitToLast() now asserts the value is positive.
OnDisconnect
set() now accepts an Object? value (rather than dynamic) and no longer accepts a priority.setWithPriority().Event
BREAKING: The Event class returned from database queries has been renamed to DatabaseEvent.
NEW: DatabaseEvent (old Event)
The DatabaseEventType is now returned on the event.
The previousChildKey is now returned on the event (previously called previousSiblingKey).
NEW: DatabaseEventType
A DatabaseEventType is now returned from a DatabaseEvent.
DataSnapshot
NEW: Added support for accessing the priority via the .priority getter.
NEW: Added support for determining whether the snapshot has a child via hasChild().
NEW: Added support for accessing a snapshot child node via child().
NEW: Added support for iterating the child nodes of the snapshot via the .children getter.
snapshot.value are no longer pre-sorted when using order queries, use .children
if you need to iterate over your value keys in order.TransactionResult
BREAKING: The result of a transaction no longer returns a DatabaseError, instead handle errors of a transaction via a Future completion error.
NEW: Transaction
Transaction.success(value) return this from inside your TransactionHandler to indicate a successful execution.Transaction.abort() return this from inside your TransactionHandler to indicate that the transaction should be aborted.TransactionHandler
Transaction either via Transaction.success() or Transaction.abort().DatabaseError
BREAKING: The DatabaseError class has been removed. Errors are now returned as a FirebaseException inline with the other plugins.
REFACTOR: remove deprecated Flutter Android v1 Embedding usages, including in example app (#7158).
DOCS: boolean parameters are not supported for GA custom definitions. (#7037).
FIX: Fix incorrect type name in error message (#6917).
Update a dependency to the latest release.
STYLE: enable additional lint rules (#6832).
FEAT: automatically inject Firebase JS SDKs (#7359).
Update a dependency to the latest release.
REFACTOR(core,android): migrate native implementation to Kotlin (#18570).
FEAT(appcheck): rCE provider api update (#18505).
setCurrentScreen internal method usage with new logEvent name.DOCS(cloud_firestore): Remove Incorrect API Documentation (#18423).
DOCS: remove invalid codelabs link.
Update a dependency to the latest release.
REFACTOR: remove deprecated Flutter Android v1 Embedding usages, including in example app (#7158).
List values would error on transaction result (#7001).Packages with breaking changes:
Packages with breaking changes:
Packages with other changes:
cloud_firestore - v6.7.0cloud_firestore_platform_interface - v8.0.4cloud_firestore_web - v5.7.0cloud_functions_platform_interface - v6.0.4firebase_ai - v3.14.0firebase_auth - v6.5.5firebase_core - v4.12.0cloud_functions - v6.3.4cloud_functions_web - v5.1.10firebase_data_connect - v0.3.0+6_flutterfire_internals - v1.3.74firebase_analytics - v12.4.4firebase_analytics_platform_interface - v6.0.4firebase_analytics_web - v0.6.1+10firebase_app_check - v0.4.5+1firebase_app_check_platform_interface - v0.4.1+1firebase_app_check_web - v0.2.5+1firebase_app_installations - v0.4.2+5firebase_app_installations_platform_interface - v0.1.4+73firebase_app_installations_web - v0.1.7+10firebase_auth_platform_interface - v9.0.4firebase_auth_web - v6.2.4firebase_crashlytics - v5.2.5firebase_crashlytics_platform_interface - v3.8.25firebase_database - v12.4.5firebase_database_platform_interface - v0.4.0+4firebase_database_web - v0.2.7+11firebase_in_app_messaging - v0.9.2+5firebase_in_app_messaging_platform_interface - v0.2.5+25firebase_messaging - v16.4.2firebase_messaging_platform_interface - v4.9.1firebase_messaging_web - v4.2.2firebase_ml_model_downloader - v0.4.2+5firebase_ml_model_downloader_platform_interface - v0.1.5+25firebase_performance - v0.11.4+4firebase_performance_platform_interface - v0.2.0+4firebase_performance_web - v0.1.8+10firebase_remote_config - v6.5.4firebase_remote_config_platform_interface - v3.0.4firebase_remote_config_web - v1.10.11firebase_storage - v13.4.4firebase_storage_platform_interface - v6.0.4firebase_storage_web - v3.11.10Packages with dependency updates only:
Packages listed below depend on other packages in this workspace that have had changes. Their versions have been incremented to bump the minimum dependency versions of the packages they depend upon in this project.
cloud_functions - v6.3.4cloud_functions_web - v5.1.10firebase_data_connect - v0.3.0+6_flutterfire_internals - v1.3.74firebase_analytics - v12.4.4firebase_analytics_platform_interface - v6.0.4firebase_analytics_web - v0.6.1+10firebase_app_check - v0.4.5+1firebase_app_check_platform_interface - v0.4.1+1firebase_app_check_web - v0.2.5+1firebase_app_installations - v0.4.2+5firebase_app_installations_platform_interface - v0.1.4+73firebase_app_installations_web - v0.1.7+10firebase_auth_platform_interface - v9.0.4firebase_auth_web - v6.2.4firebase_crashlytics - v5.2.5firebase_crashlytics_platform_interface - v3.8.25firebase_database - v12.4.5firebase_database_platform_interface - v0.4.0+4firebase_database_web - v0.2.7+11firebase_in_app_messaging - v0.9.2+5firebase_in_app_messaging_platform_interface - v0.2.5+25firebase_messaging - v16.4.2firebase_messaging_platform_interface - v4.9.1firebase_messaging_web - v4.2.2firebase_ml_model_downloader - v0.4.2+5firebase_ml_model_downloader_platform_interface - v0.1.5+25firebase_performance - v0.11.4+4firebase_performance_platform_interface - v0.2.0+4firebase_performance_web - v0.1.8+10firebase_remote_config - v6.5.4firebase_remote_config_platform_interface - v3.0.4firebase_remote_config_web - v1.10.11firebase_storage - v13.4.4firebase_storage_platform_interface - v6.0.4firebase_storage_web - v3.11.10FIX: support complex data structures like list and map on Android (#4394).
FIX: remove screen_view from reservedEventNames (#4251).
> Note: This release has breaking changes.
Note: This release has breaking changes.
Update a dependency to the latest release.
FEAT(appcheck): appcheck reCAPTCHA mobile support (gradually rolling out) (#18261).
firebase_core.FIX(core,iOS): use namespaced iOS Pigeon header import (#18281).
Bump platform interface a major version due to pigeon dependency update
FIX(auth,web): convert Auth errors that omit customData without throwing (#18686).
com.android.tools.build & 'com.google.gms:google-services versions (#4269).REFACTOR: move all packages to workspace (#18182).
compileSdkVersion to 29 in preparation for upcoming Play Store requirement.FIX(functions,web): fix a crash that could happen with the Int64 type (#18066).
FIX: a bug with the demoProjectId arg to Firebase.initializeApp() (#17703).
DOCS(firebase_core): correct androidClientId docs (was incorrectly labeled iOS-only)\n\n- Clarify as Android OAuth client ID\n- Note it is used on And
Bump platform interface a major version due to pigeon dependency update
firebase_core.firebase_core.Nothing published for this version
Endorse firebase_analytics_web.
firebase_analytics_web.* Use the platform interface.
Update lower bound of dart dependency to 2.0.0.
Fix overrides a deprecated API.
Keep a local registrar to get activity for foreground actions for v1 embedder.
FIX: fix an issue where the status of the dynamic link was not properly reported (#10100).
author: field from pubspec.yamlUpdated README instructions for contributing for consistency with other Flutterfire plugins.
Packages with breaking changes:
Packages with breaking changes:
Packages with other changes:
cloud_firestore - v4.12.2firebase_core - v2.21.0firebase_storage_platform_interface - v5.0.1cloud_firestore_odm - v1.0.0-dev.74cloud_firestore_odm_generator - v1.0.0-dev.74firebase_in_app_messaging - v0.7.4+3firebase_in_app_messaging_platform_interface - v0.2.4+11_flutterfire_internals - v1.3.11firebase_auth - v4.12.1firebase_auth_platform_interface - v7.0.3firebase_auth_web - v5.8.6firebase_dynamic_links_platform_interface - v0.2.6+11firebase_remote_config - v4.3.3firebase_remote_config_platform_interface - v1.4.11firebase_dynamic_links - v5.4.3firebase_remote_config_web - v1.4.11cloud_firestore_web - v3.8.3cloud_firestore_platform_interface - v6.0.3firebase_app_installations_web - v0.1.3+11firebase_messaging_web - v3.5.12firebase_messaging_platform_interface - v4.5.12firebase_app_installations_platform_interface - v0.1.4+11firebase_app_installations - v0.2.4+3firebase_messaging - v14.7.3firebase_database_web - v0.2.3+11firebase_database - v10.3.3firebase_database_platform_interface - v0.2.5+11firebase_analytics_web - v0.5.5+5firebase_crashlytics_platform_interface - v3.6.11firebase_ml_model_downloader_platform_interface - v0.1.4+11firebase_analytics - v10.6.3firebase_ml_model_downloader - v0.2.4+3firebase_crashlytics - v3.4.3firebase_analytics_platform_interface - v3.7.5firebase_app_check - v0.2.1+3firebase_app_check_platform_interface - v0.1.0+5firebase_storage_web - v3.6.12firebase_app_check_web - v0.1.0+5cloud_functions_platform_interface - v5.5.6cloud_functions - v4.5.3firebase_performance_web - v0.1.4+11firebase_performance_platform_interface - v0.1.4+11cloud_functions_web - v4.6.6firebase_storage - v11.4.1firebase_performance - v0.9.3+3Packages with dependency updates only:
Packages listed below depend on other packages in this workspace that have had changes. Their versions have been incremented to bump the minimum dependency versions of the packages they depend upon in this project.
cloud_firestore_odm - v1.0.0-dev.74cloud_firestore_odm_generator - v1.0.0-dev.74firebase_in_app_messaging - v0.7.4+3firebase_in_app_messaging_platform_interface - v0.2.4+11_flutterfire_internals - v1.3.11firebase_auth - v4.12.1firebase_auth_platform_interface - v7.0.3firebase_auth_web - v5.8.6firebase_dynamic_links_platform_interface - v0.2.6+11firebase_remote_config - v4.3.3firebase_remote_config_platform_interface - v1.4.11firebase_dynamic_links - v5.4.3firebase_remote_config_web - v1.4.11cloud_firestore_web - v3.8.3cloud_firestore_platform_interface - v6.0.3firebase_app_installations_web - v0.1.3+11firebase_messaging_web - v3.5.12firebase_messaging_platform_interface - v4.5.12firebase_app_installations_platform_interface - v0.1.4+11firebase_app_installations - v0.2.4+3firebase_messaging - v14.7.3firebase_database_web - v0.2.3+11firebase_database - v10.3.3firebase_database_platform_interface - v0.2.5+11firebase_analytics_web - v0.5.5+5firebase_crashlytics_platform_interface - v3.6.11firebase_ml_model_downloader_platform_interface - v0.1.4+11firebase_analytics - v10.6.3firebase_ml_model_downloader - v0.2.4+3firebase_crashlytics - v3.4.3firebase_analytics_platform_interface - v3.7.5firebase_app_check - v0.2.1+3firebase_app_check_platform_interface - v0.1.0+5firebase_storage_web - v3.6.12firebase_app_check_web - v0.1.0+5cloud_functions_platform_interface - v5.5.6cloud_functions - v4.5.3firebase_performance_web - v0.1.4+11firebase_performance_platform_interface - v0.1.4+11cloud_functions_web - v4.6.6firebase_storage - v11.4.1firebase_performance - v0.9.3+3FIX(firestore,macos): add Nonull decorator to PigeonParser to remove warnings when building (#12930).
TestWidgetsFlutterBinding.ensureInitialized.BREAKING FEAT(firestore): remove deprecated functions (#17559).
setMinimumSessionDuration.FirebaseAnalyticsAndroid.setAnalyticsCollectionEnabled. Use
FirebaseAnalytics.setAnalyticsCollectionEnabled instead.DOCS(firebase_remote_config): add documentation what is returned when the key does not exist for getBool, getInt, getDouble and getString (#10573).
FIX(firestore,web): ensure streams are removed on "hot restart" (#12913).
BREAKING REFACTOR(firebaseai): Removed deprecated Imagen methods and types due to Imagen models being shut down (#18577).
logLevelStartlogLevelEndlogRemoveFromCartlogSetCheckoutOptionmethod to logShare event tracking.ad_activeviewad_clickad_exposuread_impressionad_queryadunit_exposurefirst_visitscreen_viewREFACTOR: add verify to QueryPlatform and change internal verifyToken API to verify (#9711).
Bump minimum Flutter version to 1.5.0.
invokeMethod calls.Switch to using the FIRAnalytics version of setAnalyticsCollectionEnabled for compatibility with Firebase Analytics iOS CocoaPod version 6.0.
FIRAnalytics version of setAnalyticsCollectionEnabled for
compatibility with Firebase Analytics iOS CocoaPod version 6.0.setAnalyticsCollectionEnabled.Your coding agent can read these notes before it upgrades. Set up the MCP server →