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

# Plans and quotas

> MsgFlash plan comparison (EUR) and usage tracking through the public API.

## Plan comparison

MsgFlash focuses on **deliverability**, **campaigns**, and **transactional notifications** (webhooks, API). WhatsApp **statuses** are no longer part of the product offering.

|                             | Free | Pro                   | MAX                   |
| --------------------------- | ---- | --------------------- | --------------------- |
| **Monthly price**           | €0   | €19                   | €39                   |
| Instances                   | 1    | 5                     | 20                    |
| Messages + statuses / month | 500  | 50,000                | 150,000               |
| API requests / month        | 500  | 150,000               | 500,000               |
| API keys                    | 1    | 5                     | 10                    |
| Webhook endpoints           | 3    | 15                    | 50                    |
| Contact groups              | 10   | 50                    | Unlimited             |
| Campaigns                   | yes  | yes                   | yes                   |
| Webhooks                    | yes  | yes                   | yes                   |
| Number lookups              | yes  | yes                   | yes                   |
| Voice notes                 | yes  | yes                   | yes                   |
| Teams (owner)               | —    | 2 teams, 4 seats each | 4 teams, 8 seats each |

<Note>
  Prices are in **EUR only**. The Starter plan has been retired. New paid subscriptions are **Pro** or **MAX** only. Checkout via the dashboard accepts `pro` or `max`.
</Note>

***

## Quota rules

* Messages and statuses share the same monthly outbound quota: `effectiveOutboundUsage = messagesCount + statusesCount`
* The monthly API quota is separate from the real-time rate limit
* Scheduled messages re-check quota at send time
* `features.statuses` is `false` on all plans — `POST /api/v1/statuses` returns `403` `STATUSES_NOT_AVAILABLE_ON_PLAN`

***

## Track your usage

```bash theme={null}
curl https://srv.msgflash.com/api/v1/billing/usage \
  -H "x-api-key: msgf_live_your_api_key_here"
```

Example:

```json theme={null}
{
  "data": {
    "plan": { "code": "pro", "name": "Pro" },
    "limits": {
      "maxInstances": 5,
      "maxApiKeys": 5,
      "maxWebhookEndpoints": 15,
      "monthlyOutboundQuota": 50000,
      "monthlyApiRequestQuota": 150000
    },
    "features": {
      "campaigns": true,
      "statuses": false,
      "voiceNotes": true,
      "webhooks": true,
      "numberLookups": true
    },
    "usage": {
      "messagesCount": 1240,
      "statusesCount": 0,
      "effectiveOutboundUsage": 1240,
      "apiRequestsCount": 4500
    }
  }
}
```
