Skip to content
Now accepting Q2 projects — limited slots available. Get started →
Migration Service

Tu CMS heredado acaba de costarte otra venta mientras cargaba esta página

Si eres operador y estás atascado en ExpressionEngine, MODX o ese monstruo PHP personalizado de 2011, ya conoces los números: tiempos de carga de 4 segundos, 340 $/mes en hosting y cero desarrolladores dispuestos a tocarlo.

  • Stagnant add-on ecosystems leave critical extensions unpatched for years, creating security vulnerabilities your compliance team flags in every audit
  • Shrinking talent pools turn routine updates into three-week contractor searches, while your marketing team's campaign launch slips another fortnight
  • Accumulated technical debt transforms simple feature requests into £8K custom development projects with two-month lead times
  • Mobile Lighthouse scores stuck at 45-65 trigger Core Web Vitals failures that push your category pages below faster competitors in Search Console
  • Server hosting burns £200-800/month for managed PHP environments that still deliver 1.2-2.5 second response times under moderate traffic
  • Monolithic architecture couples your content model to presentation logic, forcing full regression testing every time your designer tweaks a layout component
  • Mobile Lighthouse scores hit 95-100 with green Core Web Vitals across every template, moving your pages up in organic rankings within the first billing cycle
  • Global TTFB drops to sub-300ms via edge deployment on Vercel's network, replacing the 1.8-second lag your analytics team sees in session recordings
  • Hosting costs fall to £50-200/month on managed infrastructure that auto-scales to traffic spikes your legacy VPS would crash under
  • TypeScript + React codebase opens your talent pool to thousands of senior developers, ending your dependency on the two contractors who still remember MODX syntax
  • Supabase consolidates PostgreSQL, auth, realtime, and storage into one managed platform — eliminating your separate MySQL + Redis + S3 + Auth0 bill
  • Decoupled content API lets your team publish changes via Supabase Studio while your dev team ships frontend updates independently, cutting deployment friction by 70%

Tu CMS heredado te está frenando

ExpressionEngine cumplió su función. MODX fue genuinamente innovador para su época. ¿Ese CMS PHP personalizado que tu agencia construyó en 2011? Funcionaba. Pero «funcionaba» está en pasado, y eso importa.

Estas plataformas comparten una trayectoria común: ecosistemas de plugins cada vez más reducidos, parches de seguridad que llegan con meses de retraso (o nunca), desarrolladores que han seguido adelante y puntuaciones de rendimiento que hacen que los Core Web Vitals de Google parezcan una película de terror. Pagas costes de hosting premium por servidores que luchan por lograr tiempos de carga de 2 segundos, mientras un sitio estático en un plan de 20 $/mes te da mil vueltas.

Hemos migrado sitios de ExpressionEngine con más de 15 000 entradas, instalaciones de MODX con más de 40 snippets personalizados y plataformas CMS PHP a medida con esquemas de base de datos sin documentar. Todas ellas funcionan ahora en Next.js con Supabase, obtienen puntuación verde en todos los Core Web Vitals y cuestan menos en hosting que el stack heredado.

Por qué fallan las migraciones de ExpressionEngine y MODX

La mayoría de las agencias tratan una migración de CMS como un proyecto de rediseño. Construyen un sitio nuevo con buen aspecto, hacen una exportación CSV, importan en bloque, configuran algunas redirecciones y dan el trabajo por terminado. Luego ves cómo tu tráfico orgánico cae un 40 % en seis semanas.

Esto es lo que sale mal realmente:

Desajuste en el modelado de contenido

Los campos de canal de ExpressionEngine y las variables de plantilla de MODX no se corresponden de forma limpia con las estructuras de contenido modernas. Un campo de tipo «textarea» que contiene HTML con estilos en línea, imágenes con rutas relativas y shortcodes personalizados necesita una transformación inteligente, no un script de buscar y reemplazar.

Fragmentación de la estructura de URLs

Las plataformas CMS PHP heredadas adoran generar URLs con parámetros, prefijos de categoría y estructuras basadas en fechas que no encajan con las convenciones de enrutamiento modernas. Si te saltas un solo patrón de redirección, tendrás una página 404 donde antes estaba tu landing page de mayor tráfico.

Lógica de plantillas enterrada en el contenido

Los chunks y snippets de MODX, las etiquetas de plantilla de ExpressionEngine, los includes PHP personalizados… esto no es contenido. Es lógica de presentación que quedó enredada en tu base de datos a lo largo de una década de crecimiento orgánico. Separar el contenido de la lógica de presentación es el trabajo duro real de una migración, y es la parte que la mayoría de las agencias se salta.

Autenticación y datos de usuarios

Si tu CMS heredado gestiona inicios de sesión de miembros, roles de usuario personalizados o contenido restringido, no puedes ignorar esos datos sin más. Los hashes de contraseñas deben migrarse, o los usuarios necesitan un flujo de reautenticación elegante.

Lo que Next.js + Supabase te ofrece realmente

No es una mejora marginal. Es un salto arquitectónico.

Next.js para el frontend

Next.js te proporciona generación estática para páginas de contenido (TTFB inferior a 100 ms), renderizado en servidor para rutas dinámicas, React Server Components para layouts complejos sin hinchazón de JavaScript en el cliente, y regeneración estática incremental para que tu equipo de contenido publique cambios que se activan en segundos sin una reconstrucción completa.

Tus puntuaciones en Lighthouse pasan del rango 45-65 a 95-100. No por trucos, sino porque la arquitectura es fundamentalmente más rápida.

Supabase para el backend

Supabase proporciona una base de datos PostgreSQL con una API REST y GraphQL incluidas. La seguridad a nivel de fila gestiona los permisos sin middleware. Las suscripciones en tiempo real impulsan funcionalidades en vivo. La autenticación integrada lo gestiona todo, desde correo electrónico/contraseña hasta proveedores OAuth. Las funciones edge ejecutan la lógica de servidor en el borde de la CDN.

Para la mayoría de las migraciones de CMS heredados, Supabase reemplaza el stack de backend completo: base de datos, autenticación, almacenamiento de archivos y capa de API. Una plataforma, una factura, sin mantenimiento de servidores.

Integración con CMS headless

Para los equipos de contenido que necesitan una interfaz de edición familiar, integramos Sanity, Payload CMS o Storyblok como capa editorial. Los editores de contenido obtienen una UI moderna. Los desarrolladores obtienen APIs estructuradas. Supabase gestiona todo lo que no es contenido puro: datos de usuario, estado de la aplicación, analítica y envíos de formularios.

Nuestro proceso de migración

Ejecutamos un proceso de cinco fases diseñado específicamente para plataformas CMS PHP heredadas. Sin cortes abruptos. Sin cruzar los dedos.

Fase 1: Auditoría profunda (semanas 1-2)

Rastreamos tu sitio existente por completo. Cada URL, cada tipo de contenido, cada plantilla, cada redirección ya en vigor. Mapeamos tus canales de ExpressionEngine o recursos de MODX a un esquema de contenido moderno. Documentamos la funcionalidad personalizada: búsqueda, formularios, áreas de miembros, hooks de e-commerce e integraciones con terceros.

Entregable: un documento de especificación de migración con los mapeos del modelo de contenido, el mapa de redirecciones de URL y el inventario de funcionalidades.

Fase 2: Construcción de la infraestructura (semanas 2-4)

Configuramos la aplicación Next.js, configuramos Supabase (esquema de base de datos, reglas de autenticación, buckets de almacenamiento) y desplegamos en Vercel o Cloudflare Pages. Pipeline de CI/CD, entornos de previsualización, dominio de staging: todo configurado antes de que se mueva ningún contenido.

Fase 3: Migración de contenido (semanas 3-6)

Scripts de migración personalizados extraen el contenido de tu base de datos heredada, lo transforman (limpiando HTML, resolviendo rutas de imágenes, convirtiendo shortcodes a datos estructurados) y lo cargan en el nuevo sistema. Ejecutamos esto de forma iterativa: migramos, validamos, corregimos casos extremos y volvemos a ejecutar.

Para ExpressionEngine, nos conectamos directamente a la base de datos MySQL y analizamos los datos de canal con conocimiento del tipo de campo. Para MODX, gestionamos el árbol de recursos, las variables de plantilla y las referencias a chunks. Para plataformas CMS PHP personalizadas, realizamos ingeniería inversa del esquema y construimos extractores a medida.

Fase 4: Construcción del frontend (semanas 4-8)

Páginas y componentes Next.js construidos para replicar (o mejorar) tu diseño existente. Cada plantilla de página del sitio heredado obtiene su equivalente moderno. Optimizamos las imágenes, implementamos layouts responsive y nos aseguramos de que cada página alcance Core Web Vitals en verde antes del lanzamiento.

Fase 5: Transición SEO y puesta en marcha (semanas 7-10)

Aquí es donde las migraciones tienen éxito o fracasan. Nuestro proceso de transición:

  • Mapa de redirecciones 301 desplegado y probado contra el rastreo completo de URLs de la fase 1
  • Sitemaps XML regenerados y enviados a Google Search Console
  • Etiquetas canónicas, hreflang y datos estructurados preservados o mejorados
  • Monitorización en tiempo real de picos de 404, errores de rastreo y movimiento de posiciones durante 30 días tras el lanzamiento
  • Transición DNS sin tiempo de inactividad: el sitio heredado permanece activo como respaldo hasta que confirmamos una indexación limpia

Garantizamos que no habrá pérdida de posicionamiento atribuible a la migración. Si Google pierde una página por una redirección que nos hayamos saltado, la corregimos el mismo día.

Estrategia de preservación SEO

La preservación del SEO no es una fase: es una restricción que gobierna cada decisión a lo largo del proyecto.

Exportamos tu perfil de backlinks completo y lo cruzamos con el mapa de redirecciones. Los enlaces internos se actualizan de forma programática, no manual. Preservamos la autoridad de página manteniendo las estructuras de URL donde es posible e implementando cadenas de redirección correctas donde cambian.

Next.js nos proporciona renderizado en servidor para los rastreadores, lo que significa que Google ve HTML completamente renderizado en la primera solicitud, sin los retrasos de renderizado JavaScript que plagan las migraciones SPA. Combinado con un TTFB inferior a 300 ms desde el despliegue en el edge, tus páginas se rastrean más rápido y se indexan de forma más completa de lo que nunca lo fueron en el stack heredado.

Plazos y precios

Precios transparentes: conoces el rango antes de la primera llamada.

Tamaño del proyecto Volumen de contenido Plazo Inversión
Estándar Hasta 500 páginas 6-8 semanas £12 000 - £25 000
Escala media 500-5 000 páginas 8-12 semanas £25 000 - £55 000
Enterprise Más de 5 000 páginas, funcionalidad personalizada 12-20 semanas £55 000 - £120 000

El precio incluye la auditoría, los scripts de migración, la construcción en Next.js, la configuración de Supabase, la transición SEO y 30 días de monitorización post-lanzamiento. Sin sorpresas de facturación por horas. El hosting continuo en Vercel + Supabase suele rondar £50-200/mes según el tráfico, una fracción de los costes del servidor heredado.

Garantía del 100 % verde en Core Web Vitals

Cada página que entregamos supera la evaluación de Core Web Vitals de Google con puntuaciones verdes en LCP, INP y CLS. No en una prueba de laboratorio con conexión rápida, sino en el campo, medido por usuarios reales a través de los datos de CrUX.

Si alguna página falla en CWV dentro de los 90 días posteriores al lanzamiento por causa de nuestra implementación, la corregimos sin coste adicional. Podemos ofrecer esta garantía porque la arquitectura Next.js + Supabase, desplegada en CDNs de edge, es inherentemente rápida. No estamos luchando contra la plataforma para obtener buenas puntuaciones: la plataforma las entrega por defecto cuando se construye correctamente.

Cobertura en el Reino Unido y EE. UU.

Trabajamos con equipos en el Reino Unido y EE. UU., con despliegues optimizados para ambos mercados. Las redes de edge de Vercel y Cloudflare garantizan que tu sitio cargue rápido tanto si tus usuarios están en Londres, Leeds, Los Ángeles o Louisville. Todos los proyectos incluyen gestión de datos conforme al RGPD para audiencias del Reino Unido y la UE, y prácticas alineadas con SOC 2 para requisitos empresariales en EE. UU.

How It Works

The migration process

01

Discovery & Audit

We map every page, post, media file, redirect, and plugin. Nothing gets missed.

02

Architecture Plan

New stack designed for your content structure, SEO requirements, and performance targets.

03

Staged Migration

Content migrated in batches. Each batch verified before the next begins.

04

SEO Preservation

301 redirects, canonical tags, sitemap, robots.txt — every ranking signal carried over.

05

Launch & Monitor

DNS cutover with zero downtime. 30-day monitoring period included.

Before vs After

ExpressionEngine / MODX / Custom PHP CMS vs Next.js + Supabase

Metric ExpressionEngine / MODX / Custom PHP CMS Next.js + Supabase
Lighthouse Mobile 45-65 95-100
TTFB 1.2-2.5s <0.3s
Build/Deploy FTP upload, manual cache clear Git push, auto-deploy in <60s
Hosting Cost £200-800/mo £50-200/mo
Developer Availability Scarce (EE/MODX specialists) Abundant (React/Next.js ecosystem)
API / Headless Support None or bolted-on Native REST + GraphQL via Supabase
FAQ

Common questions

¿Cuánto tarda una migración de ExpressionEngine a Next.js?

Una migración típica de ExpressionEngine lleva entre 6 y 12 semanas según el volumen de contenido y la funcionalidad personalizada. Los sitios con menos de 500 páginas y campos de canal estándar terminan en 6-8 semanas. Los sitios más grandes con sistemas de miembros, add-ons personalizados o lógica de plantillas compleja se extienden hasta 12-20 semanas. Te damos un plazo exacto tras la fase de auditoría.

¿Perderé posicionamiento SEO durante la migración?

No. Nuestro proceso de migración incluye un mapa completo de redirecciones 301 construido a partir de un rastreo completo del sitio, renderizado en servidor para los motores de búsqueda y 30 días de monitorización post-lanzamiento. Preservamos las estructuras de URL, las etiquetas canónicas, los datos estructurados y los atributos hreflang. Garantizamos que no habrá pérdida de posicionamiento causada por la migración en sí.

¿Pueden migrar un CMS PHP personalizado sin documentación?

Sí. Realizamos ingeniería inversa de los esquemas de base de datos sin documentar analizando directamente las estructuras de tablas, las relaciones y los patrones de contenido. Hemos migrado plataformas CMS PHP personalizadas construidas durante más de 10 años con cero documentación. La fase de auditoría mapea cada tipo de contenido, relación y función personalizada antes de escribir una sola línea de código de migración.

¿Qué ocurre con las variables de plantilla y los snippets de MODX?

Las variables de plantilla de MODX se mapean a campos de contenido estructurado en tu nuevo CMS o esquema de Supabase. Los snippets y chunks que contienen lógica de presentación se reconstruyen como componentes Next.js. El contenido embebido en los chunks se extrae y se almacena como datos estructurados. El resultado final es una separación limpia de contenido y presentación que nunca fue realmente posible en MODX.

¿Cómo funciona la migración sin tiempo de inactividad?

Ejecutamos ambos sistemas en paralelo durante el período de transición. Tu CMS heredado permanece activo mientras el nuevo sitio Next.js se construye y prueba completamente en un dominio de staging. El DNS se cambia con un TTL mínimo y mantenemos el servidor heredado disponible como respaldo. La monitorización en tiempo real detecta cualquier problema en minutos tras la puesta en marcha.

¿Qué cubre realmente la garantía de Core Web Vitals?

Cada página que construimos superará la evaluación de Core Web Vitals de Google: LCP inferior a 2,5 s, INP inferior a 200 ms y CLS inferior a 0,1, medidos en el campo a través de los datos del Chrome User Experience Report. Si alguna página falla dentro de los 90 días posteriores al lanzamiento por causa de nuestro código, la corregimos sin coste adicional. Esto cubre nuestra implementación, no los scripts de terceros que añadas después del lanzamiento.

¿Por qué Next.js y Supabase en lugar de WordPress u otro CMS?

WordPress replicaría muchos de los mismos problemas de los que intentas escapar: arquitectura monolítica, dependencia de plugins, renderizado PHP en servidor y sobrecarga de seguridad. Next.js entrega páginas estáticas y renderizadas en servidor a la velocidad del edge de la CDN. Supabase proporciona un backend PostgreSQL gestionado con autenticación y APIs integradas: sin servidores que mantener, sin actualizaciones de plugins de las que preocuparse.

¿Ofrecéis soporte continuo después de la migración?

Sí. Cada migración incluye 30 días de monitorización post-lanzamiento y corrección de errores. Más allá de eso, ofrecemos paquetes de retención mensual para desarrollo continuo, cambios en el modelo de contenido, monitorización del rendimiento y administración de Supabase. La mayoría de los clientes pasan a un plan de soporte ligero tras el período inicial de estabilización.

Ready to migrate?

Free assessment. We'll audit your current site and give you a clear migration plan — no commitment.

Get your free assessment →
Get in touch

Let's build
something together.

Whether it's a migration, a new build, or an SEO challenge — the Social Animal team would love to hear from you.

Get in touch →