Debugging
Common issues and solutions when integrating the Superwall Expo SDK.
Cannot find native module 'SuperwallExpo'
This error occurs when the native Superwall module isn't properly linked in your app. There are several common causes.
Cause 1: Using Expo Go
Expo Go does not support custom native modules. Superwall requires native code that isn't included in Expo Go.
Solution: Use an Expo Development Build instead.
# For iOS
npx expo run:ios
# For Android
npx expo run:androidYou can tell you're running Expo Go if the app icon is the Expo logo. Your development build will show your own app icon.
Cause 2: Outdated Native Folders
If you added expo-superwall to an existing project, your ios and android folders may be outdated and missing the native module configuration.
Solution: Regenerate your native folders:
# Clean and regenerate native folders
npx expo prebuild --cleanThis will delete your existing ios and android folders and regenerate them with the correct native module configuration.
If you've made manual changes to your native folders, back them up first. The --clean flag will remove all custom native code.
Cause 3: EAS Build Not Updated
If you're using EAS Build, you need to create a new development build after adding expo-superwall.
Solution: Build a new development client:
eas build --profile development --platform ios
# or
eas build --profile development --platform androidCause 4: Stale Caches
Cached build artifacts can cause issues after updating dependencies.
Solution: Clear all caches and rebuild:
# Clear watchman (if installed)
watchman watch-del-all
# Clear Expo cache
npx expo start --clear
# Remove and reinstall dependencies
rm -rf node_modules
npm install # or yarn/pnpm/bun
# For iOS: reinstall pods
cd ios && pod install --repo-update && cd ..
# Rebuild
npx expo run:iosCause 5: Version Incompatibility
Your Expo SDK version may not be compatible with expo-superwall.
Solution: Run the Expo doctor to check for issues:
npx expo-doctor
npx expo install --checkSuperwall requires Expo SDK 53 or higher. If you're on an older version, upgrade your Expo SDK first.
Still Having Issues?
If none of the above solutions work:
-
Completely clean rebuild:
rm -rf node_modules ios android .expo npm install npx expo prebuild --clean npx expo run:ios -
Verify the package is installed:
npm ls expo-superwall -
Check for conflicting packages that might interfere with native module resolution
How is this guide?
Edit on GitHub