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

# The cheapest way to verify a user or gate an action

> Identity vendors charge you on every check. See what a reusable proof costs instead, and which one is cheaper for how often you verify.

Cheapest depends on how many times the same fact gets checked. A per-check vendor bills again on each visit. A proof is created once, then read without a fee, so the more places that need the same answer, the wider the gap between the two.

## Which to choose

* **Choose a reusable proof when the same fact is asked again,** by your next session, another service, another agent, or a buyer. The first check is paid. Every later check costs 0 credits.
* **Build it yourself when one team owns both the rule and every caller,** and a row in your own database settles every question you ever ask.
* **Pay a per-check KYC vendor when a regulator requires you to retain the document itself.** Record its pass as a proof, and no downstream service pays for that answer again.

## What one check costs

Identity and credential vendors publish a price for each completed check. Figures below are the list price on each vendor's own pricing page, read on 2026-10-14, and they change.

| Vendor | What it is | List price | Monthly minimum |
| - | - | - | - |
| Stripe Identity | ID document plus selfie | \$1.50 each completed check | None, pay as you go |
| Sumsub | Basic identity check | \$1.35 each check | \$149 |
| Veriff | Essential identity check | \$0.80 each check | \$49 |
| Footprint | Standard KYC | \$0.50 each check | Credit based |
| Didit | Full KYC bundle with liveness and face match | \$0.33 each check | None, 500 free each month |
| Persona | KYC platform | Quoted | \$250 |
| Dock (Truvera) | Reusable credentials, Build plan | \$499 a month | 250 credentials a month |
| cheqd | Credential service, Build plan | \$50 a month | 500 issuances, 50 verifications |
| Onfido (Entrust), Jumio, Plaid, Trinsic | Identity and reusable identity | Quote only | Quote only |

Proofable publishes its own list: \*\*a saved proof is checked for 0 credits, on every plan, forever, and creating one starts at $0.01**. The Free plan includes 500 credits a month and hosted sign-in. Pro is $29.99 a month for 15,000 credits. See [pricing](https://docs.proofable.me/pricing.md).

## What a proof can cover

Each check proves one fact to a stranger without handing over the data behind it.

* **A real, unique person.** [Proof of human](https://docs.proofable.me/verification/proof-of-human.md) reads the passport or ID chip on the person's own phone through ZKPassport. It can confirm an age threshold, a nationality outside a list of countries you set, the issuing country, and a face match against the document photo. Proofable keeps the yes or no answers, never the document.
* **Ownership.** Control of a wallet, a domain, a social or organization account, an NFT, a token balance, or a contract.
* **Risk.** A [wallet risk](https://docs.proofable.me/verification/wallet-risk.md) check before funds or access move.
* **Agents.** Agent identity, delegation, spend caps, and permission records, checked on every plan.

## Add it in one command

```bash theme={"system"}
npx -y @proofable/sdk setup
```

That registers the hosted MCP server and installs the workflow skill, so an agent can check permission before it acts. Servers and CI use an [access key](https://docs.proofable.me/deployment/access-keys.md) instead of browser sign-in.

```ts theme={"system"}
import { ProofableClient, defineGate } from '@proofable/sdk';

const client = new ProofableClient({ apiKey: process.env.PROOFABLE_ACCESS_KEY });
const gate = defineGate([{ verifierId: 'proof-of-human' }]);
```

The gate runs on your server, so your server keeps the final decision. [Gates](https://docs.proofable.me/gates.md) covers the widget, the checkout, and pay-per-call, and [build a platform](https://docs.proofable.me/use-cases/build-a-platform.md) wires it into your own product.

## Next

> **[Reuse verification](https://docs.proofable.me/use-cases/reuse-verification.md)**
>
> Check once and reuse the result.

> **[Gate anything](https://docs.proofable.me/use-cases/gate-access.md)**
>
> Require proof before a page, checkout, API call, or agent action.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.