La mejor alternativa a Vercel depende de la app, así que usamos las dos. Las webs en Next.js, incluida esta, siguen en Vercel. Las apps nuevas funcionan en Cloudflare Workers con una base de datos D1, declaradas en un único archivo TypeScript con Alchemy.
La respuesta corta: Vercel gana en Next.js y en preview deployments sin configuración. Cloudflare gana cuando la app, su base de datos, la caché y el almacenamiento deben vivir en una sola cuenta, declarados como código y facturados por petición. A continuación verá cómo decidimos, qué dicen los precios de lista, nuestra configuración real y un problema que ninguna lista menciona: Vercel bloqueó los deploys de commits escritos por nuestro agente de IA.
Vercel o Cloudflare: ¿qué app va a cada sitio?
No elegimos un hosting por empresa. Lo elegimos por app, según lo que la app necesita:
La app necesita
Dónde funciona en nuestro caso
Por qué
Una web de marketing en Next.js con previews
Vercel
Next.js funciona allí sin configuración, cada rama recibe una URL de preview
Una app antigua en Next.js con Postgres y Prisma
Vercel
Funciona, y nadie paga una mudanza que no cambia nada para los usuarios
Una app nueva con base de datos, caché y almacenamiento de archivos
Cloudflare Workers, D1, KV, R2
Una cuenta, un archivo TypeScript lo declara todo
Una app completa en un servidor que usted controla
Un VPS sencillo
Control total, y la factura no crece por petición
La última fila no es teoría. Trasladamos el marketplace online de un cliente de una nube gestionada a un VPS sencillo. El hosting correcto es el que encaja con la app hoy, no el que usó el último proyecto.
¿Cuánto cuestan Vercel y Cloudflare sobre el papel?
Precios de lista, consultados el 24/10/2026. Cambian, así que revise las páginas antes de decidir:
Vercel (precios): Hobby cuesta 0 $, Pro 20 $ al mes con 20 $ de crédito de uso incluido, y después pago por consumo. La página indica 20 $ al mes por puesto de desarrollador en Pro.
Cloudflare Workers (precios): el plan Free tiene 100 000 peticiones al día. Workers Paid tiene un mínimo de 5 $ al mes por cuenta, con 10 millones de peticiones y 30 millones de milisegundos de CPU incluidos.
Cloudflare D1 (límites): 500 MB por base de datos en Free, 10 GB en Workers Paid. Las cuentas Free tienen 5 GB de almacenamiento en total.
La trampa no es el precio de Pro. Es el plan Hobby en un proyecto de cliente:
Hobby teams are restricted to non-commercial personal use only. All commercial usage of the platform requires either a Pro or Enterprise plan.
Vercel considera uso comercial que un consultor de pago escriba el código. Así que la cuenta gratuita de un freelance que aloja la app de un cliente es un problema con las condiciones, no un ahorro.
No publicamos lo que pagamos. Nuestras facturas no dicen nada de las suyas: el tráfico, los puestos y los servicios son distintos en cada app.
¿Cómo desplegamos en Cloudflare con Alchemy?
Alchemy se describe como «a single, type-safe TypeScript program for your cloud», es decir, un único programa TypeScript con tipos para toda su nube. En la práctica es un archivo junto a la app. Esta es la forma de nuestro alchemy.run.ts, abreviado y con nombres genéricos:
La base de datos, la caché y la app se declaran en el mismo lenguaje que la propia app. Sin YAML, sin clics en un panel. Un deploy funciona así:
01
Cambiar el esquema
El esquema de Drizzle es TypeScript. drizzle-kit generate escribe un archivo de migración SQL.
02
Lanzar el deploy
Alchemy crea o actualiza la base de datos D1 y el namespace KV, y aplica las migraciones de migrationsDir.
03
Vincular los recursos
La app recibe DB y CACHE como bindings, con tipos y sin cadenas de conexión.
04
Publicar el Worker
El build de TanStack Start va a Cloudflare Workers en el mismo stage.
Un compromiso honesto. Alchemy guarda su estado por defecto en una carpeta local .alchemy, y la nuestra está en el gitignore. Por eso nuestra app interna se despliega desde el equipo de un desarrollador, no desde CI. Alchemy ofrece un CloudflareStateStore para estado remoto (documentación). Todavía no lo hemos configurado. En una app de cliente en la que despliegan varias personas, eso va primero.
¿Por qué esta web sigue en Vercel?
Esta web es Next.js 16 con páginas de artículos estáticas y next/image. En Vercel, su vercel.json es literalmente {}. Cada rama recibe su propia URL de preview, y así revisamos un artículo nuevo antes de publicarlo.
Next.js también puede funcionar en Cloudflare. El adaptador OpenNext despliega Next.js en Workers y es compatible con Next.js 16. No hemos movido esta web allí, así que no podemos decirle cómo se compara. Mudar una web que funciona solo para cambiar de hosting es trabajo sin resultado para quien la lee.
Lo mismo vale para las apps antiguas de clientes. Un sistema que construimos para una empresa transitaria funciona con Next.js, Postgres y Prisma en Vercel. Se queda allí. Las apps nuevas empiezan en Cloudflare porque ahí vive nuestra plantilla, no porque las antiguas hayan fallado.
¿Por qué Vercel bloqueó los deploys de nuestro agente de IA?
Nuestro compañero de IA trabaja en issues con su propia cuenta y abre pull requests. Después de fusionar uno de sus PR, el deploy de producción en Vercel no se ejecutó. El estado del deployment era BLOCKED con el código TEAM_ACCESS_REQUIRED.
El motivo: Vercel bloquea los deployments cuyo autor del commit no es miembro del equipo de Vercel. Un squash merge mantiene al agente como autor. Vercel también bloquea a los coautores de una línea Co-authored-by. A otros equipos les ha pasado lo mismo con agentes como coautores (hilo en la comunidad de Vercel).
La solución es un puesto de Vercel para el agente. En Cloudflare la pregunta ni siquiera surgió, porque Alchemy despliega desde el código, no según el autor del commit.
¿Qué otras alternativas a Vercel existen?
Las listas habituales nombran los mismos hostings. Una línea para cada uno y una nota honesta sobre lo que sabemos:
Netlify: un modelo parecido al de Vercel, deploys desde git y previews. No lo hemos probado en producción.
Render: servicios de larga duración y Postgres gestionado. No lo hemos probado.
Un VPS con Coolify: su propio servidor con una interfaz de deploy encima. Usamos cargas en VPS sencillos, Coolify no lo hemos usado en producción.
Si alguien le vende una lista de diez hostings, pregúntele cuáles usa hoy.
¿Está su app lista para dejar Vercel?
Repase esto antes de empezar una mudanza. Cada punto es una pregunta que su repositorio puede responder:
El primer punto sorprende a la mayoría de los equipos. Una app en Next.js sobre Vercel suele usar funciones de la plataforma que nadie dejó por escrito. Encuéntrelas antes de la mudanza, no después.
Cómo decidimos qué puede cambiar un agente y qué comprueba el código antes de un merge lo contamos en Harness engineering en la práctica.
¿Quiere una app que funcione donde encaja?
Construimos y operamos aplicaciones web en Vercel, Cloudflare o su propio servidor, con la infraestructura en su cuenta y en código. Vea desarrollo de aplicaciones web a medida. La mayor parte de nuestro código la escribe la IA. Un senior revisa cada cambio y responde de producción. Desde 2023 hemos entregado más de 15 proyectos en producción.
Le respondemos en un plazo de dos días hábiles con algunas preguntas sobre su trabajo. Después acordamos qué hacemos primero.
Depende de la app. Para una web en Next.js, el propio Vercel es difícil de superar. Para una app que necesita base de datos, caché y almacenamiento en una sola cuenta, facturada por petición, usamos Cloudflare Workers con D1. Netlify, Render o un VPS con Coolify son otras opciones, pero no las hemos usado en producción.
¿Es Cloudflare Workers más barato que Vercel?
Según los precios de lista, la entrada es más baja: Workers Paid empieza en 5 $ al mes por cuenta con 10 millones de peticiones incluidas, Vercel Pro cuesta 20 $ al mes con 20 $ de crédito de uso (ambos consultados el 24/10/2026). Lo que pague de verdad depende del tráfico, los puestos y los servicios que use, así que compare con sus propios números.
¿Puedo ejecutar Next.js en Cloudflare?
Sí, mediante el adaptador OpenNext, que despliega Next.js en Cloudflare Workers y es compatible con Next.js 16. No hemos movido esta web allí, así que no podemos decir cómo se comporta frente a Vercel.
¿Puedo usar el plan Hobby de Vercel para un proyecto de un cliente?
No. Vercel indica que Hobby es para uso personal y no comercial, y eso incluye a un consultor de pago que escribe el código. Un proyecto de cliente necesita Pro o Enterprise.
¿Por qué Vercel bloquea mi deployment?
Una causa habitual: el autor del commit o una línea Co-authored-by no es miembro del equipo de Vercel. Ocurre con commits escritos por agentes de IA. La solución: añadir el agente al equipo de Vercel como miembro con su propio puesto.
Pregunte a una IA sobre este artículo
La IA también tiene en cuenta nuestros otros artículos y la experiencia de proyectos reales.
Refactorice cuando el código hace lo correcto, pero mal. Reescriba cuando hace lo incorrecto o el código no es suyo. Una tabla de decisión para CTO y una forma de hacerlo sin detener el roadmap.
La deuda técnica se mide con el historial de git y los errores, sin herramientas caras. Corrija primero el código que más cambia y bloquea el roadmap, no el más feo. Una guía para CTO.
El body shopping le da horas de desarrollador que gestiona usted. Un sénior en su equipo le da tareas entregadas y un equipo que aprende a trabajar con IA. Comparado con el outsourcing y la contratación, para CTO.
Es hora de dejar de planificar y empezar a resolver.