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

# Pricing & Credits

> Understand the Tuteliq credit system, pricing tiers, and per-endpoint costs

Every Tuteliq API call consumes credits. Credit costs vary by endpoint based on processing complexity. Your current balance and usage are always available through the dashboard and the API.

## Per-endpoint costs

### Core Safety

| Endpoint         | Credits       | Notes                                |
| ---------------- | ------------- | ------------------------------------ |
| `detectBullying` | 2             | Single text analysis                 |
| `detectUnsafe`   | 2             | Single text analysis                 |
| `detectGrooming` | 3 per 10 msgs | `ceil(messages / 10) × 3`, minimum 3 |

### Fraud Detection

| Endpoint                  | Credits | Notes                               |
| ------------------------- | ------- | ----------------------------------- |
| `detectSocialEngineering` | 2       | Social engineering tactic detection |
| `detectAppFraud`          | 2       | Fraudulent app/download detection   |
| `detectRomanceScam`       | 2       | Romance scam pattern detection      |
| `detectMuleRecruitment`   | 2       | Money mule recruitment detection    |

### Safety Extended

| Endpoint                          | Credits | Notes                                                                     |
| --------------------------------- | ------- | ------------------------------------------------------------------------- |
| `detectGamblingHarm`              | 2       | Gambling harm detection                                                   |
| `detectCoerciveControl`           | 2       | Coercive control detection                                                |
| `detectVulnerabilityExploitation` | 2       | Vulnerability exploitation + cross-endpoint modifier                      |
| `detectRadicalisation`            | 2       | Radicalisation indicator detection                                        |
| `detectDistressSignals`           | 2       | Linguistic distress-signal patterns (loneliness, isolation, hopelessness) |
| `detectTFGBV`                     | 2       | Tech-facilitated gender-based violence detection                          |

### Multi-Endpoint Analysis

| Endpoint                                  | Credits | Notes                                                                                                                                                                                                                                 |
| ----------------------------------------- | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `analyseMulti` (alias `/detection/multi`) | `1 + N` | Parallel fan-out discount. `1 base + 1 per endpoint`; 3 endpoints = 4 credits, 7 endpoints = 8 credits. Cheaper than calling endpoints individually because server-side execution is parallel — wall-clock cost doesn't scale with N. |

### Analysis & Guidance

| Endpoint          | Credits       | Notes                                |
| ----------------- | ------------- | ------------------------------------ |
| `analyzeEmotions` | 3 per 10 msgs | `ceil(messages / 10) × 3`, minimum 3 |
| `getActionPlan`   | 9             | Longer generation                    |
| `generateReport`  | 13            | Structured output                    |

### Synthetic Content Detection

| Endpoint                 | Credits | Notes                                      |
| ------------------------ | ------- | ------------------------------------------ |
| `detectSyntheticContent` | 2       | Multi-signal forensic analysis (text path) |

### Verification

| Endpoint                    | Credits | Notes                                                                      |
| --------------------------- | ------- | -------------------------------------------------------------------------- |
| `verifyAge` (liveness only) | 10      | Liveness detection + biometric estimation                                  |
| `verifyAge` (full)          | 20      | Document analysis + liveness + biometric estimation (Pro tier and above)   |
| `verifyIdentity`            | 25      | Document verification + liveness + face matching (Business tier and above) |

### Document Analysis

| Endpoint          | Credits | Notes                                                           |
| ----------------- | ------- | --------------------------------------------------------------- |
| `analyzeDocument` | Dynamic | `max(10, pages_analyzed × endpoint_count)` — minimum 10 credits |

Document analysis uses **per-page, per-endpoint pricing**. Each page-endpoint combination costs 1 credit, with a minimum of 10 credits to cover extraction overhead. See [Document Analysis](/document-analysis#credit-pricing) for detailed examples.

### Media Analysis

| Endpoint                 | Credits | Notes                                     |
| ------------------------ | ------- | ----------------------------------------- |
| `analyzeVoice`           | 21+     | Base 21 (first 60s) + 15 per extra minute |
| `analyzeImage`           | 7       | Vision + OCR + analysis                   |
| `analyzeVideo`           | 95      | Frame extraction + per-frame vision       |
| Voice stream (per flush) | 7       | Real-time transcription + analysis        |
| Video stream (per frame) | 7       | Per-frame vision analysis                 |

<Info>
  For conversation-based endpoints (`detectGrooming`, `analyzeEmotions`), credits scale with message count. A 25-message conversation costs `ceil(25 / 10) × 3 = 9` credits.

  For `analyzeVoice`, credits scale with audio duration. The base cost of 21 credits covers the first 60 seconds. Each additional minute adds 15 credits. Examples: 2 min = 36 credits, 5 min = 81 credits, 10 min = 156 credits.
</Info>

### Batch processing example

When submitting a batch of 500 text messages through `detectUnsafe`:

```
500 messages x 2 credits = 1,000 credits
```

For a batch of 200 messages through `detectGrooming` with 15 messages per conversation:

```
200 conversations x ceil(15 / 10) x 3 = 200 x 6 = 1,200 credits
```

## Purchasing credits

Credits can be purchased from the [Tuteliq Dashboard](https://tuteliq.ai/dashboard). Navigate to **Billing > Purchase Credits** to top up your balance. Plans include monthly credit allowances, with overage billing available for high-volume usage.

## Tracking usage

### Response body

Every API response includes a `credits_used` field showing the credits consumed by that request:

```json theme={"dark"}
{
  "detected": true,
  "severity": 0.85,
  "confidence": 0.91,
  "risk_score": 0.87,
  "categories": [{ "tag": "AUTH_IMPERSONATION", "label": "Authority Impersonation", "confidence": 0.92 }],
  "credits_used": 2
}
```

### Response header

Each response also includes the `X-Credits-Remaining` header with your current balance:

```
X-Credits-Remaining: 9472
```

### Usage endpoints

Check your credit balance and historical usage programmatically via the [Usage API](/api-reference/introduction):

<CodeGroup>
  ```typescript Node.js theme={"dark"}
  const usage = await tuteliq.getUsage();
  console.log(usage.credits_remaining);
  console.log(usage.credits_used_today);
  ```

  ```python Python theme={"dark"}
  usage = client.get_usage()
  print(usage.credits_remaining)
  print(usage.credits_used_today)
  ```

  ```bash cURL theme={"dark"}
  curl https://api.tuteliq.ai/v1/usage \
    -H "Authorization: Bearer YOUR_API_KEY"
  ```
</CodeGroup>

## Low-balance alerts

Configure low-balance notifications in the [Dashboard](https://tuteliq.ai/dashboard) under **Settings > Alerts**. You can set a credit threshold (e.g., 100 credits remaining) and receive email or webhook notifications before you run out.

## What happens when credits run out

<Warning>
  When your balance reaches zero, API requests return a `402 Payment Required` error. Upgrade your plan or purchase additional credits from the [Dashboard](https://tuteliq.ai/dashboard) to resume service.
</Warning>
