Callstack

How Callstack Profiles Native Code in React Native with Tracy

Original post Profiling Native Code in React Native with Tracy

Article Summary

Profiling React Native apps just got a serious upgrade. Tracy, the real-time profiler that game developers swear by, now works seamlessly with React Native's native layer.

Callstack's engineering team shows how to integrate Tracy profiler into React Native projects to visualize native code performance. This deep dive covers everything from initial setup to instrumenting custom native modules and analyzing frame-by-frame execution.

Key Takeaways

Critical Insight

Tracy gives React Native developers the same profiling power that AAA game studios use to optimize performance-critical code.

Continue reading

What This Article Covers

Problem

React Native developers can't easily see where performance problems happen in native code. It's hard to spot microsecond-level delays on iOS and Android at the same time without specialized tools.

Solution

Callstack's team added Tracy, a real-time profiler built for game studios, to React Native projects. It captures execution data frame-by-frame and shows how threads interact across native layers.

Impact

Developers can now check native code performance down to the microsecond with very little overhead. They can quickly find bottlenecks in TurboModules and custom JSI bindings that standard profiling tools miss.

The article includes a surprising discovery about where React Native actually spends time during bridge communication.

This page summarizes “Profiling Native Code in React Native with Tracy” by Callstack, published Feb 11, 2025. All credit for the original work goes to the authors.

Read the original on callstack.com (opens in new tab)

AI tools for React Native

Browse all AI tools →