Credits
How the price of a separation is calculated, and how credits are bought.
Price
A separation costs the file's length in minutes times the rate of the requested stems, rounded up to a whole credit, and at least 10 credits. Rates are in credits per minute of audio.
Stems from the same model share its cost: drums alone cost as much as drums, bass, guitar, piano and other together. The rate is the sum of the models a request needs, so adding a stem costs only the models it adds. Rates for the web app's presets:
| Request | Per minute | 3:30 song |
|---|---|---|
| Vocals and instrumental | 10 | 35 |
| Six stems | 10 | 35 |
| Lead and backing | 25 | 88 |
| Drum kit | 15 | 53 |
| Everything | 30 | 105 |
Example: a 3:30 song as six stems costs 210 s × 10 credits per minute ÷ 60 s = 35 credits.
Rates for single stems:
| Stem | Per minute | 3:30 song |
|---|---|---|
vocals | 10 | 35 |
vocals.lead | 25 | 88 |
vocals.backing | 25 | 88 |
instrumental | 10 | 35 |
instrumental.drums | 10 | 35 |
instrumental.drums.kick | 15 | 53 |
instrumental.drums.snare | 15 | 53 |
instrumental.drums.toms | 15 | 53 |
instrumental.drums.hihat | 15 | 53 |
instrumental.drums.cymbals | 15 | 53 |
instrumental.bass | 10 | 35 |
instrumental.guitar | 10 | 35 |
instrumental.piano | 10 | 35 |
instrumental.other | 10 | 35 |
A separation's charge shows its price once it has started. No other costs apply.
Buying credits
Credits are bought in packs on Credits and don't expire:
| Pack | Credits | 3:30 songs as vocals and instrumental |
|---|---|---|
| $5 | 2,500 | 71 |
| $10 | 7,000 | 200 |
| $25 | 20,000 | 571 |
| $50 | 48,000 | 1,371 |
| $100 | 110,000 | 3,142 |
Accounts also get 300 free credits per day for the web app. Requests with an API key use bought credits only.
Failures
- A separation that fails on our side refunds all credits.
- A file that can't be decoded on the GPU keeps the minimum of 10 credits.
- A request rejected before the separation starts costs nothing.
- Deleting a
queuedseparation refunds all credits. - Deleting a
separatingseparation stops it and keeps its charge.
A failed separation's charge shows the credits it kept.
Balance
GET /usage Get usage
Response
{
"balance": {
"free": 0,
"bought": 6930
},
"limits": {
"daily": 0,
"seconds": 3600,
"bytes": 2000000000,
"jobs": 3
}
}Returns the remaining credits in balance.bought and balance.free, and the limits that apply
to the caller. With an API key, free and limits.daily are 0.
GET /usage/history Get usage history
| Parameter | In | Type | Description |
|---|---|---|---|
source | query | web or an API key's id, for that source's spending only |
Response
{
"since": "2026-10-14",
"days": [
{
"day": "2026-11-12",
"separations": 3,
"spent": {
"free": 0,
"bought": 175
}
}
],
"additions": [
{
"kind": "purchase",
"created_at": "2026-11-10T09:12:44.000Z",
"credits": 7000
}
]
}Returns the credits spent per day over the last 30 days, and the credits added.
A separation the balance doesn't cover returns 402 out-of-credits and charges nothing.