Saltar al contenido
← Blog
Desarrollo

Escrito por Denys Havryliak

Swift vs React Native: RAM, CPU y el coste de dos entornos de ejecución

React Native mantiene vivo un montículo de JavaScript junto a las vistas nativas, y Hermes no tiene JIT por diseño. Lo que eso cuesta en memoria y CPU, medido — incluidos los datos de Shopify.

Bar chart of memory growth over a 100-item scroll on an iPhone 16 Plus: native Swift 9.74 MB against React Native 45.13 MB

En resumen

  • React Native usa dos sistemas de memoria a la vez: su propio motor de JavaScript y las vistas nativas por debajo. En un estudio revisado por pares usó más memoria que ningún otro framework probado
  • Un desplazamiento por una lista añadió 9,74 MB en Swift frente a 45,13 MB en React Native, alrededor de un 78% menos. Fue además el resultado menos predecible de la prueba, variando una cuarta parte de su propia media entre ejecuciones
  • La memoria decide si tu aplicación sobrevive a una sesión. Los iPhone no ralentizan una aplicación pesada, la cierran, empezando por la más pesada. Tu cliente ve un carrito vacío, no un fallo
  • La propia migración de Shopify es el dato público más honesto. Abrir la aplicación fue un 3% más rápido en iPhone — y algunas pantallas complejas se volvieron hasta un 20% más lentas, con las sesiones sin fallos por debajo de su objetivo durante semanas
  • No es más lento en todo. En una prueba de animación continua usó menos procesador y menos batería que la versión nativa
  • Los widgets serán Swift igualmente. Funcionan con un límite que, según la propia documentación de React Native, su uso de memoria probablemente no respete
  • Tu equipo actual puede pesar más que todo esto. Si ya tienes desarrolladores de React, lanzar este trimestre puede ganar a ser cuatro veces más ligero el año que viene

Trabajamos tanto con Swift nativo como con React Native. Esta es la comparación que hacemos internamente antes de empezar un proyecto.

¿Cuánto menos eficiente es React Native que Swift nativo?

En memoria, de forma significativa — React Native mantiene vivo un montículo de JavaScript junto a los objetos nativos de UIKit o SwiftUI, así que pagas por dos gestores de memoria donde Swift paga por uno. En CPU depende por completo de la carga de trabajo: Hermes ejecuta bytecode en un intérprete sin JIT, lo que está bien para la lógica típica de una aplicación y mal para cálculo numérico sostenido. En producción, a la escala de Shopify, la diferencia apareció como cambios de un solo dígito en el tiempo de arranque y regresiones ocasionales del 20% en pantallas complejas.

78% menosCrecimiento de memoria, Swift frente a React Native — 9,74 MB contra 45,13 MBSynergyBoat, iPhone 16 Plus, N=3, agosto de 2025. Crecimiento de RSS en un desplazamiento de 100 elementos; RN varió ±10,94 MB.
~40%Menos memoria en la versión HV32 de Hermes V1 — que iOS no recibefacebook/hermes#1829, mantenedor de Meta, junio de 2026. Aplica a RN 0.84 en adelante.
3% más rápidoArranque en iOS con la Nueva ArquitecturaShopify Engineering, producción, septiembre de 2025.
hasta un 20%Cargas más lentas en algunos componentes complejosShopify Engineering, la misma migración, septiembre de 2025.

Cada cifra de abajo lleva el dispositivo, la versión del framework y la herramienta de la que salió. Al final nombramos las cifras que carecen de eso. No las usamos.

¿Qué te cuesta en realidad esa cifra de memoria?

Un iPhone no ralentiza una aplicación cuando se queda sin memoria — la cierra, empezando por la más pesada. Tu cliente no ve un fallo. Cambia a otra aplicación durante veinte segundos, vuelve, y se encuentra un carrito vacío y una pantalla de inicio de sesión. Es el coste menos entendido de una aplicación más pesada, y nunca aparece en tus informes de fallos.

Lo hemos desarrollado por separado, junto con el límite de los widgets que impide construir algunas funciones: Por qué los iPhone cierran primero las aplicaciones pesadas.

Todas las cifras que pudimos verificar, en una tabla

Cuatro cosas que la gente pregunta — memoria, uso del procesador, tamaño de descarga y rapidez de apertura. Esto es lo que se ha medido realmente, y lo que no.

Lee la columna de la derecha antes de usar cualquier fila. Y lee las filas que dicen nadie ha publicado esto, porque hay más de las que admitirá cualquiera que te esté vendiendo un framework.

Una aplicación de tarjetas de memoria, construida de las dos formas y ejecutada en un iPhone, es la única prueba pública que pone Swift nativo junto a React Native. Cubre la memoria. Para las otras tres preguntas no se ha publicado ninguna prueba así.
Qué se midióSwift nativoReact NativeQuién lo midió, y sobre qué
Memoria — la única pregunta con una respuesta real
Memoria extra que ocupó la aplicación al desplazar una lista larga9,74 MB45,13 MBSynergyBoat, agosto de 2025. La misma aplicación construida de las dos formas, iPhone 16 Plus, tres ejecuciones de cada una
La misma cifra, junto a Swiftla referencia4,6× másCalculado a partir de la fila anterior — Swift usó alrededor de un 78% menos de memoria
Cuánto varió el resultado entre ejecuciones± 0,18± 10,94Misma prueba, y esta fila importa tanto como la anterior. React Native no solo usó más — fue muchísimo menos predecible, variando alrededor de una cuarta parte de su propia media. Léelo como “aproximadamente entre cuatro y cinco veces”, no como exactamente 4,6
Memoria frente a una aplicación nativa, en Androidno hay Swift en Androidla más alta de todos los frameworks probadosOliveira y colegas, 2023, el único estudio aquí revisado por pares. Android, y la aplicación nativa con la que se comparó estaba en Java. Una dirección, no una cifra de iPhone
Cifras antiguas de iPhone que aún se citan hoy48 MB135 MBinVerita, junio de 2020, iPhone 6s — medido antes de que React Native cambiara tanto su motor de JavaScript como toda su arquitectura. Aparece para que lo reconozcas cuando te lo citen como actual
Uso del procesador — ninguna prueba en iPhone incluye Swift
iPhone, misma aplicación, de las dos formasnadie ha publicado estonadie ha publicado estoBuscamos a fondo y no encontramos ninguna
Frente a una aplicación nativa, en Androidno hay Swift en Androidla mayor sobrecarga de los frameworks probados — pero menor que la nativa en una aplicación con animación continuaEl mismo estudio revisado por pares. Esa excepción es real y conviene conocerla: React Native no es más lento en todo
Tamaño de descarga — lo que tu cliente espera
Una aplicación mínima, tal como se descarga en iPhonenadie ha publicado estonadie ha publicado estoNi Apple ni el equipo de React Native publican una cifra comparable de aplicación vacía para iPhone
Maquinaria que la aplicación carga solo para funcionarninguna — usa lo que ya está en el teléfonoun motor de JavaScript, unos 2,4 MBLas mediciones de Callstack en iPhone. Esta es la diferencia estructural: tu aplicación incorpora un segundo entorno de ejecución y lo mantiene en memoria junto al nativo
Rapidez de apertura — no existe nada comparable
Arranque en frío en iPhone, misma aplicaciónnadie ha publicado estonadie ha publicado estoEl único proyecto de código abierto que publica velocidad de apertura frente a una aplicación real en Swift no incluye ninguna versión en React Native

Cada fila está referenciada en Fuentes, con el hardware, las versiones y las herramientas exactas. Las filas que dicen nadie ha publicado esto son el hallazgo, no un hueco que no supiéramos llenar.

Cifras que parecen comparaciones pero no lo son

Estas tres aparecen en casi todos los argumentos a favor de React Native. Cada una mide React Native contra una versión anterior de sí mismo. Ninguna implica a Swift. Si alguien te cita una como razón para saltarte lo nativo, ha respondido a otra pregunta.

Lo que se diceLo que se comparó en realidadEl detalle que se omite
“Ahora arranca un 40% más rápido”Dos motores de JavaScript, uno contra otroCallstack, en iPhone, en React Native 0.64. La memoria bajó alrededor de un 18% — y la aplicación creció 2,4 MB
“La Nueva Arquitectura arregló el rendimiento”React Native 0.76 contra 0.75Sus propias notas de versión, en Android: unos 3,8 MB menos, abriendo unos 15 milisegundos antes. No se publicó ninguna cifra de memoria
“Shopify demostró que está listo para producción”Las propias aplicaciones de Shopify, antes y después de su actualizaciónShopify, septiembre de 2025: ~10% más rápido al abrir en Android, ~3% en iPhone — junto con algunas pantallas hasta un 20% más lentas, más bloqueos en ambas plataformas, y sesiones sin fallos por debajo de su propio objetivo durante un par de semanas

¿Deberías elegir Swift o React Native?

La eficiencia es un factor, y rara vez el decisivo. El compromiso honesto: Swift nativo gana la medición, y nativo cuesta más en cuanto necesitas Android también — porque no hay una segunda plataforma incluida en el precio.

Qué construir, y qué te cuesta cada respuesta. La última columna es la que la gente se salta.
Si esta es tu situaciónConstruye estoPor quéQué te cuesta
Solo iPhone, sin Android previstoSwift nativoAlrededor de una cuarta parte del crecimiento de memoria, todas las funciones de Apple desde el primer día, y ningún segundo entorno de ejecución en la descargaNada extra. Con una sola plataforma, nativo es además la opción más barata — un solo código y ninguna capa de framework entre tú y los errores
Ambas plataformas, y la eficiencia es el producto — audio en segundo plano, cámara, mapas, IA en el dispositivo, o clientes con teléfonos antiguosNativo en ambasAquí es donde la diferencia de memoria deja de ser una estadística y empieza a cerrar tu aplicación a mitad de sesiónLa respuesta cara, siendo honestos. Dos bases de código: cada pantalla se construye dos veces. El diseño, el backend, el producto y las pruebas no se duplican, así que queda bastante por debajo de pagar el doble — pero la capa de aplicación sí se duplica de verdad
Ya tienes un equipo de React y TypeScriptReact NativeEl equipo que tienes vale más que una prueba de rendimiento. Lanzar este trimestre gana a ser cuatro veces más ligero el año que vieneEl resultado más pesado y menos predecible de la única prueba en iPhone que incluye Swift. Merece revisarse si la aplicación se vuelve sensible al rendimiento
Ambas plataformas, aplicación normal de contenidos, reservas o tienda, y el presupuesto mandaReact NativeUn solo equipo cubriendo ambas plataformas es un ahorro real, y en una aplicación que muestra listas y formularios puede que la diferencia no llegue nunca a tus clientesUna aplicación bastante más pesada. Presupuesta probar en el teléfono más antiguo que admitas, no en el más nuevo — ahí es donde se nota
Los widgets o las Live Activities importan en el productoSwift, elijas lo que elijasLa propia documentación de React Native dice que su uso de memoria es probablemente demasiado alto para caber en estos presupuestosNo es realmente una elección. Cuenta con Swift en el equipo desde el principio en lugar de descubrirlo tarde

Fuentes

Cada cifra de arriba viene de una de estas. Cada entrada indica las condiciones que la hacen citable: dispositivo, versiones, herramienta, tamaño de muestra. Un número sin eso no es evidencia.

Las mediciones

  1. SynergyBoat — “Flutter vs React Native vs Native: 2025 Performance Benchmark” (31 de agosto de 2025)Las cifras de incremento de memoria. iPhone 16 Plus, N=3, crecimiento de RSS en un desplazamiento de 100 elementos. Publicado por un proveedor. Usamos solo su apartado de memoria; su comparación de tiempos de fotograma mide cantidades distintas contra un mismo presupuesto.
  2. Oliveira, Moraes, Castor y Fernandes — “Analyzing the Resource Usage Overhead of Mobile App Development Frameworks” (EASE 2023)Revisado por pares. Samsung Galaxy S20 FE, Android 12, adb batterystats + meminfo, 45 ejecuciones por prueba descartando las 15 primeras. Flutter 3.0.3 (Skia), React Native 0.68.2 (Hermes desactivado), frente a Java nativo. Sin iOS, sin Swift. PDF de acceso abierto vía la Universidad de Utrecht; DOI 10.1145/3593434.3593487.
  3. Shopify Engineering — “Migrating to React Native’s New Architecture” (5 de septiembre de 2025)Datos de producción de Shopify Mobile y Point of Sale. Informa tanto de sus regresiones como de sus mejoras, que es por lo que la usamos.
  4. React Native — “Toward Hermes being the default”Recoge las cifras de iOS de Callstack/Mattermost: arranque ~40% más rápido, memoria ~18% menor, aplicación +2,4 MiB, en React Native 0.64.
  5. Callstack — “Hermes performance on iOS”Las mediciones originales sobre Mattermost detrás de esas cifras.

Documentación de primera mano

  1. Apple — “iOS Memory Deep Dive”, sesión 416 de la WWDC18Define la huella de memoria de una aplicación como páginas sucias más comprimidas, contadas en páginas de 16 KB. Afirma que el límite depende del dispositivo y nunca publica una cifra.
  2. Apple — “Identifying high-memory use with jetsam event reports”El ejemplo que citamos: 92.802 páginas × 16.384 bytes = 1,52 GB en uso en una terminación por per-process-limit. Eso es el uso en el momento de morir, no un techo publicado.
  3. Foros de desarrolladores de Apple — EXC_RESOURCE RESOURCE_TYPE_MEMORY (limit=30 MB)Informes de fallos de WidgetKit publicados por desarrolladores, no una especificación de Apple. La fuente del límite de ~30 MB para widgets.
  4. Meta Engineering — “Hermes: An open source JavaScript engine optimized for mobile apps” (2019)Por qué Hermes no incluye JIT: el calentamiento perjudica el tiempo hasta poder interactuar, y un JIT cuesta tamaño de código y memoria.
  5. facebook/hermes, incidencia #1829 — consumo de memoria en Hermes V1Un mantenedor de Meta explicando que HV32 usa ~40% menos memoria pero necesita un mapeo de memoria no disponible en iOS, así que allí Hermes V1 distribuye HV64. Aplica desde React Native 0.84 (febrero de 2026).
  6. Notas de la versión React Native 0.70 (5 de septiembre de 2022)Hermes pasa a ser el motor por defecto.
  7. React Native — “The New Architecture is Here” (23 de octubre de 2024)Fabric, TurboModules y modo sin puente por defecto. También es la fuente del hecho de que el puente antiguo sigue en 0.76 por compatibilidad.
  8. Notas de la versión React Native 0.76Las únicas cifras oficiales: APK de Android ~3,8 MB más pequeño (20%), arranque mediano ~15 ms (~8%) más rápido. No se publicó ninguna cifra de memoria.
  9. React Native — documentación de extensiones de aplicaciónLa propia advertencia de React Native de que su uso de memoria “tiende a ser demasiado alto” para los presupuestos de extensión más ajustados. Nota: la página aún habla del widget Today de 16 MB, que Apple retiró en iOS 18.

Código abierto que puedes ejecutar tú

  1. Código fuente de la prueba de SynergyBoatLas cuatro implementaciones — Swift, Flutter, React Native, Kotlin — con la instrumentación. Clónalo y vuelve a ejecutarlo.
  2. Paquete de replicación de EASE 2023Todos los volcados de adb en bruto detrás del artículo. Reejecutable.
  3. RNArchBench — React Native, arquitectura antigua frente a nuevaReact Native 0.81.5 con una referencia nativa en Kotlin y un flujo de análisis reproducible. Solo Android, y sus propios autores describen sus campos de CPU y RAM como descriptivos más que inferenciales.
  4. jacobras/flutter-vs-native-vs-kmpUna aplicación en cuatro tecnologías, incluida una referencia nativa en Swift/SwiftUI. Publica solo tamaño de aplicación y arranque — ni RAM ni CPU. Archivado en agosto de 2026.

Fuentes que revisamos y no usamos

  1. inVerita — “Deep Performance Comparison” (junio de 2020)El origen de las cifras “48 MB / 117 MB / 135 MB”. iPhone 6s y un iPad Mini 3 de 2014, antes de Hermes, Impeller y la Nueva Arquitectura. Enlazado para que la afirmación sea comprobable, no como recomendación.
  2. inVerita — “Examining Performance” (marzo de 2020)Las micropruebas de dígitos de pi detrás de “Flutter es un 15% más rápido que Swift”. Mide aritmética en un bucle, en un iPhone 6s.

Para ver cómo encaja Flutter, consulta la comparación a tres bandas o Swift vs Flutter. Si quieres esta decisión tomada sobre un producto concreto en lugar de en abstracto, habla con nosotros.

Artículos relacionados

Trabaja con Applefy
Hablemos

Reserva una llamada con nuestro CEO

Retrato de Denys Havryliak, fundador y CEO de Applefy

Denys Havryliak

Fundador y CEO

  • Más de 10 años en ingeniería de software
  • Máster en ciberseguridad
  • Conocimiento profundo y actual de las herramientas de IA

Hablarás con quien construye. Denys trabaja de forma práctica en producto, arquitectura y entrega, y sigue de cerca lo que las herramientas de IA de hoy pueden hacer de verdad en producción, no solo en una demo.