Enlist

Pricing & limits

Understand Enlist pricing tiers, signup limits, and feature access.

Pricing tiers

Enlist has four pricing tiers. Upgrade or manage your plan from Settings.

TierPriceSignupsWaitlistsFeatures
Free$05001API, SDK, MCP, bring-your-own Resend key
Launch$15/moUnlimited55,000 managed emails/mo, webhooks
Scale$39/moUnlimitedUnlimited25,000 managed emails/mo, priority support
EnterpriseCustomUnlimitedUnlimitedCustom volume, SLA, dedicated support

Nothing is metered and there is no overage billing. Past a limit the answer is always an upgrade, never a surprise invoice.

Enterprise is not open for enquiries yet — the tier is documented here because Scale's limits are defined against it, but there is nothing to buy or contact about today.

Annual billing

Save 2 months by paying annually:

  • Launch: $150/year (was $180/year)
  • Scale: $390/year (was $468/year)

Both cycles include exactly the same limits and features.

Signup limits

The metric is signups stored, not signups per month — so a launch spike does not cost more than the same people arriving slowly, and deleting a signup frees the space back up.

Free is capped at 500. Signups are accepted a little past that (a 10% buffer, so a burst is never chopped in half), then the API returns quota_exceeded. Every paid plan is unlimited.

Managed email allowance

Enlist sends signup emails one of two ways:

  • Your own provider — connect your own Resend API key in Settings. Unlimited on every plan, including Free. Enlist does not meter it, because it does not pay for it. Resend is the only provider wired up today; more can be added without changing anything else about how sending works.
  • Enlist's provider — zero setup, and the only thing with a monthly allowance: 5,000/month on Launch, 25,000/month on Scale, custom on Enterprise. Free does not include it.

The allowance runs on the calendar month, with a 20% burst so a broadcast never stops halfway. Past that, sending pauses until the month rolls or you upgrade; signups keep working either way.

Rate limits

Per account, across the whole API:

TierRequests/minute
Free60
Launch300
Scale1,000
EnterpriseCustom

Over the limit returns 429 with a Retry-After header.

Feature matrix

FeatureFreeLaunchScaleEnterprise
REST API, SDK, MCP server
API keys15
Bring your own Resend key
Enlist-managed email sending5,000/mo25,000/moCustom
Custom signup email
Email event tracking
Webhooks
CSV export, UTM & referrer
Referral tracking
Analytics history30 daysFullFullFull
SupportDocs & email (best effort)Email (24-48h)Priority email (4h)Dedicated

The analytics cap applies to the stats endpoint only. Signup records are never deleted — a free account can always export its full list.

Checking your usage

Via API

curl https://api.enlist.dev/v1/account \
  -H "Authorization: Bearer $ENLIST_API_KEY"

Response:

{
  "account_id": "...",
  "plan": "free",
  "quota": {
    "tier": "free",
    "signups_used": 450,
    "signups_limit": 500,
    "signups_remaining": 50,
    "percent_used": 90,
    "can_add_signup": true
  }
}

Unlimited plans report 0 for the limit and remaining fields.

In the dashboard

Visit Settings to see signups and managed emails against your plan's limits.

Limit exceeded

If you hit the signup limit, the API returns 402 Payment Required:

{
  "error": {
    "code": "quota_exceeded",
    "message": "Free plan stores 500 signups. Delete some or upgrade to keep collecting."
  }
}

It is a 402 and not a 429 because this is not retryable — waiting does not clear it. See the error reference.

Options:

  1. Delete signups you no longer need — the space comes back immediately
  2. Upgrade to a paid plan for unlimited signups
  3. Contact support for a temporary increase

Changing your plan

Upgrade from Settings → Plan & billing. To downgrade or switch billing cycle, use the Stripe Customer Portal (the "Manage billing" button in Settings). Prorations are handled by Stripe.

Questions?

Email support@enlist.dev.