Skip to content

Pricing and billing

You deposit USD first and spend it per request. Balances and prices are in USD. Before a request runs, the estimated amount is reserved from your balance, and the final charge is calculated from actual usage. The difference returns to your balance. To read your balance, see Balance and key limits.

Add balance on the Billing page of the dashboard. The page shows the payment methods that you can use.

  • Card: you choose the amount in USD. The card is charged in Japanese yen. The page shows the exchange rate, and the yen amount is rounded up to a whole yen.
  • Crypto: send the asset to the address that the page shows for your account. The deposit is credited after the network confirms it. Send only the assets and networks that the page lists for your account, because other transfers are not credited. A deposit below the minimum is not credited automatically. It is held and shown in your deposit history. Contact support about it.

The minimum deposit is $10.00 by default. A single card deposit can be up to $500.00 by default. When a deposit is credited, you can receive a deposit.credited webhook event. See Webhooks.

Each price is the upstream cost plus a service margin, and there is no top-up fee. The margin is already included in every price you see. Prices are per unit:

  • Text models: per 1M input tokens, per 1M cached input tokens, and per 1M output tokens.
  • Image models: per image, and the price can depend on the resolution.
  • Video models: per second of output video, and the price can depend on the resolution.

Amounts are integers in micro USD (1 USD = 1,000,000 micro USD), rounded up. An API response gives each amount twice: as an integer in a field that ends in _micro_usd, and as a decimal string in USD in a field that ends in _usd. For example, a cost has amount_micro_usd and amount_usd, and the balance has available_micro_usd and available_usd. Compare models on the pricing page, or call POST /v1/estimate for a specific request.

Failed, cancelled, expired, and policy-rejected generations are not billed. There are two exceptions:

  • A streamed chat request that breaks after the model has started generating output (including reasoning output) is billed for the output generated, including output that you did not receive. See Chat.
  • In rare cases, Sakuranbo AI cannot confirm whether an image or video request reached the model provider. The job is then failed with upstream_error, and its reserved amount stays reserved until Sakuranbo AI confirms whether the request is billed. If it stays reserved, contact support with the job ID.
MethodAssetNetworks
CardCredit and debit cards-
BitcoinBTCBitcoin
USDTUSDTTron (TRC-20)

Bitcoin is accepted on-chain only, and Lightning is not supported. USDT is accepted only on the Tron network (TRC-20). Crypto deposits are credited after the network confirms the transfer.

The values in the table are defaults that the operator can change.

ItemDefault
Minimum top-up$10.00 per deposit
Balance expiry365 days after each deposit
Card refundsUnused balance is refundable within 24 hours of the purchase
Crypto refundsNot refundable. Returns to the sending address are decided case by case where the Terms of Service provide for them
Failed requestsNot billed, except output generated before a chat stream breaks