|

Desplegá tu web gratis en Vercel en 10 minutos

Actualización (13/06/2026): Confirmamos que el plan Hobby de Vercel sigue siendo gratuito permanentemente con todas sus ventajas incluidas.

  • Plan Hobby Forever Free: Vercel confirmó que su plan gratuito es permanente, sin cambios de precio ni limitaciones de tiempo.
  • 100 GB de ancho de banda mensual: El tier gratuito incluye más recursos que antes, ideal para proyectos personales y pequeños equipos.
  • CDN global + HTTPS automático: Todas las características de distribución global y seguridad están incluidas sin costo adicional en el plan Hobby.

Conectar una base de datos Aurora PostgreSQL a un proyecto de Vercel debería tomar diez minutos, pero la mayoría de los tutoriales fallan en desarrollo local por un solo motivo: el orden de los comandos. Si corrés la conexión antes de bajar las variables de entorno con vercel env pull, te comés un error de autenticación que no dice nada útil. Acá te muestro el camino que sí funciona.

Ponele que ya tenés tu app de Next.js andando, te armaste el cluster de Aurora en AWS y solo falta el último paso: que la app hable con la base. En el papel es trivial. En la práctica, entre el IAM, el OIDC y el pooling de conexiones, hay tres o cuatro lugares donde te podés trabar (y casi siempre te trabás en el local, no en producción).

Amazon Aurora PostgreSQL es la versión administrada y compatible con PostgreSQL de la base de datos relacional de AWS, diseñada para escalar de forma automática y replicarse entre zonas. Vercel es la plataforma de despliegue de aplicaciones serverless creada por el equipo detrás de Next.js. Conectar ambas significa darle a tus funciones serverless acceso seguro al cluster de Aurora usando variables de entorno o federación de identidad OIDC, sin contraseñas eternas hardcodeadas.

En 30 segundos

  • El error #1 en local: intentar conectar antes de correr vercel env pull, lo que deja a la app sin las credenciales y dispara fallos de autenticación PAM o de AssumeRoleWithWebIdentity.
  • Dos métodos de conexión: federación OIDC con autenticación IAM RDS (sin contraseñas de larga duración) o el clásico DATABASE_URL con usuario y password.
  • Pooling obligatorio: en Vercel las funciones son sin estado, así que necesitás un connection pool o vas a agotar las conexiones del cluster.
  • Aurora no tiene tier gratuito; Neon sí ofrece un plan free con branching, lo que la hace mejor para MVPs y proyectos chicos.
  • En 2026 las bases de AWS están integradas en Vercel a través del Marketplace de Vercel, según el anuncio de AWS.

¿Por qué fallan la mayoría de tutoriales de Aurora + Vercel en desarrollo local?

Acá viene lo bueno: casi todos los tutoriales que vas a encontrar asumen que tu entorno local ya tiene las credenciales correctas. Y no las tiene.

El problema concreto es este. Vercel guarda tus variables de entorno en la nube. En local no existen hasta que las bajás. Si seguís un tutorial al pie de la letra, corrés el script de conexión, y como no hay credenciales, Aurora rechaza el handshake. El mensaje que te tira suele ser un PAM authentication failed o un AssumeRoleWithWebIdentity que no le dice nada a nadie la primera vez que lo ve.

¿Y por qué pasa esto justo en local y no en producción? Porque en producción Vercel inyecta las variables automáticamente cuando despliega. En tu máquina, tenés que pedirlas vos. Tema relacionado: automatizar tus deployments a Vercel.

El otro motivo de fallo es la autenticación basada en IAM. Cuando usás el método de federación OIDC que documenta Vercel, no hay password: la app pide un token temporal a AWS y con eso entra. Pero ese flujo necesita que el rol de IAM esté bien configurado y que las verificaciones del gateway pasen. Si falta un permiso, el token no se genera y la conexión muere antes de empezar.

Requisitos previos para conectar Aurora a Vercel

Antes de tocar una sola línea de código, asegurate de tener todo esto resuelto. Te ahorra la mitad de los dolores de cabeza.

  • Una cuenta de Vercel con un proyecto activo: da igual si es hobby o pro, pero el proyecto tiene que estar creado y conectado a tu repo.
  • Una cuenta de AWS con Aurora PostgreSQL aprovisionado: Aurora Serverless v2 es compatible con PostgreSQL, así que tus queries de siempre funcionan sin cambios.
  • Tu app de Next.js: con el App Router o el Pages Router, da lo mismo para la conexión.
  • Conocimiento básico de variables de entorno: vas a manejar .env.local y el dashboard de Vercel.
  • El CLI de Vercel instalado: sin esto no podés correr vercel env pull, que es el comando que destraba todo.

Un detalle que mucha gente pasa por alto: Aurora Serverless escala a cero o casi cero cuando no hay tráfico, pero el primer request después de un período inactivo puede tener latencia de arranque en frío. Tenelo en cuenta si tu app es de bajo tráfico.

¿Cuáles son las opciones de conexión: OIDC Federation o variables de entorno?

Tenés dos caminos. Uno es más seguro y un poco más laburo. El otro es el de toda la vida y más rápido de armar.

El método recomendado por Vercel es la federación OIDC con autenticación IAM RDS. La idea es que tu función serverless no guarda ninguna contraseña: presenta una identidad federada, AWS la valida y le devuelve un token de acceso temporal a la base. Si alguien filtra tu código, no hay credenciales que robar.

El método tradicional es la cadena de conexión DATABASE_URL: usuario, contraseña, host y puerto, todo en una variable de entorno. Funciona en cinco minutos, pero esa contraseña vive en tus variables y es de larga duración.

CriterioOIDC Federation + IAMDATABASE_URL tradicional
Contraseñas almacenadasNinguna (tokens temporales)Sí, de larga duración
Complejidad de setupAlta (roles IAM, gateway)Baja
Rotación de credencialesAutomáticaManual
Riesgo si se filtra el códigoBajoAlto
Ideal paraProducción, equipos seriosPrototipos, pruebas rápidas
vercel connect database diagrama explicativo

Mi recomendación honesta: para un prototipo, andá con DATABASE_URL y no te compliques. Para algo que va a producción y maneja datos reales, vale la pena invertir el rato extra en OIDC. En elegir la herramienta de CI/CD correcta profundizamos sobre esto.

Paso a paso: configurar Aurora PostgreSQL en Vercel

Esta es la secuencia que sí funciona. El orden importa.

1. Bajá las variables de entorno PRIMERO

Antes de cualquier intento de conexión, corré esto en la raíz del proyecto:

vercel env pull .env.local

Este comando es el que casi todos los tutoriales ponen al final, cuando debería ir al principio. Trae las credenciales desde Vercel a tu máquina. Sin esto, todo lo demás falla.

2. Instalá el driver de PostgreSQL

npm install pg

El paquete pg (node-postgres) es el driver estándar. Si preferís un ORM, Prisma también anda bien con Aurora.

3. Armá la conexión con un pool

import { Pool } from 'pg'

const pool = new Pool({
 connectionString: process.env.DATABASE_URL,
 ssl: { rejectUnauthorized: true }
})

export default pool

Fijate que uso un pool, no una conexión suelta. En el próximo bloque te explico por qué eso no es opcional en Vercel.

4. Probá la conexión

Una query simple alcanza para confirmar que todo está bien conectado:

const result = await pool.query('SELECT NOW()')
console.log(result.rows)

Si te devuelve la hora del servidor, ya está. Si te tira un error de autenticación, volvé al paso 1: lo más probable es que el .env.local no se haya generado.

¿Cómo usar un connection pool para aplicaciones serverless?

El pooling no es un lujo en Vercel. Es supervivencia.

El tema es que las funciones serverless son sin estado y efímeras. Cada request puede levantar una nueva instancia de la función, y si cada una abre su propia conexión directa a Aurora, en un pico de tráfico te quedás sin conexiones disponibles y la base empieza a rechazar requests. Es el clásico “funcionaba en local con un usuario y se rompió con cien”.

Un connection pool reutiliza conexiones existentes en vez de abrir una nueva cada vez. La utilidad attachDatabasePool que documenta Vercel ayuda a gestionar esto de forma automática, asociando el pool al ciclo de vida de la función. Más contexto en optimizar tu app para búsqueda global.

Si usás Prisma, el cliente ya maneja pooling internamente, pero igual conviene configurar el límite de conexiones según el tamaño de tu cluster de Aurora. Una buena práctica es no pasarte del 80% del máximo de conexiones que soporta tu instancia, para dejar margen.

Vercel Postgres, Aurora o Neon: ¿cuál elegir en 2026?

La pregunta del millón. Y la respuesta honesta es: depende de dónde está parado tu proyecto.

OpciónTier gratuitoBranchingMejor para
NeonSí, nativoMVPs, startups, desarrollo
AuroraNoNo nativoEmpresas AWS-first, escala alta
Vercel PostgresLimitadoSegún planIntegración cero-config con Vercel

Si recién arrancás o estás validando una idea, Neon es difícil de superar: tenés un plan gratis y el branching te deja crear copias de la base para cada feature, como si fueran ramas de git. Para un MVP, eso es oro.

Si ya vivís dentro del ecosistema de AWS, tenés otros servicios ahí y manejás volúmenes grandes, Aurora es la opción lógica. Te integra con todo lo demás de AWS y escala sin que tengas que pensarlo. Eso sí: pagás desde el día uno, no hay tier gratuito.

Para todo esto vas a necesitar infraestructura confiable. Si buscás hosting o dominios en Argentina para tu proyecto, donweb.com es una buena base local antes de escalar a la nube.

Errores comunes de autenticación y cómo resolverlos

Estos son los que te van a aparecer, ordenados por frecuencia.

  • “AssumeRoleWithWebIdentity error”: el rol de IAM no está configurado para confiar en el proveedor OIDC de Vercel. Revisá la política de confianza del rol y que el audience coincida.
  • “PAM authentication failed”: casi siempre significa que las credenciales no llegaron. Corré vercel env pull de nuevo y verificá que el .env.local tenga contenido.
  • Variables de entorno no detectadas: Next.js solo lee .env.local al iniciar. Si editaste el archivo, reiniciá el server de desarrollo.
  • Error de SSL: Aurora requiere conexión cifrada. Si te tira un error de certificado, configurá el bloque ssl en tu pool como te mostré arriba.

¿El truco que resuelve el 70% de los casos? Reiniciar el server después de bajar las variables. Suena tonto, pero Next.js cachea las env vars al arrancar.

¿Cómo usar Aurora en producción con Vercel?

En local probaste con .env.local. En producción, las variables van en el dashboard de Vercel: entrás a la configuración del proyecto, sección Environment Variables, y las cargás ahí. Vercel las inyecta automáticamente en cada deploy. Para más detalles técnicos, mirá ejecutar agentes sin APIs externas.

Algunas prácticas que no son negociables en producción:

  • Nunca hardcodees contraseñas: ni en el código, ni en el repo. Usá roles IAM o las variables de entorno del dashboard.
  • Configurá health checks: un endpoint que haga un SELECT 1 te avisa si la base dejó de responder antes de que lo noten los usuarios.
  • Monitoreá las conexiones activas: CloudWatch te muestra cuántas conexiones tenés abiertas. Si trepan sin bajar, tenés una fuga.
  • Aprovechá los backups automáticos de Aurora: vienen activados por defecto, pero confirmá la ventana de retención según tu necesidad.

Preguntas Frecuentes

¿Cuáles son los pasos para conectar Aurora a Vercel?

Primero corré vercel env pull .env.local para bajar las credenciales, después instalá el driver pg, armá un connection pool apuntando a tu DATABASE_URL y probá la conexión con una query simple. El orden es clave: bajar las variables va primero.

¿Por qué fallan los tutoriales de Aurora + Vercel en desarrollo local?

Porque ponen el comando vercel env pull al final en vez de al principio. En local no existen las credenciales hasta que las bajás desde Vercel, así que cualquier intento de conexión previo dispara errores de autenticación PAM o de IAM.

¿Qué variables de entorno necesito para Aurora en Vercel?

Con el método tradicional necesitás DATABASE_URL con host, puerto, usuario y contraseña. Con el método OIDC no usás contraseña: configurás un rol de IAM y la app obtiene tokens temporales, lo que elimina credenciales de larga duración del entorno.

¿Cuál es la diferencia entre Vercel Postgres, Neon y Aurora?

Neon tiene tier gratuito y branching nativo, ideal para MVPs. Aurora no tiene plan gratis pero escala mejor dentro del ecosistema AWS. Vercel Postgres ofrece integración cero-config con la plataforma. Para empezar conviene Neon; para empresas AWS-first, Aurora.

¿Cómo configurar autenticación IAM para Aurora en Vercel?

Activá la autenticación IAM en tu cluster de Aurora, creá un rol de IAM con política de confianza hacia el proveedor OIDC de Vercel y usá la federación OIDC que documenta Vercel. La app pide un token temporal a AWS en cada conexión, sin contraseñas almacenadas.

Conclusión

Conectar Aurora a Vercel no es difícil, pero el camino está lleno de pequeñas trampas que casi siempre se reducen al mismo error: querer conectar antes de bajar las credenciales con vercel env pull. Arreglá el orden y la mitad de los problemas desaparecen.

Si arrancás un proyecto nuevo, pensá bien la base antes de comprometerte: Neon para validar rápido, Aurora cuando ya sabés que vas a escalar dentro de AWS. Y no importa cuál elijas, configurá el connection pool desde el día uno. En serverless, esa decisión es la diferencia entre una app que aguanta el tráfico y una que se cae en el primer pico.

Fuentes

Te puede interesar...