> This page is for version v1.3 (default).
> For other versions, use one of these documentation indexes:
> - v1.3 (default): https://beta.docs.twelvelabs.io/v1.3/llms.txt

> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://beta.docs.twelvelabs.io/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://beta.docs.twelvelabs.io/_mcp/server.

# Migrate to the new billing

> Learn when your plan moves to the new billing, what you can do before it moves, and how to enable storage accounting for pre-migration assets.

TwelveLabs is moving plans to the new billing in phases. Legacy billing applies to your plan until it moves. This guide explains when your plan moves, what you can do before it moves, and how to enable storage accounting for assets that you uploaded earlier.

# Key concepts

This section explains the key concepts and terminology used in this guide:

* **Asset**: Your uploaded content. Once created, you can reference the same asset across multiple operations without uploading the file again.

* **Managed Intelligence**: The service that stores your assets and keeps them ready to use. It includes processing and updates to the latest models.

* **Workload**: A task that you run on your assets. Examples are creating Jockey responses, analyzing, segmenting, and embedding.

* **Allowance**: The amount of Managed Intelligence or Workloads that your plan includes.

* **Pre-migration asset**: An asset that you uploaded before your plan moved to the new billing.

# What changes with the new billing

The following table shows what changes when your plan moves to the new billing. For the price and the allowances of each plan, see the [Pricing](https://www.twelvelabs.io/pricing) page.

| Topic            | Legacy billing                                                                                                   | New billing                                                                                                       |
| :--------------- | :--------------------------------------------------------------------------------------------------------------- | :---------------------------------------------------------------------------------------------------------------- |
| Plans            | The Free or Developer plan bills your API usage. A Jockey subscription (Free, Plus, or Pro) is separate.         | One plan: Free, Plus, Pro, or Enterprise.                                                                         |
| Allowances       | N/A                                                                                                              | Each plan includes a Managed Intelligence allowance and a monthly Workload allowance.                             |
| Free plan limits | Four limits apply. See [Free plan limits](#free-plan-limits).                                                    | The allowances of your plan apply in place of these limits.                                                       |
| Rate limits      | The Free plan, and Tier 1, Tier 2, or Tier 3 for the Developer plan. The Enterprise plan has custom rate limits. | The Free plan, and one set of rate limits for the Plus and Pro plans. The Enterprise plan has custom rate limits. |

The new billing also uses different billing units. Your bill under the new billing can differ from your bill under legacy billing.

## Free plan limits

After your plan moves, the Managed Intelligence allowance and the Workload allowance of your plan apply in place of these Free plan limits:

* The 600 minutes shared across indexing, analysis, and segmentation
* The limits of 10 video hours and 100 videos for each index
* The limit of one entity collection with up to 15 entities
* The expiry of indexes 90 days after creation

Legacy billing rules apply these limits until your plan moves.

# When your plan moves

The new billing starts on October 15, 2026. From that date, new users start in the new billing. January 4, 2027 is the date that Free and Developer plan users without a paid Jockey subscription move to the new billing. Jockey subscriptions and Enterprise plans move on different dates. Legacy billing applies to your plan until it moves.

| Date             | Milestone                                                                                                               |
| :--------------- | :---------------------------------------------------------------------------------------------------------------------- |
| October 15, 2026 | Free plan users and Developer plan users can move early.                                                                |
| January 3, 2027  | Last day for Developer plan users to choose Plus or Pro.                                                                |
| January 4, 2027  | Free plan users move to the Free plan of the new billing. Developer plan users who have not chosen a plan move to Free. |

The following table shows the move for each group:

| Your plan                                                         | Your plan in the new billing                                 | What you do                           | When you move                                     |
| :---------------------------------------------------------------- | :----------------------------------------------------------- | :------------------------------------ | :------------------------------------------------ |
| Free plan, with no Developer plan and no paid Jockey subscription | Free                                                         | Nothing                               | January 4, 2027                                   |
| Developer plan, with no paid Jockey subscription                  | The plan you choose: Plus or Pro. Free if you do not choose. | Choose Plus or Pro by January 3, 2027 | When you choose, or January 4, 2027 if you do not |
| Monthly Jockey Plus or Pro subscription                           | The matching plan: Plus or Pro                               | Nothing                               | Your first billing date in January 2027           |
| Annual Jockey Plus or Pro subscription                            | The matching plan: Plus or Pro                               | Nothing                               | The end of your annual term                       |
| Paid Jockey subscription and Developer plan                       | The plan that matches your Jockey subscription               | Nothing                               | The date for your Jockey subscription             |
| Enterprise                                                        | The terms in your contract                                   | Follow your contract                  | At renewal, or when you sign an amendment         |

## Developer plan

TwelveLabs does not start a paid plan for you without your consent. To move to a paid plan, select the **Choose Plus** button or the **Choose Pro** button on the [Pricing](https://www.twelvelabs.io/pricing) page by January 3, 2027. Your plan moves to the new billing when you choose. If you do not choose, your plan moves to Free on January 4, 2027. Until your plan moves, you pay normal usage charges. Overage is available on the Pro plan and the Enterprise plan. On the Plus plan, requests fail when you reach an allowance.

## Jockey subscription

* A monthly subscription moves on your first billing date in January 2027. For example, a subscription that renews on the 15th of each month moves on January 15, 2027.
* An annual subscription keeps its current terms until the term ends. For example, a term from July 15, 2026 to July 15, 2027 stays on legacy billing until July 15, 2027.

If you also have a Developer plan, your Jockey subscription sets your plan in the new billing and your move date. Your API usage then uses the Workload allowance of that plan.

## Move early

You can move before your move date if you have no paid Jockey subscription. This applies to Free plan users and Developer plan users. To move to Plus or Pro, select the **Choose Plus** button or the **Choose Pro** button on the [Pricing](https://www.twelvelabs.io/pricing) page. Your plan then moves to the new billing, and you receive the allowances of the plan that you chose.

You cannot move early while you have a paid Jockey subscription. This applies to monthly and annual subscriptions. Your move date does not change.

If you schedule a cancellation, you can move early after your paid access ends and you have a Free Jockey subscription. For example, if your monthly paid access ends on December 23, 2026, you can move early from that date.

# What you can do before your plan moves

Legacy billing rules apply until your plan moves. The following table shows which actions you can take before your plan moves.

| Action                                          | Available | Details                                                                                                                         |
| :---------------------------------------------- | :-------- | :------------------------------------------------------------------------------------------------------------------------------ |
| Start a Jockey Plus or Pro subscription         | No        | A new Jockey subscription requires the new billing.                                                                             |
| Change between Jockey Plus and Jockey Pro       | Yes       | Keep the same billing period: monthly or annual. Your subscription period, your renewal date, and your move date do not change. |
| Switch between monthly and annual billing       | No        |                                                                                                                                 |
| Cancel a Jockey subscription                    | Yes       |                                                                                                                                 |
| Change from the Free plan to the Developer plan | Yes       | This includes a return to the Developer plan after you cancel it. Your move date does not change.                               |
| Cancel the Developer plan                       | Yes       | You move to the Free plan.                                                                                                      |

## Scheduled cancellations

A scheduled cancellation stays in effect with the same effective date. The move to the new billing does not renew the canceled subscription on the matching plan. For an annual subscription that ends on July 15, 2027, the cancellation applies on that date.

# Pre-migration assets

An asset that you uploaded before your plan moved to the new billing stays accessible. Your existing indexes stay available. The asset does not count toward your Managed Intelligence allowance until you enable storage accounting for it.

# When storage accounting is required

To add a pre-migration asset to an index with Marengo enabled, or to a knowledge store, you must first enable storage accounting for the asset. Storage accounting makes the asset count toward your Managed Intelligence allowance.

If storage accounting is off, these requests return a `409` error with the code `asset_storage_accounting_required`:

* [Index an asset](/v1.3/api-reference/index-content/create), when Marengo is enabled for the index
* [Create a knowledge store item](/v1.3/api-reference/knowledge-store-items/create)

To fix the error, enable storage accounting for the asset. Then retry the request. This also applies when you re-index an asset in a new index.

# Enable storage accounting

Enable storage accounting for each pre-migration asset that you want to add to an index with Marengo enabled, or to a knowledge store.

> **Warning**
>
> Enabling storage accounting is permanent. You cannot turn it off. The asset counts toward your Managed Intelligence allowance from the moment of the call. TwelveLabs does not charge for storage before that moment.

#### Check the prerequisites

Before you enable storage accounting for an asset, check the following:

* Your plan has moved to the new billing.
* The asset has the `ready` status and a recorded size. To check, use the [Retrieve an asset](/v1.3/api-reference/manage-assets/retrieve) method and read the `status` and `size` fields.
* The asset fits in your Managed Intelligence allowance.

#### Upgrade your SDK

*(Optional)* To use the SDK, upgrade to the latest version of the Python or Node.js SDK:

**`Python SDK`**

```sh Python SDK
pip install --upgrade twelvelabs
```

**`Node.js SDK`**

```sh Node.js SDK
npm install twelvelabs-js@latest
```

#### Enable storage accounting

Call the [Enable storage accounting for an asset](/v1.3/api-reference/manage-assets/enable-storage-accounting) method with the `enabled` field set to `true`. In the SDKs, use the [Python](/v1.3/sdk-reference/python/manage-assets#enable-storage-accounting-for-an-asset) or [Node.js](/v1.3/sdk-reference/node-js/manage-assets#enable-storage-accounting-for-an-asset) method.

#### Python

**`Python`**

```python Python maxLines=12
result = client.assets.enable_storage_accounting(
    asset_id="<YOUR_ASSET_ID>",
    enabled=True,
)
```

#### Node.js

**`Node.js`**

```javascript Node.js maxLines=12
const result = await client.assets.enableStorageAccounting("<YOUR_ASSET_ID>", {
  enabled: true,
});
```

#### cURL

**`cURL`**

```shell cURL maxLines=12
curl -X PUT "https://api.twelvelabs.io/v1.3/assets/<YOUR_ASSET_ID>/storage-accounting" \
  -H "x-api-key: <YOUR_API_KEY>" \
  -H "Content-Type: application/json" \
  -d '{ "enabled": true }'
```

The response contains the following fields:

```json
{
  "asset_id": "6298d673f1090f1100476d4c",
  "storage_accounting": true,
  "bytes": 104857600
}
```

* `asset_id`: The unique identifier of the asset.
* `storage_accounting`: `true` when the platform counts the asset toward your Managed Intelligence allowance.
* `bytes`: The number of stored bytes that the platform counts for the asset.

After the call succeeds, retry your request to index the asset or add it to a knowledge store.

## Errors

| Status | Code                                  | Cause                                                                                                                                          |
| :----- | :------------------------------------ | :--------------------------------------------------------------------------------------------------------------------------------------------- |
| `409`  | `asset_not_ready_for_storage_billing` | The asset does not have the `ready` status. If the status is `failed`, the asset cannot become ready.                                          |
| `409`  | `asset_storage_size_unknown`          | The asset has no recorded size.                                                                                                                |
| `422`  | `asset_storage_limit_exceeded`        | The asset does not fit in your Managed Intelligence allowance. The message shows the current size, the limit, and the requested size in bytes. |
| `422`  | `platform_billing_not_active`         | Your plan has not moved to the new billing. Enable storage accounting after your plan moves.                                                   |

For the full list of errors, see [Enable storage accounting for an asset](/v1.3/api-reference/manage-assets/enable-storage-accounting) in the API reference.

# Additional resources

* [Plans, allowances, and overage](/v1.3/docs/get-started/plans-and-billing/plans-allowances-and-overage): How Managed Intelligence, Workloads, allowances, overage, billing units, and rate limits work in the new billing.
* [Pre-migration assets](/v1.3/docs/get-started/plans-and-billing/pre-migration-assets): How assets that you uploaded before your plan moved count toward your allowance.