Apple sign-in
To enable Apple sign-in on iOS, configure your App ID in Apple Developer and the Apple provider in Supabase.
Prerequisites
- An Apple Developer account
- The app setup completed, with your bundle identifier set in
config.js
Enable the Apple capability
Enable Sign in with Apple on the App ID whose bundle identifier matches
config.js → general.iosBundleIdentifier. The boilerplate already includes
expo-apple-authentication and sets ios.usesAppleSignIn in app.config.js.

Configure Supabase
Enable the Apple provider and add your bundle identifier to its authorized client IDs. Supabase’s Apple sign-in guide covers the provider settings.

The native flow exchanges the device’s identity token for a Supabase session. It does not need the Services ID or client secret used for browser-based Apple OAuth.
Rebuild
Create a new development build after changing the App ID or its capabilities.
Verify
On an iOS device signed into an Apple Account, tap the Apple button on the sign-in screen. The app should sign you in, and the user should appear in Supabase Authentication → Users with an Apple identity.
User names
Apple supplies the user’s name only when they first authorize your app.
useSignInWithApple saves given_name, family_name and full_name to Supabase
user metadata when both name parts are present. Subsequent sign-ins leave those
values unchanged.
App Store requirements
If you offer Google or another third-party login for the user’s primary account, review Apple’s login-services guideline . It requires an equivalent privacy-preserving login option, with listed exceptions. The included Apple sign-in is intended for this purpose.