PlatformException(sign_in_failed, ApiException: 10) Flutter / Dart Origin: On your device Last updated 4 Nov 2026

Flutter: PlatformException(sign_in_failed, com.google.android.gms.common.api.ApiException: 10: , null, null)

Google Sign-In failed on Android because the app's SHA-1 fingerprint or package name is not registered for the OAuth client.

Exact message you may see PlatformException(sign_in_failed, com.google.android.gms.common.api.ApiException: 10ApiException: 10sign_in_failed ApiException 12500google_sign_in ApiException: 10
Seen on: Flutter Android

Meaning

ApiException 10 is a developer error: the debug or release SHA-1 is missing in Firebase/Google Cloud, google-services.json is stale, or the package name differs. Add both debug and release (and Play App Signing) SHA-1/SHA-256 fingerprints, then download a new google-services.json.

Common causes

  • SHA-1 for the signing keystore not added in Firebase
  • Release/Play signing key fingerprint missing
  • Outdated google-services.json
  • Package name mismatch
  • OAuth consent screen or client not configured

⚡ Quick fix

  1. Run cd android && ./gradlew signingReport and copy SHA-1 into Firebase project settings
  2. Download the new google-services.json
  3. Add the Play Console app-signing SHA-1 for release builds

Detailed fix by platform

Android

  1. cd android && ./gradlew signingReport prints SHA-1 for every variant

How to diagnose

  1. Code — ApiException 10 or 12500?
  2. SHA — Debug and release added?
  3. File — google-services.json updated?

🔧 Still not fixed?

Many errors look alike. If the steps above didn’t solve it, one of these is probably what you’re facing:

Where this error sits

Origin: On your device. Errors that are often confused with or caused by this one (click to open):

Android license status unknown / licenses not accepted — flutter doctor: Android license status unknown. Run `flutter doctor --android-licenses` to accept the SDK licenses (Flutter / Dart)Android license statu…Cleartext HTTP traffic not permitted — Flutter (Android): java.io.IOException: Cleartext HTTP traffic to api.example.com not permitted (Flutter / Dart)Cleartext HTTP traffi…cmdline-tools component is missing — flutter doctor: Android SDK is missing command-line tools; download from https://goo.gl/XxQghQ — cmdline-tools component is missing (Flutter / Dart)cmdline-tools compone…Could not load the default credentials — Google Cloud: Error: Could not load the default credentials. Browse to https://cloud.google.com/docs/authentication/getting-started (Google Cloud / Firebase)Could not load the de…Dependency requires compileSdk 34 or later — Android Gradle: Execution failed for task ':app:checkDebugAarMetadata'. Dependency requires libraries and applications that depend on it to compile against version 34 or later of the Android APIs (Flutter / Dart)Dependency requires c…Gradle task assembleDebug failed with exit code 1 — Flutter: Exception: Gradle task assembleDebug failed with exit code 1 (Flutter / Dart)Gradle task assembleD…minSdkVersion cannot be smaller than the library's — Android Gradle: uses-sdk:minSdkVersion 16 cannot be smaller than version 21 declared in library [:firebase_auth] (Flutter / Dart)minSdkVersion cannot …MissingPluginException: No implementation found for method — Flutter: MissingPluginException(No implementation found for method getAll on channel plugins.flutter.io/shared_preferences) (Flutter / Dart)MissingPluginExceptio…PlatformE…

Explore the map of this error Full error map →

🧠 Still stuck? Analyze your error

Paste the full message, response headers or stack trace — we'll detect the platform and point to the most likely cause.

💬 What worked for others

No tips yet — did something else fix this for you?

Share what worked for you

Tips are checked by an editor before they appear. Links are removed.