Drex reference

Pricing

What Drex bills, how your balance is added and spent, how pay as you go is charged, and where to read usage.

Your balance receives a signup bonus, a monthly allowance, referral rewards, and any funds you add. Every successful POST /v1/systemone debits input tokens against it, and the balance is always spent first. Without pay as you go, requests stop when balance runs out. With a saved card and pay as you go turned on, usage beyond your balance is billed to the card every 14 days. Base URL https://console.nace.ai, model drex-v2.0.

ItemAmount
Per input token, drex-max-finance$0.00000003 (30 nUSD)
Per 1M input tokens, drex-max-finance$0.03
Per input token, drex-max-v1.1$0.00000003 (30 nUSD)
Per 1M input tokens, drex-max-v1.1$0.03
Per input token, drex-v2.0$0.00000003 (30 nUSD)
Per 1M input tokens, drex-v2.0$0.03
Signup balance$5.00
Top-up minimum$5
Top-up maximum$1,000
Top-up presets$5, $10, $25, $50, $100

Image tokens on Drex Max count as input tokens.

What is billed

For Drex inference (POST /v1/systemone), the unit is one input token, as reported in usage.input_tokens of the response. Its output tokens are reported in usage.output_tokens and are not billed. Drex Search has separate input and output token rates. Drex keeps balances in nano-USD (nUSD). One USD is 1,000,000,000 nUSD.

The cost of a request is usage.input_tokens multiplied by the per-token price of the model that answered it, which the response reports as model. A request that names a retired model is answered by its successor and billed at the successor's price. There is no per-request fee and no charge per question.

Only a 200 response is debited. A request that ends in 401, 402, 422, 429, 500, or 529 costs nothing. Drex reserves the request's maximum cost before calling the model and records the debit before it returns the 200, once per request_id, so a retried debit never double-charges.

The dashboard Playground is billed the same way as the API, per input token of each successful evaluation.

Worked examples

Each row below is the usage of a real response captured on 2026-09-24, and the arithmetic uses the drex-v2.0 price of 30 nUSD per input token. Output tokens are not billed. Token counts vary a little between calls.

RequestInput tokensOutput tokensCost
Three questions on a one-sentence support ticket106212106 × 30 nUSD = 3,180 nUSD = $0.00000318
Two questions on a small JSON object103103103 × 30 nUSD = 3,090 nUSD = $0.00000309
One score question on a two-sentence review5112951 × 30 nUSD = 1,530 nUSD = $0.00000153

At the same price, 1,000,000 input tokens cost $0.03.

The $5.00 signup balance buys 166,666,666 input tokens of drex-v2.0.

The CSV export reports both cost_usd and cost_nusd, so the exact figure is always available.

Browser runs

A browser run is billed once, when it ends, from the same balance: $0.12 per million Drex Max input tokens, $0.20 per million input and $1.00 per million output tokens of the planning and reading model, and $0.0045 per minute of browser time, never more than the run's limits.max_cost_usd. Runs that never start, time out, end failed, or are cancelled before completion are not charged. The run's usage reports each count and cost_usd.

Drex Search costs $0.10 per million input tokens and $0.50 per million output tokens across its models and tools. The account starting the search pays, including in an invited workspace. Cached input is counted once. Failed/cancelled searches and answer-cache hits have no charge. Each new run pins its tariff; older runs are unchanged.

For example, 800,000 input tokens cost $0.08 and 200,000 output tokens cost $0.10, for a total of $0.18. See the account’s Usage Logs for the settled charge.

Up to $1 of available credit is reserved while a search runs. Unused credit is released at settlement; a result over its reservation is withheld without prepaid debt. Missing usage stays pending, with the result withheld, until a final receipt is available. A terminal run that remains unmetered past its reservation deadline is closed uncharged with its answer withheld. A conclusively missing create is closed uncharged after the admission retry window.

Search charges appear individually in Usage › Logs and reduce the Billing balance. The existing Drex inference and Perception charts/series CSV report those products; use the Logs export for individual search charges.

Free balance

A new account gets the signup balance in the table when it is created, and a monthly allowance after that, if it meets these rules:

  • The signup balance expires 3 months after sign-up. Unspent funds expire after that.
  • The monthly allowance is $5. The first one arrives one month after sign-up, then one every month on the same day. Each expires at the next renewal, when the new one replaces it, so unspent monthly allowance does not carry over.
  • A referral earns $5 for each friend, once that friend makes a paid call. A paid call is a request or document job with a charge above zero. Adding funds does not count. Referral rewards stack, and each expires one month after it is granted. The dashboard's Invite friends button gives you your invite link.
  • The monthly allowance and the signup balance follow the same eligibility rules below.
  • It is granted once per mailbox. Drex normalizes the email before checking: lowercased, a +suffix in the local part removed, googlemail.com treated as gmail.com, and dots in a Gmail local part removed. A second account on the same mailbox gets no signup balance.
  • Accounts on disposable email domains get no signup balance. The account itself still works and can be topped up.
  • It needs one proof that a person is behind the account, on any email domain: a Google sign-in, a GitHub sign-in from an account at least 30 days old, or a card verified on the billing page. An account that signed up with an emailed code gets the balance as soon as it does one of these with the same email address.
  • Drex reads a GitHub account's creation date from GitHub when you sign in. A GitHub account under 30 days old gets the balance on a later sign-in, once it is 30 days old.
  • Verifying a card does not charge it and does not turn on pay as you go. Each card unlocks one signup balance, ever, including after the account that used it is deleted. Prepaid cards do not count.
  • At most 3 accounts on one free email provider get signup balance from the same network in any 24 hours. Later accounts on that network still work and can be topped up, and verifying a card lifts this limit for your account. Drex keeps the network address of a sign-in for 30 days for this check.
  • At most 3 accounts per company email domain get signup balance in any 24 hours. Subdomains count toward their parent domain, so a.example.com and b.example.com share the limit. Free email providers have no per-domain limit. Later accounts on the same domain still work and can be topped up, and verifying a card lifts this limit for your account.
  • It does not change the account's rate-limit tier. See Limits.

Top-ups

Top up on the dashboard Billing page. Payment is by card through Stripe Checkout, in USD.

  • Amounts are whole dollars between the minimum and maximum in the table. The page offers the preset amounts and a custom field.
  • Each top-up is its own balance addition. It expires 12 months after purchase.
  • Top-up funds are non-refundable except where required by law.
  • Your balance updates when Stripe reports the payment as paid. Drex fulfils each Checkout session once, whether the webhook or the return page arrives first.
  • The first completed top-up moves the account to the paid rate-limit tier permanently. Auto-pay and a paid usage invoice also make an account paid; see Limits.

How your balance is spent

Spendable balance is the sum of what remains on grants that have not expired. Each debit draws from the grant that expires soonest, then the next, until the cost is covered. A single request can span two grants. Used-up and expired grants are skipped.

Before execution, Drex reserves funds for the request. Available balance excludes other running work and usage awaiting settlement. A free or prepaid request starts only when its budget is funded. If its funds expire or run out, the request is cancelled without charge, including partial work; it creates no usage debt and does not reduce a later top-up. Failed requests and cancellations before completion release their reservation once. An overdraft left by earlier usage, and refund or dispute adjustments, keep their existing treatment: an existing overdraft is settled from the next grant before it becomes spendable (on an account that has never topped up, turned on auto-pay or paid an invoice, written off up to the free balance it was granted), and the Billing page shows it next to the balance.

A prepaid document job reserves a per-document allowance, capped by the available balance: up to 10 Parse pages, 5 Split or Classify pages, or 3 Extract pages, in standard or high effort. Other running work's reservations are unavailable to new requests, so several document jobs can run together while the balance funds their combined allowances; a larger document is cancelled without charge, and adding balance does not raise the allowance. Explicitly enabled auto-pay is not subject to this allowance. An account without auto-pay can also have at most 50 document jobs and browser runs started and not yet settled at once while it has never topped up or paid an invoice, or while its balance is under $5; reaching that limit answers 429 job_limit_reached with a message to wait for a job to finish. Browser runs reserve limits.max_cost_usd; inference and Summarize reserve conservative maximum costs. These bounds can refuse a request whose eventual actual cost would have fit. Explicitly enabled auto-pay continues to bill authorized usage to the current period after available grants. See Pay as you go.

At zero balance

When available balance cannot cover a request's funded budget and auto-pay is off, POST /v1/systemone and the Playground return 402 insufficient_credit with this message:

This account has insufficient available funds. Add funds to keep going.

A positive balance must cover the request’s funded budget; it is not permission to spend past zero. GET /v1/models does not check the balance and keeps working, so a client can still list models while the account is empty. With auto-pay on, a request is not refused for lack of funds.

Drex rechecks available funds and reserves them atomically across keys and service instances. Cached key identity cannot authorize spending already reserved by another request.

Pay as you go

Saving a card does not turn on paid usage. Save a card on the Billing page, then turn on the Auto-pay switch and confirm the prices and billing shown there. From then on, requests are never refused for lack of funds. Your balance is still spent first. The part of a request's cost that the balance does not cover is added to the account's current billing period.

  • A billing period lasts 14 days. Periods start at midnight UTC on the day the account was created, and the Billing page shows the current one as "Your usage for Oct 7 - Oct 21, 2026".
  • When a period ends, Drex invoices the usage not yet billed and charges it to your default card. A period with no uncovered usage produces no invoice. Under $0.50, Stripe's minimum charge, the amount moves to the current period and is billed with its next invoice.
  • For a large balance, Drex may charge earlier, before the period ends. That invoice is marked interim on the Billing page, and the rest of the period is billed when it ends.
  • Balances do not reset with periods. A new top-up or monthly allowance is spent before any new usage is added to the period.
  • Turn auto-pay off with the Auto-pay switch on the Billing page, or remove your last card, and the account goes back to prepaid for new requests. Usage already added to a period is still billed.

Invoices are listed on the Billing page with their period, amount, and status, with a link to each Stripe invoice and receipt.

When a charge fails

If the charge for an invoice is declined or cannot be made (no card on file, or the bank needs the payment confirmed), or an invoice is still unpaid at the end of the day it was issued, the account is paused. An invoice Drex or Stripe could not process because of an error on their side never pauses the account: Drex keeps retrying it. Requests that spend funds are refused with 402 payment_required and this message:

This account has an unpaid invoice. Pay it on the Billing page to keep going.

Reads keep working, including GET /v1/models and job reads. The account's owners and admins get one email about the failed invoice. The Billing page shows a red alert with a Pay button that opens Stripe's invoice page. The pause lifts as soon as the invoice is paid. A payment_required response is not retryable until then. See Errors.

Where to see usage

The dashboard Usage page shows requests, tokens, and cost as charts for the last 24 hours, 7 days, or 30 days, in hourly or daily buckets, for all traffic, the Playground only, or one API key.

The download icon on that page, labeled Download CSV, exports the same series with these columns:

ColumnMeaning
bucket_start_utcStart of the bucket as an ISO 8601 timestamp in UTC.
requestsSuccessful evaluations in the bucket.
input_tokensSum of usage.input_tokens.
output_tokensSum of usage.output_tokens.
cost_usdExact cost in dollars, without a $ sign, for example 0.00000636.
cost_nusdThe same cost as an integer in nUSD, for example 6360.
perception_runsPerception jobs charged in the bucket.
perception_cost_usdTheir cost in dollars, without a $ sign.
perception_cost_nusdThe same cost as an integer in nUSD.

The file is named drex-usage-<range>-<bucket>.csv, for example drex-usage-7d-hour.csv. Buckets with no traffic are present with zeros.

The Billing page shows your usage for the current billing period and when it is charged, your available balance, any overdraft, the soonest-expiring funds, your payment methods, the Auto-pay and balance-alert settings, your invoices, the list of purchases with a link to each Stripe invoice and receipt, and the balance history with type, amount, remaining balance, expiry, and status. Balance additions include free balance, monthly allowance, referral reward, promo code, and top-up.

On this page