You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
On React Native 0.85.3 (New Architecture, Hermes V1), simply importingreact-native-reanimated — without rendering a single animated component or calling any of its APIs — increases native RAM usage by ~25–30% compared to RN 0.83.x. Removing the import alone restores the baseline memory profile.
This was originally filed as a React Native memory regression and then investigated as a Hermes V1 regression, but the evidence in both threads points back to Reanimated as the trigger. Filing here so the Reanimated team has visibility.
if you simply remove reanimated import you will see normal baseline for rn app
however just import of reanimated without any usage of it cause this problem
I know we can't go without reanimated but from my point of view this is not hermes v1 problem
Observed memory (production build, measured with Flashlight)
Phase
RN 0.83.9
RN 0.85.3
Delta
Startup RAM
~370 MB
~480 MB
+110 MB
End-state RAM
~560 MB
~720 MB
+160 MB
Heap inspection on Hermes V1 shows most of the extra allocation coming from repeated 256 KB blocks originating in Hermes — which only appear once Reanimated is in the bundle.
Why we believe this is on the Reanimated side
The RN-only and Hermes-only investigations both reproduce the regression, but the variable that flips it on/off is the Reanimated import, not app code or animation usage.
Removing the import — with everything else (RN 0.85.3, Hermes V1, New Arch) unchanged — restores the baseline.
Steps to reproduce
App on RN 0.83.9 — build a release APK, run a standardized UI flow (FlashList scrolling, screen navigation, repeated interactions) via Maestro, profile RAM with Flashlight. Record baseline.
Upgrade to RN 0.85.3 (Hermes V1, New Architecture) with no application code changes. Repeat the same flow → ~25–30% higher RAM.
Isolation step: in the 0.85.3 build, remove the import 'react-native-reanimated' (and any reanimated imports) without otherwise changing the app. → Memory returns to the 0.83.x baseline.
The key signal is step 3: the regression is present from the mere presence of the import, before any animation is mounted or any worklet runs.
Description
On React Native 0.85.3 (New Architecture, Hermes V1), simply importing
react-native-reanimated— without rendering a single animated component or calling any of its APIs — increases native RAM usage by ~25–30% compared to RN 0.83.x. Removing the import alone restores the baseline memory profile.This was originally filed as a React Native memory regression and then investigated as a Hermes V1 regression, but the evidence in both threads points back to Reanimated as the trigger. Filing here so the Reanimated team has visibility.
Cross-references
[Android] - Higher memory usage on 0.85.x vs 0.83.x with the new Hermes (~25–30% more RAM, same app)Severe memory regression in V1Environment
Previously-working baseline: react-native 0.83.9 (Hermes < V1).
Observed memory (production build, measured with Flashlight)
Heap inspection on Hermes V1 shows most of the extra allocation coming from repeated 256 KB blocks originating in Hermes — which only appear once Reanimated is in the bundle.
Why we believe this is on the Reanimated side
Steps to reproduce
import 'react-native-reanimated'(and any reanimated imports) without otherwise changing the app. → Memory returns to the 0.83.x baseline.The key signal is step 3: the regression is present from the mere presence of the import, before any animation is mounted or any worklet runs.
Snack or a link to a repository
https://github.com/SirJalias/AwesomeProject
Reanimated version
4.4.0
Worklets version
0.9.1
React Native version
0.85.3
Platforms
Android
JavaScript runtime
Hermes
Workflow
React Native CLI
Architecture
New Architecture (Fabric renderer)
Reanimated feature flags
None
React Native release level
Stable
Build type
Debug app & production bundle
Device
Real device
Host machine
macOS
Device model
Pixel 9 Pro, Android 16
Acknowledgements
Yes