# Pricing

CalmLens has no monthly fee. You pay for the moderation, storage and delivery your projects use, at the unit prices below, in GBP.

## Free uploads

Every account starts with 100 free uploads, with no card. They are shared by the projects the account owns and don't reset. Once they are used, uploads return [`403 upload/limit-exceeded`](/docs/api/assets#post-asset-error-upload-limit-exceeded) until the project owner sets up [Billing](/portal/subscribe).

## Unit prices

With billing set up there is no upload limit. Each meter includes a free allowance every billing month, and usage beyond it is charged at the meter's price.

| Usage | Price | Included free each month |
| --- | --- | --- |
| Image moderation | £2.00 per 1,000 images | No free allowance |
| Text moderation | £1.50 per 1,000,000 tokens | No free allowance |
| OCR (text in images) | £1.50 per 1,000 images | First 1,000 images |
| Person detection (beta) | £1.00 per 1,000 images | First 1,000 images |
| Face detection (beta) | £1.00 per 1,000 images | First 1,000 images |
| Retained storage | £0.025 per GB-month | First 10 GB-months |
| AI asset searches | £0.025 per 1,000 searches | No free allowance |
| AI media search indexing | £1.20 per 1,000 indexing units | No free allowance |
| CDN reads | £1.00 per 1,000,000 reads | First 1,000,000 reads |
| Image transforms | £0.50 per 1,000 transforms | First 1,000 transforms |
| Website ingestion | £0.30 per 1,000 websites | No free allowance |

Each text check is billed for at least 250 tokens, so short comments cost £0.375 per 1,000 checks. Longer text is billed by its actual tokens.

## What each request is billed for

Usage belongs to the project owner's account, whoever sends the request.

| You do | Billed as |
| --- | --- |
| Upload an image | One image moderation. Each [processing feature](/docs/guides/moderating-assets#processing-features) you turn on adds one unit of its own meter: OCR, person detection or face detection. |
| Upload text | Text moderation for the tokens checked, with the minimum per check above. Text that OCR reads from an image is moderated and billed the same way. |
| Upload a document | Its extracted text and images become [child assets](/docs/guides/asset-lifecycle#child-assets), billed as text and image moderation. |
| Upload audio or video | Text moderation for the input tokens of each 30-second chunk, with a 250-token minimum per chunk. Profiles with qualifier rules are billed for image moderation and OCR per sampled frame and text moderation for the transcript instead. See [Audio and video](/docs/guides/audio-and-video#reports-retention-and-usage). |
| Submit a website | One website ingestion. The page's text and images are moderated as child assets and billed as text and image moderation. See [Website moderation](/docs/guides/websites). |
| Keep content (`keepContentAfterProcessing: true`) | Retained storage for as long as CalmLens holds it, measured hourly. Content deleted after processing isn't stored. |
| Serve an asset from the CDN | One CDN read per delivery. |
| Resize or convert an image | One image transform. See [Lenses and transforms](/docs/guides/lenses). |
| Search assets in `semantic` or `hybrid` mode | One AI asset search per completed semantic query, including queries with no matches. Keyword search is free. See [Asset search](/docs/guides/search#usage-and-billing). |
| Turn on audio and video search | AI media search indexing for each retained audio or video revision. See [Asset search](/docs/guides/search#usage-and-billing). |

Check your usage and estimated costs for the current billing month on [Usage](/portal/usage).

## Prepaid credit

Credit pays for usage before your card is charged. Buy at least £10 on [Billing](/portal/subscribe), and larger purchases add bonus credit:

| Credit bought | Bonus credit |
| --- | --- |
| £50 or more | 2% |
| £100 or more | 5% |
| £500 or more | 8% |

Credit you pay for never expires. Bonus credit is used first and expires 12 months after it is added. Auto top-up buys credit with your saved card when the balance falls below an amount you choose.

## Spend limits

Set a spend limit for each billing period on [Billing](/portal/subscribe). The project owner is emailed at 50%, 80%, and 100% of the limit.

You can choose to pause new uploads at the limit. Paused uploads return [`402 upload/spend-limit-reached`](/docs/api/assets#post-asset-error-upload-spend-limit-reached) until the next billing period or until you raise the limit, and the [`usage.spend-limit-reached`](/docs/api/events#event-usage-spend-limit-reached) event tells your [connectors](/docs/guides/webhooks) when uploads are paused. Keep the content unpublished and retry it in the next billing period or after raising the limit.
