This documentation is available as Markdown for AI agents and LLMs. See the full Markdown index or append .md to any documentation URL.

View logs

Edit page

Learn how to view logs when using Expo CLI, native logs in Android Studio and Xcode, and system logs.


Logging information in a React Native app works similarly to in a web browser. You can use console.log, console.warn and console.error. However, at times, you might want to dive deep to get more useful information about what's happening in your app. For that, you can use native logs and system logs.

Console logs

When you run npx expo start and connect a device, console logs will show up in the terminal process. These logs are sent from the runtime to Expo CLI over web sockets, meaning the results are lower fidelity than connecting dev tools directly to the engine.

You can view high fidelity logs and use advanced logging functions like console.table by creating a development build with Hermes, and connecting the inspector.

View console logs in production mode

When you start your app with npx expo start --no-dev, console logs do not appear in the Expo CLI terminal. The runtime code that forwards logs to Expo CLI only runs in development mode. You cannot re-enable it in production mode. However, console.log still writes to the native log on the device. To view these logs, use adb logcat on Android or the Console app on iOS. For step-by-step instructions, see Viewing native logs.

Native logs

You can view native runtime logs in Android Studio and Xcode by compiling the native app locally. For more information, see native debugging.

System logs

While it's usually not necessary, if you want to see logs for everything happening on your device, for example, even the logs from other apps and the OS, you can use the following commands:

Terminal
# Show system logs for an Android device with adb logcat
npx react-native log-android
# Show system logs for an iOS device
npx react-native log-ios