BitelioBitelio

Billing

Plans, usage metering, and spending limits explained

Bitelio charges by monthly email volume. A single usage meter covers everything: campaign sends, transactional sends, emails fired from workflows, and inbound messages you receive. The prices described here are the plans offered at bitelio.com.

Plans

Free tier

On the free tier, a project can send up to 1,000 emails each month without paying anything. Marketing emails from free projects carry a Bitelio-branded footer, and any inbound mail you receive is deducted from the same 1,000-email allowance.

Each paid plan bundles a monthly volume and lets you keep sending past it as metered overage:

PlanMonthly priceEmails includedBeyond the allowance
Pro$19/month15,000 emails/month$1.20 per extra 1,000
Scale$99/month100,000 emails/month$1.20 per extra 1,000
EnterpriseCustomCustom volumeVolume pricing

Contacts are unlimited on every plan. Upgrading to any paid plan drops the Bitelio footer; Scale additionally comes with a dedicated sending IP and priority support.

Usage tracking and per-category caps live under Settings → Billing.

What counts as an email

Your monthly meter increments on every send and every inbound message:

SourceCost
Transactional sends (/v1/send)1 credit per recipient
Campaigns1 credit per recipient
Workflow SEND_EMAIL steps1 credit per send
Inbound emails1 credit per received email
Emails with attachments2 credits per email

Attaching one or more files doubles the cost of that email. Size is irrelevant to pricing — a 100 KB attachment and a 10 MB one are billed identically, at one extra credit for the email.

Per-category billing limits

To stop any single source from burning through your allowance, you can put a monthly ceiling on each category individually. A typical use: guarantee headroom for transactional mail even if a campaign misfires and sends far more than intended.

CategoryWhat it caps
TransactionalEmails sent through /v1/send
CampaignsEmails sent as part of a campaign
WorkflowsEmails sent by SEND_EMAIL steps inside a workflow
InboundInbound emails received at your verified domain

Caps are set in Settings → Billing → Limits, and each one stands alone — configure a single category, every category, or none at all.

What happens when a limit is hit

Once a category cap is reached — or a free-tier project runs out of its plan allowance (on paid plans, sends simply continue as billed overage) — the following applies:

  • Outbound API calls (/v1/send, campaign sends, workflow sends) respond with 402 Payment Required and the error code BILLING_LIMIT_EXCEEDED. Build your application to cope with this — queue the send for later, or show the user a meaningful error.
  • Inbound emails for the affected project are silently discarded until the cap resets; there is no queue and no replay.
  • All limits reset when a new billing period begins.

Bitelio also notifies you — by email and/or in-app — as a cap gets close and again when it's reached.

Invoices and payment

All payments run through Stripe. The Settings → Billing page lets you:

  • Jump into the Stripe billing portal to change payment methods, billing addresses, and tax IDs.
  • Browse and download the project's full invoice history.
  • Review this period's usage, broken down by category.

Failed payments are retried by Stripe on its usual schedule. If retries keep failing, the project eventually loses the ability to send — so keep a valid payment method on file.

API reference

  • GET /users/@me/projects/:id/billing-consumption — current period usage by category.
  • GET /users/@me/projects/:id/billing-limits — read per-category caps.
  • PUT /users/@me/projects/:id/billing-limits — update per-category caps.
  • GET /users/@me/projects/:id/billing-invoices — list invoices.
  • POST /users/@me/projects/:id/billing-portal — generate a Stripe billing portal URL.
  • POST /users/@me/projects/:id/checkout — start a Stripe Checkout session for upgrades.

What's next