Top Serverless GPU providers Compared: Pricing, Billing and Fit (2026) Last updated: September 28, 2026. Prices are list rates checked on this date and change often, so confirm them on each provider’s pricing page before deciding. Serverless GPU is a cloud model where GPU workloads scale up on demand and back down to zero when idle, and you pay only for the time your code actually runs. Top Serverless GPU providers guide compares five serverless GPU providers on what decides the bill: how they meter usage, what a single H100 costs, and what you pay when nothing is running. Key takeaways Listed H100 80GB rates for the four providers with published numbers range from $1.89/hr to $6.50/hr. The cheapest rate is not always the cheapest bill. Billing granularity matters as much as price. Most providers here bill per second; Baseten bills per minute, rounded up. A serverless GPU beats a dedicated one only when your GPU would be busy less than the ratio of the two hourly rates. With illustrative rates, that break-even is around 63% utilization. Cold starts and concurrency limits, not price, are what most often hurt a real workload. Test both with your own model. How we compared these providers This guide is published by InstantGPU, and InstantGPU is one of the five providers. To keep the comparison fair, providers are listed alphabetically, not ranked, and every price below comes from the provider’s own pricing page or from a named third-party tracker quoting it. Where a provider does not publish a number, we say so instead of estimating. We compared five things: billing unit, listed H100 80GB rate, idle cost, how you deploy, and the type of workload each provider suits best. This is not an exhaustive list of serverless GPU providers. Serverless GPU comparison table Provider Billing unit H100 80GB (listed) Idle cost Best for Baseten Per minute (rounded up) $6.50/hr $0 when scaled to zero Managed production inference Fal Per second (custom deployments); per output (hosted models) from $1.89/hr* Usage-based Image and video generation InstantGPU Per second See pricing page $0 when scaled to zero Multi-provider capacity with automatic failover Modal Per second $3.95/hr ($0.001097/sec) $0 (no idle charges) Python-first custom workloads Replicate Per second (hardware); per output (some public models) $5.49/hr ($0.001525/sec) $0 when nothing runs Running public models behind an API *Fal lists H100 “starting at” $1.89/hr for custom deployments and asks you to contact its team to get started. Rates are for a single H100 80GB and are not like-for-like. Baseten’s rate includes its managed serving platform, and Fal’s is a starting price. Top Serverless GPU providers Baseten Baseten is a model-serving platform. You package a model with its Truss framework, define GPU resources in a config.yaml file, and deploy with truss push. Dedicated deployments are billed per minute by GPU type (H100 80GB is listed at $0.10833/min, about $6.50/hr), and deployments that scale to zero stop billing. It also sells hosted model APIs priced per token. Watch out for: minute-level billing rounds partial minutes up, so very short, frequent requests cost more than under per-second billing. Fal Fal focuses on media generation. It offers ready-made endpoints for popular image and video models, billed by output (per image or per second of video), plus custom deployments on its GPU fleet billed per second. Its pricing page lists H100 from $1.89/hr and A100 40GB from $0.99/hr for custom deployments. Watch out for: custom-deployment pricing is “starting at” and requires contacting the team, so the effective rate is less predictable. InstantGPU InstantGPU sources GPU capacity from a network of providers and puts it behind one account and API. Its serverless tier lets you deploy from a template or your own container, write a Python handler, and get an API endpoint. Workers scale to zero when idle and you are billed per second of execution. If an instance becomes unhealthy or unavailable, the platform searches its provider network and migrates the workload automatically. The same account also includes hourly GPU Cloud instances and hosted model APIs. Watch out for: as with any newer platform, check current rates and GPU availability for your region on the pricing page. Modal Modal is a Python-first platform: you declare the GPU in code (for example @app.function(gpu=”A100″)) and Modal handles containers and scaling. It bills per second with no idle charges, and lists H100 at $0.001097/sec. The free Starter plan includes $30/month in credits, and the Team plan is $250/month plus compute. Modal says it provisions GPU containers in under a second; treat that as a vendor claim and test it. Watch out for: the Starter plan lists a limit of 10 concurrent GPUs, which matters for bursty traffic. Replicate Replicate is best known for its library of public models you can call through an API. For private and custom models, hardware is billed per second (H100 at $0.001525/sec, A100 80GB at $5.04/hr, L40S at $3.51/hr), and it scales to zero when nothing runs. Some public models are billed per output instead, such as per image. Watch out for: 4x and 8x multi-GPU configurations require a committed-spend contract rather than self-serve access. How to choose Top Serverless GPU providers: the break-even rule Serverless GPU is cheaper than a dedicated GPU when your utilization is below this ratio: Break-even utilization = dedicated hourly rate ÷ serverless rate per active hour Illustration (assumed rates, not a quote): if a dedicated H100 costs $2.50/hr and a serverless H100 costs $3.95 per active hour, break-even is 2.50 ÷ 3.95 ≈ 63%. A service that is busy 4 hours a day would cost about $474/month serverless (120 active hours × $3.95) against about $1,825/month for an always-on dedicated GPU (730 hours × $2.50). A service busy 22 hours a day would flip the result. So: bursty, low-utilization, or unpredictable workloads favor serverless GPU. Steady, high-utilization workloads favor a dedicated instance. Cold starts and concurrency Two things the price table cannot show: Cold start: when a worker has scaled to zero, the next request