Sandbox sizes
Select CPU and memory when creating a chat:
{
"instance": {
"cpu": 4,
"memory": 8
}
}
Current choices:
| Resource | Allowed values | Default |
|---|---|---|
| CPU | 2 or 4 vCPU | 2 vCPU |
| Memory | 2, 4, or 8 GiB | 2 GiB |
| Disk | fixed at 10 GiB | 10 GiB |
Any allowed CPU value may be paired with any allowed memory value. Unsupported
or odd values return 422.
Size belongs to the chat and is reused by later turns. Create another chat to change it.
When billing runs
Billing uses sandbox wall-clock time. Queue time does not consume compute credit. Timing starts when a sandbox is ready and ends when the turn completes, fails, times out, or is canceled.
The sandbox is stopped after every turn.
Current compute rates
| Resource | Rate per unit-hour |
|---|---|
| vCPU | $0.0858 |
| Memory GiB | $0.0162 |
| Disk GiB | $0.000108 |
Cost is calculated by the second:
hourly_rate =
cpu × 0.0858
+ memory_gib × 0.0162
+ disk_gib × 0.000108
turn_cost = hourly_rate × sandbox_seconds / 3600
The default 2 vCPU, 2 GiB, 10 GiB sandbox costs $0.20508 for a full hour of
running compute.
Model-token charges go directly to the provider key supplied with the run and are separate from Epho compute credit.
Prepaid credit
Compute is deducted from the team's prepaid ledger in micro-USD. Epho refuses
a new turn with 402 Payment Required when no positive credit remains.
Read the balance:
curl https://app.epho.io/api/v1/credits \
-H "Authorization: Bearer $EPHO_API_KEY"
{
"balance": {
"micros": 4230000,
"cents": 423,
"usd": "4.23"
}
}
One USD equals 1,000,000 micros. The micros value is the precise ledger
balance; cents and usd are display-friendly forms.
Concurrency
Teams default to five active turns. Turns beyond the team's cap remain queued without consuming a slot or billable compute and emit:
{
"type": "status",
"phase": "queued",
"message": "Waiting for an available run slot…"
}
Queued turns start as active turns settle.