Usage and billing
What you are charged for, and how to check usage and invoices.
Charges are totaled per team, not per app. If a team has several apps, their usage is added together.
What is measured
| Category | Measured |
|---|---|
| CDN traffic | Data transferred, request count |
| Compute (running servers) | CPU time, provisioned memory, invocation count |
Per-domain traffic for an app is counted under the domain the visitor actually requested (for example www.example.com).
Check usage
ntro usage # current billing cycle
ntro usage --from 2026-09-01 --to 2026-10-01 --by day # date range, per day
ntro billing # plan and payment status
ntro invoices # invoice listntro usageshows usage for the current billing cycle, the allowance included in your plan, and estimated charges. Estimates are not final invoices.--fromand--totake UTC dates (YYYY-MM-DD) or RFC3339 timestamps. The start is included and the end is not; the example above covers September.--by region|app|daybreaks results down by region, app, or day.- Add
--team <team>to check another team.
Only owner, member, and billing can see a team's usage and billing. viewer can see per-app traffic analytics without costs. See Teams and roles.
Plans
| Plan | What you get |
|---|---|
free (default) | An included allowance of free usage. |
pro | A monthly platform fee and monthly usage credits; remaining billable usage is charged. |
Check current prices on the pricing page or through the public pricing API.
- Only the team's
ownerorbillingcan change plans and manage payment methods. - Payment methods are entered in the console, not the CLI.
- Switching from a paid plan to another plan may be scheduled for the end of the current billing cycle.
Credits and your billing currency
1 credit = 1 USD. Usage rates, included quantities, monthly plan credits, seat prices, and Flat Rate CDN tier fees are defined once in a currency-neutral pricing catalog. Catalog versions have effective dates.
For each billing currency, the operator publishes a separate date-versioned currency price: the fixed local-currency price of one credit, plus a directly entered monthly platform fee for each plan. This is not live foreign-exchange conversion. For example, if the published KRW credit price is ₩1,400, 20 credits represent ₩28,000; the plan's monthly platform fee is set separately, not calculated from credits.
For a billing period, the catalog and the currency price effective at the period start determine usage charges. Usage statements, invoices, and spending budgets remain in the team's billing currency, not credits.
Two kinds of credit
- Monthly plan credits offset only that cycle's traffic and compute usage charges, up to the usage total. They do not cover platform fees or Flat Rate CDN tier fees, and unused credits do not roll over.
- Operator-granted team credits are a currency-neutral balance. They reduce the invoice total, including fees, in any billing currency. The oldest grant is used first (FIFO: first in, first out); unused balances stay available for later invoices, including after a currency change. Their local-currency value uses the fixed credit price effective at the invoice's billing-period start.
The pricing page shows monthly credits alongside their approximate value in your selected currency. Invoice amounts are finalized in that currency, with usage rounded half up per metric/region line to the currency's smallest unit.
Rates by location
Rates in the pricing catalog are set per country. Server locations are shown as site codes in <country>-<city> form, such as kr-icn (Seoul), us-pdx (Oregon), and de-fra (Frankfurt), but catalog rates use country codes such as kr, jp, us, and de.
- Example: compute run in Seoul and CDN traffic in South Korea are both billed at the
krrate. - If the catalog has no entry for a country, the default rate
*applies. - In usage reports, compute shows site codes (
kr-icn) and traffic shows country codes (kr).
Pause on budget
Budgets measure on-demand traffic and compute spending after monthly plan credits, in the team's billing currency. Platform fees and Flat Rate CDN tier fees are excluded. Operator-granted credits reduce invoices later; they do not reduce the spending used for budget alerts or pausing.
Turning on pause_on_budget for a spending budget requests that production be paused when spending reaches 100% of the budget. It is not an instant hard cap, so usage can grow slightly in the short time before the pause takes effect.
Receive spending alerts at 50%, 75%, and 100% of your budget through signed HTTPS webhooks, Slack, or Discord. A team can register up to 10 destinations; destination management is separate from budget settings. See Webhooks.
Payment receipt email
When an invoice with a positive total becomes paid, a receipt is emailed to the team's billing email, whether payment is confirmed through Stripe, NicePay, recovery/reconciliation, or an operator action. A duplicate payment notification does not generate another receipt. Zero-total invoices do not generate a payment receipt, and invoices already paid before receipt emails were introduced are not resent.
Receipts are currently sent in English. An email delivery failure does not undo a completed payment.
The receipt includes:
- Invoice number, billing period (UTC dates), paid date, and payment method, including a card hint when known.
- Each invoice item in the invoice currency, with credits shown as negative amounts.
- Subtotal, tax (with label/rate when present), and total paid.
- The invoice's bill-to details when present.
- A link to the team's billing page and a payment-provider receipt link when available.
Receipts use the billing customer's email address, which may differ from your account email.
API reference: amount fields
Amounts in API responses whose names end in _minor are integers in the currency's smallest unit (for example, cents for USD). When displaying them, check the response's currency and its number of decimal places. Credit quantities and pricing decimals are strings, not minor-unit integers; see Public pricing fields.