Huddle01 Cloud

GPU Billing

How GPU billing works — credits, billing cycles, minimum charges, and balance management.

Overview

GPU deployments are billed using a prepaid credit system. You add credits to your account before deploying, and usage is deducted automatically while your GPU is running.

All prices are in USD.

How It Works

1. Add Credits

Before deploying a GPU, you need at least $20.00 in GPU credits. Credits can be added through the dashboard or via the billing API.

# Check your current balance
curl -H "X-API-Key: mk_your_key" \
  https://gpu.huddleapis.com/api/v1/billing/balance

Response:

{
  "code": "OK",
  "data": {
    "balance_cents": 5000,
    "balance_usd": 50.00
  }
}

2. Deploy a GPU

When you deploy, the system verifies your balance meets the $20 minimum. If your balance is below $20, the deployment is rejected:

{
  "code": "INSUFFICIENT_CREDITS",
  "error": "insufficient GPU credits: your balance is $12.50 but this deployment requires at least $20.00. Please add credits to continue."
}

3. Automatic Billing Cycle

Once your GPU is running, your credits are deducted automatically:

WhatDetail
Minimum charge10 minutes per deployment
After 10 minutesBilled per second of usage
Billing check intervalEvery 10 minutes
Calculationelapsed_seconds x (price_per_hour / 3600)
CurrencyUSD

Example

You deploy a 1x H100 at $1.71/hr ($0.000475/sec):

TimeEventChargeBalance
0:00Deploy GPU$50.00
0:10First billing tick (600s)$0.29$49.72
0:20Second billing tick (600s)$0.29$49.43
0:25:30GPU deleted (330s since last tick)$0.16$49.27

After the initial 10-minute minimum, you only pay for the exact seconds your GPU is running.

4. Minimum 10-Minute Charge

Every deployment is billed for a minimum of 10 minutes, even if you delete it sooner. This prevents abuse from rapid deploy/delete cycles.

Example

You deploy a 1x H100 ($1.71/hr) and delete it after 2 minutes:

EventBilled DurationCharge
Deploy at 0:00
Delete at 0:0210 min (minimum)$0.29

After the 10-minute minimum, billing is per second. If you delete at 12 minutes, you pay for exactly 720 seconds.

5. What Happens When Credits Run Out

If your balance drops to zero during a billing cycle:

  1. You are immediately notified via email and webhook
  2. Your GPU enters a 30-minute grace period to top up your credits
  3. If credits are not added within 30 minutes, your GPUs are suspended

Grace Period

When your balance hits zero, you have 30 minutes to add credits before your deployments are suspended. Top up promptly to avoid interruption to your workloads.

Billing API Endpoints

Check Balance

GET /api/v1/billing/balance

Returns your current credit balance in both cents and USD.

Credit History

GET /api/v1/billing/history

Returns a paginated ledger of all credits and debits, including:

  • credit entries — when you add funds
  • debit entries — automatic per-second usage deductions (checked every 10 minutes)
  • final_billing entries — the last deduction when a deployment is deleted

Each entry includes the deployment ID, amount, and running balance.

Example: Full Billing Lifecycle

# 1. Check balance
curl -H "X-API-Key: mk_key" https://gpu.huddleapis.com/api/v1/billing/balance
# → { "balance_usd": 50.00 }

# 2. Deploy a GPU cluster
curl -X POST -H "X-API-Key: mk_key" \
  -H "Content-Type: application/json" \
  -d '{"cluster_type":"1H100.80S.30V","hostname":"train-01","image":"ubuntu-22.04-cuda-13.0-cluster","ssh_key_ids":["key-id"],"location":"FIN-01"}' \
  https://gpu.huddleapis.com/api/v1/deployments/clusters
# → { "status": "ordered" }

# 3. After 30 minutes, check balance again
curl -H "X-API-Key: mk_key" https://gpu.huddleapis.com/api/v1/billing/balance
# → { "balance_usd": 49.14 }  (3 ticks x $0.29 = $0.86 deducted)

# 4. Delete the deployment
curl -X DELETE -H "X-API-Key: mk_key" \
  https://gpu.huddleapis.com/api/v1/deployments/dep_abc123
# → Final billing deduction applied for remaining unbilled time

# 5. Check final balance
curl -H "X-API-Key: mk_key" https://gpu.huddleapis.com/api/v1/billing/balance
# → { "balance_usd": 49.14 }  (no additional charge — last tick covered it)

Pricing Reference

GPU prices vary by model and configuration. Check real-time pricing:

GET /api/v1/gpus/available

Prices are shown as price_per_hr (hourly rate) in USD. The per-second rate is:

per_second_cost = price_per_hr / 3600
GPUConfigPrice/hrPer secondPer 10 min
H1001x 80GB$1.71$0.000475$0.29
H1008x 80GB$13.71$0.003808$2.29
H2008x 141GB$32.00$0.008889$5.33

Prices may vary

Prices are fetched from our GPU marketplace in real-time and may change. Always check the /gpus/available endpoint for current pricing before deploying.