SSD Nodes Learn 🎉 VPS desde $4.99/mes
Guías Matt ConnorPor Matt Connor · Actualizado 2026-08-07

VPS con GPU frente a API: punto de equilibrio

Calcula cuándo un VPS con GPU a $0.50/h supera el coste por token de una API, con el volumen mensual exacto para modelos grandes y pequeños.

Dónde se sitúa realmente el punto de equilibrio

Un VPS con GPU supera la facturación de una API por token en un punto concreto: cuando el coste mensual fijo, dividido entre los tokens de salida que realmente genera ese mes, es inferior a lo que la API cobra por esos mismos tokens. El alquiler no cambia. La factura de la API cambia con cada solicitud. Por tanto, la respuesta siempre es un volumen mensual, nunca un simple sí o no.

Haga el cálculo con un VPS con GPU de gama media a $0.50 por hora, es decir, $365 por un mes de 730 horas. Frente a la API de un modelo de vanguardia, el punto de equilibrio se alcanza en 24.3 millones de tokens de salida al mes. Frente a un modelo comercial pequeño, se alcanza en 73 millones. Frente a un modelo open-weight alojado del mismo tamaño, nunca se alcanza el punto de equilibrio, porque una sola tarjeta no puede generar suficientes tokens en un mes para llegar al punto de cruce.

Los estudios publicados sobre el punto de equilibrio no responden a esta pregunta. Dos estudios anteriores de 2026 sitúan el cruce cerca de una utilización sostenida del 72% en una H200 y entre un ciclo de trabajo del 22% y el 48% en una MI300X. Ambos comparan con el producto serverless del mismo proveedor y calculan el precio de aceleradores que cuestan más por hora de lo que la mayoría de los lectores de este artículo gastan en un mes. La aritmética es idéntica. A continuación se repite el cálculo para una tarjeta, un modelo abierto de entre 7B y 30B y una facturación de API medida por consumo normal.

Todos los números siguientes son valores de entrada, no resultados. Sustitúyalos por los suyos.

La fórmula, para que pueda sustituir sus propios valores

cost_per_million = (hourly_rate * 1000000) / (tokens_per_second * 3600 * duty_cycle)

breakeven_millions_per_month = (hourly_rate * hours_per_month) / api_price_per_million

capacity_millions_per_month = (tokens_per_second * 3600 * hours_per_month) / 1000000

required_duty_cycle = breakeven_millions_per_month / capacity_millions_per_month

Hay cuatro valores de entrada. Puede medirlos o consultarlos todos.

  • hourly_rate es el coste por hora de la GPU VPS, incluidas las horas en las que permanece inactiva. Si paga mensualmente, divida el precio mensual entre 730.
  • tokens_per_second es la tasa de salida agregada que mantiene su servidor con su concurrencia real. No es el valor de una sola secuencia de una tabla del proveedor.
  • duty_cycle es la fracción del mes durante la que la GPU genera tokens. Una máquina que alquila todo el mes y usa dos horas al día tiene un valor del 8.3%.
  • api_price_per_million es el precio medido con el que compara, para los tokens de salida.

El ejemplo calcula el precio de los tokens de salida en ambos lados, porque la salida representa la mayor parte del coste en chats y trabajos de agentes. Si sus prompts son largos, añada la entrada en ambos lados. En la API, aparece como una línea independiente de la factura. En su propia tarjeta, el prellenado consume tiempo de GPU, por lo que ya se refleja en un valor tokens_per_second medido más bajo.

Cómo medir los tokens por segundo antes de confiar en el cálculo

Todo lo anterior depende de un único valor medido. Si se equivoca por un factor de tres, el resultado también será incorrecto por un factor de tres. Mídalo en la tarjeta que va a alquilar, con el modelo y la cuantización que realmente va a ejecutar.

Ollama proporciona la cifra de un único flujo con un solo comando:

ollama run qwen3:8b --verbose "Write 400 words about disk latency."

--verbose muestra un bloque de tiempos después de la respuesta. La línea importante es eval rate, expresada en tokens por segundo, que sólo cuenta la generación. prompt eval rate es la velocidad de prefill y normalmente es mucho mayor. Sus valores serán distintos de estos:

eval count:       412 token(s)
eval duration:    9.612s
eval rate:        42.86 tokens/s

Un único flujo no es el valor correcto para un modelo de costes, porque mide una petición cada vez en una tarjeta que puede atender varias simultáneamente. Para obtener la cifra agregada, sirva el modelo con vLLM y lea el rendimiento que el servidor informa:

pip install vllm
vllm serve Qwen/Qwen3-8B --max-model-len 8192

Mientras haya peticiones en curso, el servidor registra una línea de estado en cada intervalo de informe. Los campos exactos cambian entre versiones de vLLM, así que lea los de su instalación en lugar de copiar los míos:

Avg prompt throughput: 812.4 tokens/s, Avg generation throughput: 396.1 tokens/s, Running: 16 reqs, Waiting: 0 reqs, GPU KV cache usage: 21.7%

Avg generation throughput es el valor que necesita la fórmula. Aumenta al añadir peticiones simultáneas hasta que se llena la caché KV (caché key-value, el estado de atención que vLLM mantiene en la VRAM para cada petición); después deja de aumentar. Si supera ese punto, las peticiones esperan en cola en lugar de procesarse más rápido, lo que se observa como un aumento del contador Waiting. vLLM también incluye un generador de carga, vllm bench serve. Sus flags cambian entre versiones, así que ejecute vllm bench serve --help en la versión que instaló en lugar de copiar un comando de una publicación de blog.

Supervise la tarjeta mientras se ejecuta la prueba:

nvidia-smi --query-gpu=utilization.gpu,memory.used,power.draw --format=csv -l 5

Si utilization.gpu se mantiene cerca del 100% durante la generación, está limitado por el rendimiento y el valor medido es el límite real. Si se mantiene bajo, el límite es otro: hay muy pocas peticiones simultáneas, el cliente es lento o el modelo no cabe en la VRAM y parte de su ejecución se descarga en la RAM del sistema. Ollama y vLLM aplican compromisos muy distintos en este aspecto, y la diferencia entre ambos en la misma tarjeta es suficientemente grande como para cambiar el punto de equilibrio por un factor de varios.

Qué aspecto tiene la factura a lo largo de un mes

El ejemplo práctico utiliza una GPU VPS de 24 GB a $0.50 por hora y un modelo abierto de 8B servido por vLLM, con una medición agregada de 400 tokens de salida por segundo y 16 solicitudes simultáneas. El alquiler es fijo, independientemente de que use la tarjeta o no. A esa velocidad, la capacidad es de 1,051 millones de tokens de salida al mes. Esa es la producción de la tarjeta si no se detiene nunca.

ChartMonthly cost by output volume: one GPU VPS at $0.50 per hour against metered APIs (USD)
The data behind this chart
[
  {
    "output_tokens_millions": 5,
    "gpu_vps_usd": 365,
    "open_api_usd": 1,
    "small_api_usd": 25,
    "frontier_api_usd": 75
  },
  {
    "output_tokens_millions": 10,
    "gpu_vps_usd": 365,
    "open_api_usd": 2,
    "small_api_usd": 50,
    "frontier_api_usd": 150
  },
  {
    "output_tokens_millions": 25,
    "gpu_vps_usd": 365,
    "open_api_usd": 5,
    "small_api_usd": 125,
    "frontier_api_usd": 375
  },
  {
    "output_tokens_millions": 50,
    "gpu_vps_usd": 365,
    "open_api_usd": 10,
    "small_api_usd": 250,
    "frontier_api_usd": 750
  },
  {
    "output_tokens_millions": 100,
    "gpu_vps_usd": 365,
    "open_api_usd": 20,
    "small_api_usd": 500,
    "frontier_api_usd": 1500
  },
  {
    "output_tokens_millions": 250,
    "gpu_vps_usd": 365,
    "open_api_usd": 50,
    "small_api_usd": 1250,
    "frontier_api_usd": 3750
  },
  {
    "output_tokens_millions": 500,
    "gpu_vps_usd": 365,
    "open_api_usd": 100,
    "small_api_usd": 2500,
    "frontier_api_usd": 7500
  },
  {
    "output_tokens_millions": 1000,
    "gpu_vps_usd": 365,
    "open_api_usd": 200,
    "small_api_usd": 5000,
    "frontier_api_usd": 15000
  }
]

El coste de la GPU es constante: 365 dólares, porque el alquiler no depende de lo que haga con la tarjeta. Cada línea de API es una recta que parte de cero. Cada par se cruza exactamente una vez.

Con 25 millones de tokens de salida al mes, la API de frontera factura 375 dólares, por lo que ambas opciones difieren en menos de diez dólares. Con 50 millones, el modelo comercial pequeño factura 250 dólares y sigue siendo la opción más barata. Con 1000 millones de tokens de salida, lo que requiere que la tarjeta esté ocupada el 95% del mes, la API alojada de pesos abiertos factura 200 dólares, frente al mismo alquiler. La tarjeta pierde por un factor de casi dos justo en el volumen en el que trabaja con mayor intensidad.

Este último resultado sorprende, pero no es accidental. Un endpoint alojado de pesos abiertos es una flota de GPU que funciona con una utilización elevada, por lo que su precio se aproxima al coste de una tarjeta saturada. No puede superar a una flota saturada alquilando una tarjeta y ejecutándola con una carga inferior a la máxima. Lo que sí puede superar son los precios de los modelos de frontera, que se fijan según sus capacidades y no según el tiempo de uso del hardware.

Coste por millón de tokens de salida en cada ciclo de actividad

El volumen y el ciclo de actividad son el mismo dato visto desde dos perspectivas. El alquiler compra horas. Las horas inactivas no producen nada y siguen costando dinero.

ChartCost per million output tokens at each duty cycle (USD, list prices August 2026)
The data behind this chart
[
  {
    "label": "100% duty",
    "self_host_usd_per_million": "0.35",
    "open_api_usd_per_million": "0.20",
    "small_api_usd_per_million": "5.00",
    "frontier_api_usd_per_million": "15.00"
  },
  {
    "label": "50% duty",
    "self_host_usd_per_million": "0.69",
    "open_api_usd_per_million": "0.20",
    "small_api_usd_per_million": "5.00",
    "frontier_api_usd_per_million": "15.00"
  },
  {
    "label": "25% duty",
    "self_host_usd_per_million": "1.39",
    "open_api_usd_per_million": "0.20",
    "small_api_usd_per_million": "5.00",
    "frontier_api_usd_per_million": "15.00"
  },
  {
    "label": "10% duty",
    "self_host_usd_per_million": "3.47",
    "open_api_usd_per_million": "0.20",
    "small_api_usd_per_million": "5.00",
    "frontier_api_usd_per_million": "15.00"
  },
  {
    "label": "5% duty",
    "self_host_usd_per_million": "6.94",
    "open_api_usd_per_million": "0.20",
    "small_api_usd_per_million": "5.00",
    "frontier_api_usd_per_million": "15.00"
  },
  {
    "label": "2% duty",
    "self_host_usd_per_million": "17.36",
    "open_api_usd_per_million": "0.20",
    "small_api_usd_per_million": "5.00",
    "frontier_api_usd_per_million": "15.00"
  }
]

Las tres columnas de API muestran precios de lista publicados habituales en agosto de 2026: 0.20 dólares por millón de tokens de salida para un modelo open-weight 8B alojado, 5.00 dólares para un modelo comercial pequeño y 15.00 dólares para un modelo frontier. Son valores ilustrativos. Consulte la página de precios actual antes de decidir y, si la comparación es con un plan mensual fijo en lugar de tokens medidos, el cálculo de la suscripción funciona de otra manera y el punto de cruce vuelve a cambiar.

Si utiliza la tarjeta a plena capacidad, un millón de tokens de salida cuesta 0.35 dólares, lo que es realmente barato. Con un ciclo de actividad del 10%, el mismo millón cuesta 3.47 dólares. Con un ciclo de actividad del 2%, cuesta 17.36 dólares, una cifra que no está en el mismo rango que los 0.20 dólares que cobra un modelo open alojado por la misma salida.

Por debajo de un ciclo de actividad aproximado del 10%, alquilar una GPU es la opción cara. Está pagando 3.47 dólares por millón de tokens de salida que se venden por 0.20 dólares, y lo que compra con la diferencia es privacidad y una factura que no cambia. Eso puede tener un valor real. No supone una ventaja de precio, así que no lo considere como tal.

El volumen de equilibrio para cada nivel de API

ChartBreak-even output volume per month, and the duty cycle it requires
The data behind this chart
[
  {
    "label": "Hosted open 8B API",
    "breakeven_tokens_millions": 1825,
    "required_duty_pct": 174
  },
  {
    "label": "Small commercial model",
    "breakeven_tokens_millions": 73,
    "required_duty_pct": 6.9
  },
  {
    "label": "Frontier model",
    "breakeven_tokens_millions": 24.3,
    "required_duty_pct": 2.3
  }
]

Frente al nivel frontier, necesita 24.3 millones de tokens de salida al mes, lo que representa sólo 2.3% de lo que puede procesar la tarjeta. Es un umbral bajo. Un equipo pequeño que ejecute agentes de programación durante la jornada laboral lo supera.

Frente al nivel comercial pequeño, necesita 73 millones de tokens al mes, o un ciclo de utilización del 6.9%. Frente al nivel de pesos abiertos alojado, el ciclo de utilización necesario es del 174%. Cualquier valor superior al 100% es inalcanzable por definición: la tarjeta tendría que funcionar más horas de las que contiene el mes. Una tarjeta de gama media con esta tarifa por hora no puede superar esa comparación, así que las únicas formas de cambiar el resultado son usar una tarjeta más barata, una tarjeta más rápida o tener un motivo que no sea el precio.

Lo que oculta la fórmula

La fórmula calcula el coste de las horas de GPU y los tokens. Varios costes reales quedan fuera.

Arranques en frío. Un modelo 8B con pesos de 16 bits ocupa aproximadamente 16 GB, y cargarlo desde el disco local en la VRAM tarda decenas de segundos. Si detiene el servidor entre usos para ahorrar el alquiler, debe esperar ese tiempo antes de la primera petición cada vez. Si lo deja en ejecución para evitar la espera, el ciclo de actividad se reduce y el coste por token aumenta. Ese equilibrio es la razón de ser de la inferencia serverless.

Almacenamiento y descarga. Los pesos ocupan mucho espacio. Un modelo 8B a 16 bits ocupa alrededor de 16 GB, un modelo 30B cuantizado a 4 bits ocupa alrededor de 18 GB y un modelo 30B a 16 bits no cabe en una tarjeta de 24 GB. El límite se vuelve evidente rápidamente en la gama alta, donde ejecutar un modelo abierto de un billón de parámetros como Kimi K3 significa que sólo los pesos superan la capacidad de cualquier tarjeta individual que pueda alquilar por horas. Paga ese disco cada mes y también paga en tiempo cada vez que reconstruye el entorno. Ejecute du -sh ~/.cache/huggingface/hub después de una semana de experimentos. Crece más rápido de lo esperado porque cada cuantización que probó una vez sigue almacenada.

Su propio tiempo. Las versiones de los controladores y de CUDA, los errores de falta de memoria con una longitud de contexto que funcionaba ayer y una actualización del modelo que cambia la plantilla de chat. Nada de esto aparece en una cifra de coste por token, pero todo se descuenta de sus tardes. Si nunca ha dimensionado uno de estos servidores, merece la pena leer qué ofrece realmente un GPU VPS antes de comprometerse a pagar un mes de alquiler.

La diferencia de calidad. Este es el mayor coste oculto y el más difícil de calcular. Un modelo abierto 8B no es un modelo de frontera. Si necesita tres intentos cuando el modelo de frontera necesita uno, su precio real por respuesta útil es tres veces el valor de la tabla y puede que aun así no complete la tarea. Compare primero con sus propias peticiones y después compare el precio. En las cargas de trabajo de agentes, la respuesta habitual es enrutar las peticiones según su dificultad y reservar los tokens locales baratos para el trabajo masivo. En gran medida, eso es lo que implica controlar el gasto de agentes en un VPS.

Facturación que olvidó. Una instancia de GPU por horas que ha detenido suele seguir generando cargos por el almacenamiento asociado y por la dirección IP reservada. Lea la factura, no la página de precios.

Cuándo el alojamiento propio se impone por algo distinto del precio

Cuatro casos en los que la aritmética no es el factor decisivo.

  • Datos que no pueden salir de su control. Si una norma de cumplimiento prohíbe enviar el texto a un tercero, el precio por token no es la cuestión que debe resolverse.
  • Un volumen alto y estable con un horario definido. Un trabajo de clasificación por lotes que se ejecuta seis horas cada noche tiene, por definición, un ciclo de actividad del 25 % y nunca le sorprende con una factura.
  • Límites de tasa. Su propia tarjeta tiene una sola cola y le pertenece.
  • Un modelo que ninguna API ofrece. Si necesita un ajuste fino específico, no hay nada con lo que compararlo.

Si quiere probar primero la versión económica, ejecutar un modelo pequeño en un VPS con Ollama cuesta una tarde, y calcular el tamaño de un modelo abierto según la tarjeta que alquilaría le indica qué GPU necesita realmente. Haga las mediciones allí antes de contratar un mes de alquiler de GPU.

FAQ

¿A partir de qué volumen mensual de tokens supera una GPU VPS el precio de una API?

Divida el coste mensual de la GPU entre el precio de la API por millón de tokens de salida. Una tarjeta que cuesta 365 dólares al mes, frente a una API de frontera a 15.00 dólares por millón, alcanza el punto de equilibrio en 24.3 millones de tokens de salida al mes. Frente a un modelo comercial pequeño a 5.00 dólares, el punto es 73 millones. Frente a un modelo de pesos abiertos alojado a 0.20 dólares, una tarjeta de gama media no puede generar suficientes tokens en un mes para alcanzar el punto de equilibrio.

¿Por qué una API alojada de pesos abiertos cuesta menos que mi propia GPU?

Porque su precio se fija cerca del coste de una GPU completamente utilizada, mientras que su tarjeta no lo está. Un proveedor que atiende miles de solicitudes simultáneas mantiene su flota cerca de la saturación, por lo que puede vender tokens cerca del coste marginal de producirlos. Su tarjeta está inactiva durante la mayor parte del día y usted paga esas horas inactivas. Con un ciclo de trabajo del 10%, su coste es de 3.47 dólares por millón de tokens de salida, frente a los 0.20 dólares del proveedor.

¿Debo contar también los tokens de entrada?

Cuéntelos si sus prompts son largos. Esta comparación usa sólo tokens de salida, que son el término dominante en chats y agentes. Añadir la entrada cambia ambos lados. En la API aparece como una línea independiente y más barata en la factura. En su propia tarjeta, el prellenado consume tiempo de GPU, por lo que su coste ya está incluido en el total de tokens por segundo que midió. Mida con las longitudes reales de sus prompts para que ambos lados sigan siendo comparables.

¿Cómo mido los tokens por segundo que necesita la fórmula?

Sirva el modelo de la forma en que lo utilizará y lea la tasa de generación agregada con concurrencia real. Con Ollama, ollama run <model> --verbose muestra un eval rate en tokens por segundo, pero corresponde a un único flujo y subestima un servidor por lotes. Con vLLM, el servidor en ejecución registra Avg generation throughput mientras hay solicitudes en curso; esa es la cifra que debe utilizar. Observe nvidia-smi al mismo tiempo. Si la utilización de la GPU no se acerca al 100% durante la generación, todavía no ha encontrado el límite.

¿Merece la pena alquilar una GPU VPS por debajo de una utilización del 10%?

No por precio. Con un ciclo de trabajo del 10%, paga 3.47 dólares por millón de tokens de salida, y con un 2% paga 17.36 dólares. Ambos valores están por encima de todas las API con tarificación por consumo de esta comparación, excepto el nivel de frontera. Alquile por debajo de ese umbral sólo cuando la privacidad o un modelo que ninguna API ofrece sean el motivo principal.