Llevas unos meses usando Supabase Cloud y la factura no para de subir.

Cada poco de tráfico de salida extra de la base de datos añade una línea a la factura. Cada 10 000 usuarios activos mensuales te acercan un poco más a un cargo por exceso.

El plan Pro, que empezó costando 25 $ al mes, ahora se parece más a 70 $.

En algún punto entre la página de precios y tu factura real, las cuentas dejaron de parecer una ganga.

Autoalojarlo es la alternativa obvia, pero lo de obvia tiene más miga de lo que parece. Supabase no es un único binario que sueltas en un servidor. Es un stack de backend completo (una base de datos Postgres, un servicio de autenticación, una API REST, suscripciones en tiempo real, almacenamiento, funciones edge y un panel) conectado entre sí y ejecutándose como una pequeña flota de contenedores Docker.

Ejecutar esa flota en tu propio servidor cuesta entre 23 y 35 $ al mes con Stack 16 (22,99 $/mes durante los 3 primeros meses con facturación mensual y después 34,99 $/mes), un VPS con RAM suficiente para mantenerlo todo en memoria. Es lo que pagas por dos suscripciones de streaming al mes, por un backend que no te cobrará de más cuando el tráfico se dispare.

¿Qué es Supabase y por qué la gente lo autoaloja?

Supabase es una plataforma de backend como servicio (BaaS) de código abierto que reúne en un único despliegue una base de datos Postgres, autenticación, una API REST, suscripciones en tiempo real, almacenamiento y funciones edge.

Es la alternativa a Firebase que funciona en tu propia infraestructura, si así lo quieres. En mayo de 2026, su repositorio de GitHub ya ha superado las 100 000 estrellas, y la plataforma impulsa los backends de empresas como Mozilla, PwC, Johnson & Johnson y 1Password.

La cuestión es si quieres asumir el trabajo operativo que Supabase Cloud hace por ti o pagar a alguien para que lo haga. Hablamos de copias de seguridad, registros, envío de correo electrónico y actualizaciones.

Hay tres motivos para autoalojar Supabase:

  1. Costes predecibles que no crecen con el uso.
  2. Datos en una infraestructura que controlas tú.
  3. Escapar de la dependencia del proveedor que hacía tan difícil abandonar Firebase.

El propio Supabase es refrescantemente sincero sobre quién debería autoalojarlo y quién no. Su documentación oficial sobre autoalojamiento lo dice claramente: Self-hosted Supabase is community-supported. You won’t receive the same level of official support as Supabase Cloud customers.

En otras palabras: si algo se rompe a las 2 de la madrugada, estás solo.

Lo que Supabase te ofrece de serie

Stack de Supabase con sus servicios principales: Postgres, API REST, autenticación, tiempo real, almacenamiento y funciones

Si pensabas que Supabase era solo Postgres con una API REST, te equivocas. El stack autoalojado ejecuta unos 12 contenedores en paralelo.

Las partes que más vas a tocar son bastante sencillas:

  • Postgres. La base de datos en torno a la que gira todo. Supabase usa una versión moderna de PostgreSQL con extensiones para autenticación, tiempo real y búsqueda de texto completo.
  • PostgREST. Genera automáticamente una API REST a partir de tu esquema de Postgres. Cada tabla se convierte en un endpoint, sin que tengas que escribir ni una línea de código de backend.
  • Auth (antes GoTrue). Gestiona registros, inicios de sesión, restablecimientos de contraseña, OAuth y la emisión de JWT.
  • Realtime. Envía los cambios de la base de datos a los clientes conectados mediante WebSockets.
  • Storage. Almacenamiento de objetos compatible con S3, con control de acceso vinculado a tu base de datos.
  • Edge Functions. Funciones serverless basadas en Deno que se ejecutan cerca de tus usuarios.
  • Supabase Studio. El panel desde el que exploras tablas, ejecutas SQL y gestionas los usuarios de autenticación.

También incluye Kong como pasarela de API, imgproxy para el tratamiento de imágenes, Supavisor para el pooling de conexiones y Logflare para las analíticas. Si lo juntas todo, tienes un stack de backend completo, no una simple aplicación.

¿Cuánto cuesta autoalojar Supabase?

Autoalojar Supabase en un VPS cuesta entre 23 y 35 $ al mes con Stack 16, con servidor, almacenamiento y ancho de banda incluidos. El software de Supabase es gratuito.

Echa un vistazo a tu última factura de Supabase Cloud. Lo que pilla desprevenida a la gente no son los 25 $ de base, sino el tráfico de salida de la base de datos y el almacenamiento adicional, que el plan Pro cobra aparte (el desglose de costes de 2026 de Supascale repasa cada concepto).

Compáralo con Supabase Cloud:

PlanCoste baseQué incluye
Free$0Base de datos de 500 MB
50 000 usuarios activos mensuales
1 GB de almacenamiento
Se pausa tras 7 días de inactividad
Pro25 $/mesBase de datos de 8 GB
100 000 usuarios activos mensuales
100 GB de almacenamiento
250 GB de tráfico de salida
Team599 $/mesSoporte prioritario
Inicio de sesión único (SSO)
Registros de auditoría
Escalado según el uso
VPS autoalojado (Stack 16)22,99 $/mes durante 3 meses, después 34,99 $/mesIlimitado (solo depende de la capacidad del servidor)

El precio base de Pro parece similar, pero el uso real lo dispara enseguida.

El análisis de Supascale muestra que la mayoría de las aplicaciones en producción pequeñas y medianas acaban pagando entre 100 y 200 $/mes en Pro al sumar los complementos de computación y los excesos de uso. Solo los niveles de computación de Supabase van desde 10 $/mes hasta 3730 $/mes para la instancia 16XL. Las aplicaciones con entre 100 000 y 200 000 usuarios activos mensuales pueden superar con creces esa cifra, y con 500 000 MAU las facturas pueden llegar a 1000-2000 $/mes.

El plan Free es gratis… hasta que intentas usarlo en producción.

Los proyectos se pausan automáticamente tras siete días de inactividad. Eso significa que tu entorno de preproducción muere cada semana y que tus proyectos personales se rompen cada vez que te vas de vacaciones. Según el desglose de precios de 2026 de UI Bakery, este es el motivo más habitual por el que la gente abandona el plan Free antes de lo previsto.

Autoalojar le da la vuelta a la ecuación. Tus costes dependen de tu infraestructura, no de tu uso. Atender a 50 000 MAU cuesta lo mismo que atender a 500 000, con el único límite de lo que aguante tu VPS. Sin tarifas por tráfico de salida, sin excesos de almacenamiento y sin complementos de computación.

Autoalojar no es solo pagar un VPS

La factura del VPS no es el único coste de autoalojar. También pagarás de otras formas:

  • Tu tiempo. Calcula entre una y dos horas al mes para el mantenimiento rutinario: actualizaciones de seguridad, descarga de imágenes de Docker, revisión de registros y comprobación de copias de seguridad. Reserva más tiempo si añades funciones o escalas.
  • Envío de correo electrónico. Supabase Cloud gestiona los correos de autenticación (como restablecimientos de contraseña, enlaces mágicos o verificación del correo) como un servicio administrado. La versión autoalojada, no. Necesitarás un proveedor SMTP como SendGrid, Mailgun o AWS SES. Calcula entre 0 y 30 $/mes según el volumen.
  • Almacenamiento de objetos para archivos. El servicio Storage usa por defecto el sistema de archivos local, que sirve para pruebas, pero en producción es una bomba de relojería. Necesitarás almacenamiento de objetos compatible con S3. AWS S3, Backblaze B2, Wasabi o cualquier otro servicio compatible con S3 te sirven. Reserva entre 5 y 20 $/mes para una aplicación en producción de tamaño pequeño o mediano.
  • Infraestructura de copias de seguridad. Autoalojar no incluye copias de seguridad automáticas, así que tendrás que configurarlas tú. Programa un cron job con simple pg_dump y guarda el resultado en un lugar fiable. No te saltes este paso: tu yo del futuro te lo agradecerá.

¿Qué especificaciones de servidor necesita Supabase?

Supabase consume mucha memoria. Ejecutar 12 contenedores a la vez, la mayoría relacionados con la base de datos, hace que la RAM importe más que la CPU. El mínimo práctico son 4 GB para una instancia de desarrollo con los servicios opcionales desactivados. Los despliegues en producción necesitan 8 GB o más.

El motivo es el número de contenedores, no un servicio concreto. Postgres necesita búferes compartidos. PostgREST necesita un grupo de conexiones. GoTrue necesita algo de memoria para el entorno de ejecución de Go. Realtime mantiene abiertas las conexiones WebSocket. Edge Runtime levanta entornos aislados de V8.

Por separado, cada servicio es modesto. Juntos, suman rápido.

Si nunca has aprovisionado un VPS, empieza por nuestra guía de VPS para principiantes antes de dimensionar tu servidor.

En DreamHost, Stack 16 (4 vCPU, 16 GB de RAM, 250 GB de NVMe SSD y acceso root completo) es el plan más pequeño que cumple lo que recomienda Supabase para un despliegue con todos los servicios opcionales: 4 núcleos y 8 GB. Stack 8 cumple la memoria y el disco recomendados con 2 vCPU y es adecuado para una aplicación pequeña o un entorno de staging.

¿Qué tamaño de VPS necesita Supabase?

Carga de trabajoRAMCPUIdeal para
Desarrollo / ligero4 GB2 núcleosPruebas, pequeños proyectos personales, Analytics y Realtime desactivados
Producción estándar8 GB4 núcleosPequeñas aplicaciones SaaS, backends de aplicaciones móviles, todos los servicios activados
Intensivo16 GB+4-8 núcleosMás tráfico, grandes cargas de trabajo de Postgres, Edge Functions a gran escala

También puedes quitar servicios opcionales del archivo de Docker Compose para reducir el consumo de recursos.

¿No necesitas suscripciones en tiempo real? Prescinde del contenedor de Realtime.

¿No usas Edge Functions? Elimina Edge Runtime.

¿Las analíticas no son críticas? Quita Logflare.

Un stack reducido cabe con más holgura en un VPS de 4 GB.

El almacenamiento NVMe importa más de lo que crees. Postgres lee y escribe constantemente, y la latencia del SSD influye directamente en la velocidad de las consultas. Los discos SATA antiguos o los discos duros mecánicos te frenarán mucho antes de que la base de datos se ponga interesante.

¿Cómo se instala Supabase autoalojado?

Proceso de cinco pasos para arrancar el stack: aprovisionar el VPS, instalar Docker, clonar el repositorio y generar los secretos

El despliegue completo consta de unos cinco pasos y lleva entre una y dos horas si te manejas bien en la terminal.

Esto es lo que tienes que hacer:

  1. Aprovisiona un VPS con Ubuntu 22.04 o posterior, 8 GB de RAM y acceso SSH.
  2. Instala Docker y Docker Compose en el servidor.
  3. Clona el repositorio de Supabase y copia el archivo de entorno de ejemplo: git clone https://github.com/supabase/supabase && cp supabase/docker/.env.example supabase/docker/.env
  4. Genera y configura los secretos. Ejecuta el script generate-keys.sh de Supabase para generar tu JWT_SECRET, tu ANON_KEY y tu SERVICE_ROLE_KEY. Después, define POSTGRES_PASSWORD y las credenciales del panel en el archivo .env.
  5. Ejecuta docker compose up -d desde el directorio docker y se iniciará todo el stack.

Sabrás que ha funcionado cuando docker compose ps muestre todos los servicios en estado running o healthy, y curl http://localhost:8000/rest/v1/ devuelva una respuesta JSON de PostgREST.

Si algún contenedor está en estado restarting o exited, revisa primero sus registros. Postgres suele ser el culpable, y la causa suele ser una variable de entorno que falta o tiene un formato incorrecto.

La documentación oficial de Supabase sobre el autoalojamiento con Docker explica todas las variables de entorno.

Kong, la pasarela de API, se sitúa delante de todo y gestiona el enrutamiento. En producción, lo habitual es colocar delante de Kong un proxy inverso como Caddy o Nginx para terminar HTTPS y restringir el acceso al panel. Un proxy inverso es un servidor que se sitúa entre internet y tu aplicación y se encarga del SSL y el enrutamiento.

Guarda tu JWT_SECRET, tu ANON_KEY y tu SERVICE_ROLE_KEY en un lugar fiable en cuanto se generen. Perderlos no es una catástrofe, porque puedes regenerarlos. Pero rotarlos hace que caduquen todas las sesiones de usuario activas y obliga a todas las aplicaciones cliente a usar claves nuevas.

Lo que necesitas para autoalojar Supabase

  • Un VPS con Ubuntu 22.04 o posterior, al menos 8 GB de RAM y acceso root/SSH
  • Un nombre de dominio que apunte a la IP de tu servidor
  • Docker y Docker Compose instalados
  • Un proveedor SMTP configurado para los correos de autenticación (SendGrid, Mailgun, AWS SES)
  • Almacenamiento de objetos compatible con S3 para las subidas de archivos en producción (opcional, pero recomendable)
  • Soltura básica con la terminal y entre una y dos horas

¿Cómo mantienes segura una instancia de Supabase autoalojada?

La seguridad de Supabase autoalojado se apoya en tres pilares propios de la plataforma, además de las buenas prácticas habituales de cualquier VPS.

Tres vulnerabilidades de seguridad de la base de datos: secreto JWT expuesto, tablas sin proteger

El secreto JWT

Cada token de autorización que emite Supabase se firma con tu JWT_SECRET. Si se filtra, los atacantes pueden falsificar tokens para suplantar a cualquier usuario.

La documentación de Supabase sobre la seguridad de los tokens explica cómo funciona: A shared secret that is in the hands of a malicious actor can be used to impersonate your users [and] give them access to privileged actions or data, and it is difficult to detect or identify when or how a shared secret has been given to a malicious actor.

Trata JWT_SECRET como la contraseña de una base de datos de producción porque, en la práctica, es exactamente eso. Guárdalo en un gestor de secretos, no en un archivo .env en Git, y nunca en el bundle de tu frontend.

La opción recomendada para producción son las claves de firma asimétricas (RS256 o ECC). Es más difícil filtrarlas por accidente que un secreto compartido, y Supabase admite ambas.

Seguridad a nivel de fila

El servicio PostgREST de Supabase expone cada tabla de tu base de datos como un endpoint REST.

Sin políticas de Row Level Security en cada tabla, cualquier usuario autenticado puede leer y escribir todas las filas. Es el error más habitual de quienes empiezan a autoalojar.

Activa RLS en todas las tablas desde el primer día, incluidas las que crees que no lo necesitan.

Clave de rol de servicio

SERVICE_ROLE_KEY es una clave de superadministrador que omite por completo Row Level Security.

Está pensada para llamadas entre backends en las que necesitas saltarte expresamente los permisos a nivel de usuario. La clave nunca debe aparecer en código de frontend, repositorios públicos ni bundles de aplicaciones cliente. Si se filtra, toda tu base de datos queda expuesta.

Más allá de lo específico de Supabase, se aplica el refuerzo de seguridad habitual de cualquier servidor. Activa un firewall que solo exponga los puertos 22 (SSH), 80 (HTTP) y 443 (HTTPS). Ejecútalo todo detrás de un proxy inverso con HTTPS. Restringe Supabase Studio a IP conocidas y mantén el servidor actualizado. Nuestros consejos de seguridad en la nube recogen la lista general de refuerzo, así que te conviene echarles un vistazo.

Una última cosa: rotar el secreto JWT invalida al instante todas las sesiones de usuario activas. Planifica una ventana de mantenimiento y no lo rotes un viernes por la tarde, o lo vas a pasar mal.

¿Qué ventajas e inconvenientes tiene Supabase autoalojado frente a Supabase Cloud?

Supabase autoalojado y Supabase Cloud no son intercambiables. Cada uno gana en aspectos distintos.

CaracterísticaAutoalojadoSupabase Cloud
Coste mensual34,99 $ del VPS (Stack 16, tras el precio promocional) + complementos25 $ de base + excesos por uso
Escalado más allá de la baseLimitado por tu VPSAutomático (previo pago)
Copias de seguridad automáticasPor tu cuenta (cron con pg_dump)Automáticas diarias + PITR
Registros (PostgREST, Edge Functions)Sistema de observabilidad propioIntegrados en el panel
Edición de Edge FunctionsSolo por CLIEditor en el panel
Envío de correo electrónicoProveedor SMTP propioAdministrado
SoporteComunidad (GitHub, Discord)Planes de pago con SLA
Ubicación de los datosDonde quierasRegiones en la nube de Supabase
Cumplimiento normativoEs responsabilidad tuyaRequiere Pro o superior

Autoalojar tiene sentido cuando los costes predecibles importan más que la comodidad de un servicio administrado, cuando necesitas que los datos estén físicamente en una infraestructura que controlas o cuando tienes varios proyectos que costarían 25 $ o más al mes cada uno en Cloud.

Cloud gana cuando la capacidad de operaciones escasea y cuando las copias de seguridad automáticas y una disponibilidad respaldada por SLA son innegociables. También es buena opción cuando tu equipo es pequeño y las cuentas del coste total de propiedad favorecen de verdad al hosting administrado.

También hay un término medio.

Herramientas como Coolify, Dokploy y Railway pueden desplegar y gestionar Supabase en tu VPS, encargándose de las actualizaciones, las copias de seguridad y parte de la observabilidad sin tener que hacerlo todo a mano con Docker Compose.

En pocas palabras: obtienes casi todo el ahorro del autoalojamiento con menos carga operativa. Ninguna iguala el pulido del panel de Cloud, pero todas cuestan menos que Cloud a escala.

¿De verdad deberías autoalojar Supabase?

Autoalojar Supabase no es tanto una decisión de costes como una decisión operativa.

El VPS es barato. Lo que de verdad asumes es hacerte cargo de las copias de seguridad, los registros y toda la fontanería del correo de autenticación. Para la mayoría de los equipos pequeños, el cambio solo compensa cuando los precios de Cloud empiezan a doler o cuando la residencia de los datos deja de ser un extra y se convierte en un requisito.

Si no estás listo para la configuración manual completa, herramientas como Coolify y Dokploy ofrecen un punto intermedio. Gestionan todos los servicios en tu VPS con menos carga que Docker Compose a pelo y a un coste menor que Cloud cuando escalas.

El primer mes de autoalojamiento es el más duro. Ajustarás límites de recursos que no sabías que existían, descubrirás fallos que nadie había documentado y escribirás el manual de operaciones que te habría gustado que alguien te diera.

Del segundo al duodécimo mes todo se calma. Descargas actualizaciones con Docker Compose, ejecutas cada noche un pg_dump a S3 y tu factura no se mueve.

La mejor forma de saber en qué lado estás: contrata un Stack 4 (8,99 $/mes los primeros 3 meses con facturación mensual), ejecuta una instancia de Supabase que no sea de producción durante una semana y deja que la experiencia decida por ti.

Los números harán el resto.

Preguntas frecuentes sobre cómo autoalojar Supabase

¿Supabase autoalojado es realmente gratis?

Supabase autoalojado es software de código abierto gratuito con licencia Apache 2.0. Tus costes reales son el VPS, un proveedor SMTP opcional para los correos de autenticación y un almacenamiento opcional compatible con S3 para las subidas de archivos en producción. Con Stack 16, calcula 34,99 $ al mes por el servidor una vez terminado el precio promocional de 3 meses, más entre 0 y 30 $ por el proveedor SMTP y entre 5 y 20 $ por el almacenamiento de objetos.

¿Qué servidor necesito para autoalojar Supabase?

La configuración recomendada para producción es de 8 GB de RAM, 4 núcleos de CPU y almacenamiento NVMe SSD. El stack completo de Supabase ejecuta alrededor de una docena de contenedores, y la mayoría ocupan memoria de trabajo.

Puedes ejecutar una instancia mínima de desarrollo con 4 GB si desactivas Analytics, Realtime y Edge Runtime en tu archivo de Docker Compose. El plan Stack 16 de DreamHost ofrece 4 vCPU y 16 GB de RAM con acceso root completo, y es el plan más pequeño que cumple las especificaciones recomendadas por Supabase. Consulta nuestros planes de hosting VPS para ver toda la gama.

¿Qué funciones le faltan a Supabase autoalojado?

Las mayores carencias son las copias de seguridad automáticas de la base de datos, la recuperación a un momento dado, la edición de funciones edge desde el panel, los registros unificados de PostgREST y Edge Functions, y el envío de correo electrónico administrado. Puedes montar sustitutos para todo ello (por ejemplo, cron jobs con pg_dump, un sistema de observabilidad propio o un proveedor SMTP), pero nada viene de serie. El panel de Supabase Studio funciona en la versión autoalojada, pero el panel de Cloud está más pulido y recibe antes las novedades.

¿Cómo actualizo una instancia de Supabase autoalojada?

Ejecuta docker compose pull para descargar las imágenes más recientes y, después, docker compose up -d para reiniciar con las nuevas versiones. Toda la actualización lleva unos cinco minutos en una instancia que funcione bien.

Haz una copia de seguridad de tu base de datos Postgres con pg_dump antes de cualquier actualización de versión mayor, fija tus imágenes de Docker a etiquetas de versión concretas en producción y lee las notas de la versión de Supabase para detectar cambios incompatibles. Los servicios de autenticación y almacenamiento a veces requieren pasos de migración.

¿Puedo migrar de Supabase Cloud a una versión autoalojada?

Sí, pero no basta con exportar la base de datos. Los datos de Postgres se migran con pg_dump desde Cloud y pg_restore en la instancia autoalojada. Los usuarios de autenticación, los objetos de almacenamiento y las funciones edge tienen cada uno su propio proceso de migración.

Calcula unas cuantas horas de trabajo para un proyecto pequeño y más para esquemas complejos.

¿Necesitas ayuda?

¿Te atoraste o no sabes por dónde empezar? Nuestros expertos te echan la mano a cualquier hora. ¡Aquí estamos para ayudarte!

Ventas de DreamHost

24/7/365 en el chat del sitio

Soporte al cliente por chat

24/7/365 desde tu panel de control

Ir al panel
Soporte al cliente por correo

24/7/365 desde tu panel de control

Ir al panel