---
title: "Pricing and limits"
description: "What Secrets costs per field, read and write, with a worked example, and the quotas and limits that apply."
---

> Documentation Index
> Fetch the complete documentation index at: https://docs.ezghcloud.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Pricing and limits

## Pricing

| What | Price | Charged on |
| --- | --- | --- |
| Fields stored | $0.01 per field-month | Each field of each enabled version, prorated by the second |
| Reads | $0.10 per million reads | Each successful call that returns values: all fields of a version, or one field |
| Writes | $0.10 per million writes | Each successful version write. Creating a secret with `fields` is one write. |

- A destroyed version isn't charged, and neither is a deleted secret's. An enabled version is
  charged until you destroy it, however old it is. Destroy versions you no longer need.
- Free: reading metadata (secrets, versions and grants), changing a secret's description and
  tags, deleting a secret, destroying a version, creating and revoking grants, every call that
  returns an error, and the reads an EZGH product makes through a [grant](/secrets/grants).
- There's no free tier.
- A secret's `fieldCount` is the number of fields the secret is charged for now.

### Example

20 secrets with 5 fields each, 2 enabled versions of each, in a month with 3 million reads and
10,000 writes:

| | Quantity | Charge |
| --- | --- | --- |
| Fields stored | 20 × 5 × 2 = 200 fields for the month | $2.00 |
| Reads | 3 million | $0.30 |
| Writes | 10,000 | Under $0.01 ($0.001) |
| Total | | $2.30, to the nearest cent |

Destroying the 20 old versions halves the stored fields to 100, which is $1.00 for a full month.

## Rate limits

| Limit | Value |
| --- | --- |
| Reads (all fields, or one field) | 5,000 per second per organization |
| Version writes | 50 per second per organization, and 5 per second per secret |

A request over a limit is `429 too_many_requests` with a `Retry-After` header.
Reads by EZGH products through [grants](/secrets/grants) have their own limit and don't use
yours.

## Quotas

| Quota ID | Name | Scope | Default | Adjustable |
| --- | --- | --- | --- | --- |
| `secrets.secretsPerProject` | Secrets per project | Project | 10,000 | Yes |
| `secrets.versionsPerSecret` | Enabled versions per secret | Secret | 100,000 | Yes |
| `secrets.grantsPerSecret` | Grants per secret | Secret | 100 | Yes |

A create over a quota is `409 quota_exceeded`, with the quota in the error. Destroying versions
or deleting secrets and grants frees their quota at once. See [Service quotas](/quotas) to view
your quotas and request an increase.

## Limits

| Limit | Value |
| --- | --- |
| Value | 8 KiB (8,192 bytes) after decoding |
| Fields per version | 1,000 |
| Field name | 256 characters |
| Secret name | 128 characters |
| Request body | 16 MiB to create a secret or a version; 1 MiB for any other request |
| Secret name rule | Letters, digits, `_`, `.`, `/` and `-`, starting with a letter or digit |
| Field name rule | Letters, digits, `_`, `.` and `-`, starting with a letter or `_` |
| List page size (`limit`) | 1 to 100 |

Source: https://docs.ezghcloud.com/secrets/pricing-and-limits/index.mdx
