Programmatic Usage

Learn how programmatic usage is billed separately from regular usage at Dust.

The Dust platform allows people to interact with agents directly through the web, Slack, or browser extension. Dust also provides an API that lets scripts, workflows, and other automated systems invoke agents programmatically.

Because these two types of usage are fundamentally different, they're consumed and billed separately.

What is programmatic usage?

Programmatic usage includes messages sent to Dust that are sent through a custom Dust key or that are not manually typed and sent by a person. Here are examples (non-exhaustive list):

Programmatic (billed separately):

  • Messages sent through the Dust API using a custom API key
  • Automated workflows in Slack, Zapier, n8n, etc. (not tied to a human action)
  • Batch operations in Google Sheets or Excel (where one can send many messages at once)

Not programmatic (covered by your plan):

  • Messages typed in the web app or browser extension
  • Messages typed in Slack (or Microsoft Teams, or equivalent) by team members

The key distinction: if a message wasn't directly typed and sent manually, it's programmatic.

Although there are a few exceptions (see Are absolutely all automated messages counted as programmatic?), it describes most use cases.

How is programmatic usage billed?

Programmatic usage is billed by decreasing a workspace's credits, based on the AI models' token consumption. Our rates are listed here: API Pricing

A credit is a coupon of fixed USD amount that will be progressively consumed according to those rates when the workspace calls Dust programmatically.

What are the different types of credits?

  • Free credits: Every workspace gets monthly free credits for programmatic usage, automatically renewed at the start of each billing cycle. The amount depends on your plan, as explained below. Unused credits do not carry to the following month.

  • Purchased credits: Once you've used your free credits, you can purchase additional credits. These purchased credits last for one year.

  • Enterprise pay-as-you-go: Enterprise customers have access to pay-as-you-go billing, which automatically charges for programmatic usage at the end of each billing cycle according to exact consumption, with a predefined maximum cap.

Do credits expire? Can we top up credit?

Purchased credits expire one year after purchase. The way to top up is just to buy other credits—which in turn will be valid for a year from the time of their purchase.

Free credits are valid for 1 month, and reset to their original value at the end of each billing cycle.

In what order are credits consumed?

Credits are always used in this order:

  1. Free credits first (the monthly credits included with your plan)
  2. Purchased credits (starting with those expiring soonest)
  3. Pay-as-you-go (Enterprise only, if enabled)

This ensures you always use the credits that would expire first.

What happens when there's no more credits?

Programmatic usage is blocked when your credits reach zero. You'll need to purchase additional credits to continue. This doesn't affect regular usage. You can still use Dust normally through the web, Slack, or browser extension.

Enterprise customers: If you've enabled pay-as-you-go, programmatic usage continues automatically and you're billed at the end of your billing cycle. You'll receive warning emails at 80% of your configured cap.

Regular user messages are subject to different fair use limits and are never affected by programmatic credit depletion.

How to track programmatic usage consumption?

Workspace administrators can view programmatic usage in the admin section under the "API & Programmatic" tab. You can:

  • See your cumulative usage over time, month by month (according to your billing cycle)
  • Filter API key, specific agent, or source (e.g. slack workflow, google sheets, api…)
  • View your current credit balance and remaining credits
  • Track when you'll reach your limit

How many free credits do customers get?

Customers receive monthly free credits based on workspace size:

  • First 10 users: $5 per user
  • Each additional user up to 50 total: $2 per additional user
  • Each additional user from 51 to 100: $1 per additional user
  • Beyond 100 users: No additional free credits

These credits reset at the start of your billing cycles.


Pro customers

How to buy additional credits?

You can purchase additional credits directly from your workspace:

  1. Go to the workspace admin section
  2. Navigate to the "Credits & Usage" page under "API & Programmatic"
  3. Click "Buy credits"
  4. Enter the dollar amount you want to purchase
  5. Complete payment via credit card

Credits become active immediately after payment.

How are additional credits billed?

When you purchase credits, a separate invoice is created and charged to your payment method on file. This is independent of your regular Pro plan subscription.

Payment Failure Handling

If an invoice payment fails, the system will automatically retry the charge 3 times.

Important notes:

  • You cannot purchase additional credits while you have unpaid credit purchase invoices
  • If you need to cancel a pending purchase before the automatic cancellation (after 3 failed retries), please contact support

Can credits be refunded?

No, purchased credits are non-refundable. They remain available for one year from purchase and can be used for any programmatic usage during that time.

Are there limits to how much credits one can purchase?

To prevent unexpected charges and ensure responsible usage, credit purchases are subject to limits that are enforced per billing cycle. The limits vary based on your plan type:

Pro Customers

  • Trial period: Cannot purchase credits. You'll see a message prompting you to contact support if you need credits during your trial.
  • Payment issues: Cannot purchase credits until your payment method is updated and subscription is active.
  • Active subscription: Maximum of $50 per active user per billing cycle, with an absolute cap of $1,000 per billing cycle. For example:
    • 10 users: up to $500 per cycle
    • 20 users: up to $1,000 per cycle
    • 30+ users: capped at $1,000 per cycle

Enterprise Customers

Maximum of $1,000 per billing cycle, or half of your pay-as-you-go cap (whichever is greater).

Examples:

  • Pay-as-you-go cap of $5,000 → Can purchase up to $2,500 in credits
  • Pay-as-you-go cap of $1,000 or less → Can purchase up to $1,000 in credits (minimum)
  • Pay-as-you-go cap of $20,000 → Can purchase up to $10,000 in credits

How Limits Work

  • Limits reset at the start of each billing cycle
  • Already-purchased credits in the current cycle are subtracted from your remaining limit
  • When your remaining limit is less than $1, you'll see a 'limit exhausted' message with an option to contact support
  • If you need higher limits, contact [email protected]

Enterprise customers

How does pay-as-you-go work?

Pay-as-you-go is an Enterprise-only feature that allows programmatic usage to continue seamlessly even if other credits are depleted.

When enabled:

  • Your free credits are consumed first, then any purchased credits
  • Once all credits are used, usage continues automatically on pay-as-you-go
  • A spending cap is configured for your workspace to prevent unexpected charges
  • You'll receive warning emails as you approach your cap (at 35%, 50%, and 85%)
  • At the end of your billing cycle, you're invoiced for the pay-as-you-go usage

If the cap is reached, additional programmatic usage will be blocked, but you can buy additional credits if needed, or contact us to increase your cap permanently.

How is pay-as-you-go billed?

Pay-as-you-go usage is billed at the end of your billing cycle on a separate invoice. The invoice covers the total programmatic usage costs for the period.

This invoice is separate from your regular monthly subscription invoice.

Can Enterprise customers buy credits?

Yes, Enterprise customers can purchase credits just like Pro customers. This can be useful if the pay-as-you-go cap has been reached and you need more programmatic usage. The same process applies:

  • Buy credits through the workspace admin section
  • Credits are valid for one year
  • If you buy credits before having reached your pay-as-you-go cap, they will be consumed first—note that this will have no impact on total cost.
  • You'll be notified if you're purchasing additional credits while still under 70% of your pay-as-you-go cap, to avoid buying needless credits.

What is "Non-API programmatic usage"?

It's usage that is programmatic, but does not rely on a custom API key that you created. Examples are slack workflows or programmatic triggers for integrations.


Additional questions

Where can I see my programmatic usage invoices?

Invoices are sent by email at time of purchase.

Are absolutely all automated messages counted as programmatic? Conversely, are all messages typed by humans counted as non-programmatic?

No, there are exceptions. While that explanation is true in most cases and is the best way to understand the distinction between regular and programmatic usage, the following cases are handled differently:

  • Webhooks and triggers are automated but by default counted as human usage (see next question);
  • Messages sent using a custom API key are counted as programmatic, regardless of whether they're automated or human-typed;
  • Dust CLI:
    • interactive messages (using dust chat then using the CLI's user interface to chat with the agent) are counted as human usage, not programmatic;
    • non-interactive messages (using dust chat --agent A --message M are counted as programmatic (even if typed by a human).

What about triggers and webhooks?

Triggers and webhooks are counted as part of regular fair usage by default, since they're typically infrequent and tied to a specific user action. However, if you have high-consumption triggers or webhooks that generate significant usage, they can be switched to programmatic billing on request. This might be necessary to avoid fair usage rate limits (42 messages/day/trigger). Contact your Customer Success representative if you think this applies to your use case.

Can we use our user seats remaining part of "fair use" limit for programmatic usage?

No. The two types of usage are fundamentally different, and as such they're consumed and billed separately.

Each user seat at Dust is tied to a specific human user, and is destined to be used by that person only, for the purposes of typing and sending messages manually.

The fair use limits should be understood as a way to prevent abuse, not as an allowed quota of messages.