Skip to content
State of GPU Compute 2026

Serverless

Endpoints that scale to zero.

Ship a container, get an HTTPS endpoint. Workers start when requests queue and stop when traffic drops, and every GPU-second in between is on the invoice in euros.
A Nexpod Serverless endpoint: requests stream into one H200 server while worker replicas scale in and out above it, billed per second.

The endpoint view

Every worker, in one screen.

Status, region and uptime per worker, the request rate, and how many workers are billable right now. Min, max and idle timeout sit next to them.
console.nexpod.ai/serverless/llm-eu
Serverless /llm-eu ReadyManage
Workers
4of 20 max
In progress
14requests
Queued
0requests
p95 latency
241ms · 1h
OverviewMetricsWorkersLogs
WorkerStatus
  • w-3e9c51aRunning
  • w-8b1d07fRunning
  • w-c42a9e3Running
  • w-19f0b6dRunning
  • w-7d55e20Idle · warm
  • w-a0c3f81Booting
Per GPU-second · H200 €0.001115 billable workers
Dockerfile
FROM nexpod/pytorch:2.9-cuda13
WORKDIR /app
COPY requirements.txt handler.py ./
RUN pip install -r requirements.txt
ENV MODEL_DIR=/models
CMD ["python", "handler.py"]

Bring your own image

Any registry, any base. Start from a Nexpod CUDA image or your own.

vol · model-weights420 GB
/models · EU-AMS-1ro
w-3e9cmounted
w-8b1dmounted
w-c42amounted
w-19f0mounted

Weights on a shared volume

Mount one network volume on every worker. No re-download per boot.

RTT from Berlinms
  • EU-FRA-1 Frankfurt9
  • EU-AMS-1 Amsterdam14
  • US-NYC-1 New York88

Requests route to the nearest region with a warm worker.

Close to your users

Requests go to the nearest warm region.

In plain words

What is Nexpod Serverless?

A managed queue in front of GPU workers. You supply a container with a request handler; Nexpod runs as many copies as the traffic needs, on B300, B200, H200 or H100, and stops them when it quiets down.
Nexpod Serverless at a glance
GPU families
B300 (288 GB HBM3e) · B200 (180 GB HBM3e) · H200 (141 GB HBM3e) · H100 (80 GB HBM3)
Billing
Per GPU-second, from worker start to stop, rounded up
Price per GPU-second
€0.00083 (H100) to €0.00167 (B300)
Scaling
From zero to your max workers on queue depth; warm minimum optional
Regions
EU-AMS-1 · EU-FRA-1 · US-NYC-1
Invoicing
EUR, VAT on its own line
Rates from the Nexpod rate card · excl. VAT

How it works

From image to endpoint.

Four steps, all from one CLI or the console. Nothing to provision, nothing to patch.
  1. 01
    01 · seconds

    Create the endpoint

    Point at an image, pick a GPU family and set min and max workers.

  2. 02
    02 · automatic

    Let it scale

    Workers follow queue depth. Idle ones stop after a timeout you choose.

  3. 03
    03 · live

    Watch it run

    Logs, traces, GPU memory and error rates per worker, in one view.

  4. 04
    04 · no downtime

    Ship the next release

    Deploy v15 while v14 drains. Roll back with one command.

nexctl — endpoints
$ nexctl endpoints create llm-eu \
--image ghcr.io/acme/llm:14 \
--gpu h200 --min 0 --max 20
→ release v14 · volume model-weights mounted
✓ https://llm-eu.run.nexpod.ai
$ nexctl endpoints scale llm-eu --min 2
✓ 2 warm workers · eu-ams-1, eu-fra-1
$ nexctl endpoints logs llm-eu -f
12:04:31 w-3e9c51a 200 · 182 ms
12:04:31 w-8b1d07f 200 · 176 ms
$

Features

Inference that scales on its own.

The parts that usually take a platform team: warm pools, fast starts, any runtime and releases from Git.
Workers · 24 h running warm
16:00 · peak
running12
warm2
00:0006:0012:0018:0024:00

Warm workers on standby

Keep a floor of warm workers for instant answers. Everything above it scales with traffic and back down.

Time to first responselog scale
  • Cold · image pull38 s
    first deploy of a new image
  • Cached image6.2 s
    image already on the node
  • Warm worker180 ms
    min workers above zero

Starts measured in seconds

Cached images and volume-backed weights cut a cold start to seconds. Warm workers answer in milliseconds.

Runtimes · tested images
  • Python 3.12
  • Node.js 22
  • Go 1.23
  • Rust 1.82
  • C++ 20
  • vLLM
  • TensorRT
  • ONNX Runtime
nexpod/ imageB300B200H200H100
  • pytorch:2.9-cuda13✓✓✓✓
  • pytorch:2.8-cuda12.8✓✓✓✓
  • jax:0.7-cuda12.8✓✓✓✓
  • pytorch:2.4-cuda12.4––✓✓

Any runtime you can containerise

Python, Node.js, Go, Rust or C++, with the framework and CUDA version you pin.

releases · llm-eutag v15 · built 1m 52s
  • v15rolling 6
  • v14draining 3
  • v13rollback
  • 12:04:18w-3e9c51ahealth 200
  • 12:04:31w-8b1d07fhealth 200
  • 12:04:47w-c42a9e3warming
$ nexctl endpoints rollback llm-eu --to v14

Releases straight from Git

Push a tag, Nexpod builds the image and rolls workers over one by one. The previous release stays one command away.

Steady traffic

Busy all day? Pin it to a server.

When an endpoint keeps eight GPUs near full, a dedicated Cloud Server is cheaper per request. Keep the same image and handler, move the traffic.

94%
avg · peak 99%
idleGPU utilisation · 7 daysfull

Pricing

Pay per GPU-second.

A worker is billed from start to stop, rounded up to the next second. Idle endpoints at zero workers cost nothing.
  • 288GB HBM3e
    B300Newest

    Most memory per GPU, for the largest models at long context.

    €0.00167/GPU·s
  • 180GB HBM3e
    B200

    High throughput for large models and heavy batches.

    €0.00139/GPU·s
  • 141GB HBM3e
    H200

    141 GB fits a 70B-class model on one GPU.

    €0.00111/GPU·s
  • 80GB HBM3
    H100

    Lowest rate. Suits 7B to 34B models and embeddings.

    €0.00083/GPU·s
Example · one traffic burstH200
3 workers × 95 s each = 285 GPU-seconds
285 × €0.00111 · then scale to zero, €0.00 idle
€0.32

Smallest unit we bill

€0.00083

One H100 GPU for one second. Endpoints at zero workers bill nothing at all.

0 ms500 ms1 s · billed

€0.00083 × 3,600 s = €3.00 per H100 GPU-hour

FAQ

Serverless, answered.

How endpoints start, scale, ship and fail, in short answers.
How is Serverless different from a Cloud Server?
A Cloud Server is a whole machine you keep running. A Serverless endpoint is a queue in front of workers: Nexpod starts GPU workers when requests arrive and stops them when the queue is empty, so you pay only while one is up.
Which languages and frameworks can I run?
Anything that runs in a Linux container with a GPU. Python is the common case, with PyTorch, JAX or ONNX Runtime, but handlers in Rust, Go, Node.js or C++ work the same way.
How do you keep cold starts short?
Images are cached on the nodes that served them before, weights load from a network volume in the same region, and you can keep a minimum number of warm workers so the first request never waits for a boot.
How do releases and rollbacks work?
Each deploy creates a numbered release. Workers move to the new release as they finish their current request. Rolling back is one command, or one click in the console.
Can an endpoint react to webhooks or queues?
Yes. Call it synchronously over HTTPS, submit async jobs and poll, or register a webhook that receives the result. Each request carries its own ID for tracing.
What do I see when something goes wrong?
Per-worker logs, request traces with timings, GPU memory and utilisation, and alerts on queue depth or error rate. Metrics export to your own Prometheus as well.

Customers

Endpoints for teams with bursty traffic.

Product launches, nightly batches and agent sessions all share one pattern: spikes, then quiet. Serverless bills for the spikes.
Placeholder

Placeholder quote. An AI app team says, in one or two plain sentences, what changed after moving production traffic to Nexpod.

Customer nameEngineering lead, AI app
  • Customer 01
  • Customer 02
  • Customer 03
  • Customer 04
  • Customer 05
  • Customer 06
  • Customer 07
  • Customer 08
Customer logosPlaceholder

Start now

Deploy an endpoint before lunch.

Push an image, set min and max workers, call the URL. The first GPU-second is the first thing you pay for.