Motion Matt Sellars

Motion's React Native Performance Crisis: Solving 190% CPU Usage

Original post React Native Performance Crisis: Solving 190% CPU Usage

Article Summary

Matt Sellars from Motion watched their React Native calendar screen peg CPU at 190%. The culprit? View bridges tripling rendering overhead between JS and native code.

Motion started with React Native for the usual startup reasons: shared codebase, small team, fast iteration. But as their calendar app grew, performance collapsed on heavy screens. Even with native-capable engineers and aggressive optimization attempts, the architecture hit a wall.

Key Takeaways

Critical Insight

Motion's solution: prototype fast in React Native, then selectively rewrite performance-critical screens in native code for a 97% CPU reduction.

Continue reading

What This Article Covers

Problem

Motion's React Native calendar rendered 4 days at once to enable smooth swiping, but the constant JS-to-native bridge crossings caused CPU usage to spike uncontrollably during app startup and navigation.

Solution

Matt Sellars' team converted just the calendar screen to native Swift and Kotlin code while keeping the rest of the app in React Native. This let them optimize the performance bottleneck without rewriting the entire app.

Impact

The native calendar screen cut CPU usage from 190% down to 5%. It shows that a hybrid approach works well. You can prototype in React Native first, then convert the screens that need it to native code. This gives you both fast iteration and real native performance.

Their new hybrid workflow leverages an unexpected tool to keep native iOS and Android development in sync without doubling engineering effort.

This page summarizes “React Native Performance Crisis: Solving 190% CPU Usage” by Motion, published Jul 9, 2025. All credit for the original work goes to the authors.

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

AI tools for React Native

Browse all AI tools →