# How billing works Funds for the upper bound are reserved at creation and settled on actual usage; failed and cancelled tasks are free. Video generation is charged by usage, recorded in meters such as `video_tokens`. Every task goes through two steps: a reservation and a settlement. ## Reservation When you create a task, the platform takes the largest usage the request can produce (`quote.estimated_usage_upper_bound.video_tokens`) and the current price version, calculates `quote.reserved_amount` and reserves it from your balance. When the balance is not enough, the answer is `429 insufficient_balance` with the reservation needed in `error.details`, and no task is created. ## Settlement After the task finishes it is settled on actual usage (`usage.video_tokens`): the charge comes out of the reservation and the rest returns to your balance. Once `settlement_status` is `settled`, `billing.final_actual_cost` is the task's final charge. ## Failed and cancelled tasks are free - Once a failed or cancelled task is settled, its final charge and amount due are zero and the whole reservation is released. - When an HTTPS input cannot be prepared, the task fails with an `input_*` error, the whole reservation is released and nothing is charged for generation. - Refused requests (4xx) are refused before any reservation: nothing is reserved and nothing is charged. ## An example These numbers come from the example task of these docs: | Step | Usage | Amount (USD) | | --- | --- | --- | | Reserved at creation | Upper bound of 111779 `video_tokens` | `0.782453` | | Charged after completion | Actual 51652 `video_tokens` | `0.361564` | | Released | — | `0.420889` | ## Amounts Every amount is in USD, written as a string with six decimal places, such as `"0.361564"`. An amount that is not final yet is `null`. ## Prices List prices of each model are on the [Pricing](./public-prices.html) page; your team's prices and their versions are in the console. These docs never fix a price. ## Next steps - [Reconcile charges](./api-docs-en-billing-reconcile.md): Use task billing to check the reservation, debits, refunds and amount due of every task. - [Read task billing](./api-docs-en-api-video-tasks-billing.md): Retrieve the whole-task billing summary and one ordered page of permanent billing events.