Enable Firebase Authentication
Turn on and configure the sign-in providers a React Native app needs: email, Google, Apple, and phone.
Firebase Auth providers are all disabled by default on a new project. This guide covers enabling the ones a React Native app commonly uses.
Quick Answer
In Firebase Console → Authentication → Sign-in method, enable each provider your app uses, complete the provider-specific native setup, then test sign-up from the app and confirm the user appears under Authentication → Users.
1. Email/Password
The simplest provider to test with. Toggle it on under Sign-in method; no additional configuration needed.
2. Google Sign-In
- Toggle on the Google provider.
- Firebase generates a Web client ID note it, since the client SDK usually needs it.
- iOS: add the reversed client ID from
GoogleService-Info.plistto your URL schemes in Xcode. - Android: add your signing certificate's SHA-1 and SHA-256 fingerprints under Project Settings, so Google can verify your app. You need these for both your debug key and your release key.
Get your debug fingerprint with:
keytool -list -v -alias androiddebugkey -keystore ~/.android/debug.keystore
3. Apple Sign-In (iOS)
- Toggle on the Apple provider in Firebase.
- In your Apple Developer account, enable the Sign in with Apple capability for your app's bundle identifier.
- In Xcode, add the Sign in with Apple capability under Signing & Capabilities.
Apple requires Sign in with Apple on any iOS app that offers other third-party social logins, so if you ship Google Sign-In, plan for this one too.
4. Phone Auth (optional)
- Toggle on the Phone provider.
- Add test phone numbers in the Firebase console during development, so you don't consume real SMS quota.
- Phone auth needs additional native setup (APNs on iOS, SafetyNet/Play Integrity on Android) check the current Firebase docs for your SDK version.
Common Issues
auth/operation-not-allowed the provider isn't enabled in Firebase Console.
Google Sign-In works on iOS but fails on Android the SHA fingerprint registered in Firebase doesn't match the key that signed the build. Add both debug and release fingerprints.
Apple Sign-In button does nothing the capability isn't enabled in Xcode, or you're testing somewhere without an Apple ID signed in.
Users appear in Firebase but the app doesn't recognize them sign-in succeeded but your app's own user record wasn't created; check whatever code runs after the auth callback.
Verification Checklist
- every provider your app uses shows as Enabled;
- Google Sign-In fingerprints are registered for both debug and release keys;
- the Sign in with Apple capability is added in Xcode (iOS);
- a fresh sign-up creates a user visible under Authentication → Users.