Skip to main content
for-builders

Pricing & Earnings

How to price your workflow, control API costs, get paid, and withdraw earnings.

Written By Philippe

Last updated 3 days ago

Pricing Your Workflow

When you publish a workflow, you set three prices. They're locked permanently after deployment.

FieldWhat It IsRange
Deploy priceOne-time fee when a buyer deploys$0 - $1,000
Run pricePer-run feefrom $1 per 1,000 runs
Buyer's usage budget / Your key safety limitPer-run ceiling on variable AI usage (mode-dependent; optional)$0 - $100

During publishing, the form shows a live revenue estimate per run.

Heavy computation has its own compute limit, from 5 seconds at the minimum price up to 5 minutes, set by your run price. Price for the compute your workflow needs.

Prices cannot be changed after deployment. To adjust, deploy a new workflow.

Payment mode neutrality: Your builder fee is the same regardless of which payment mode the buyer used (per-run payment, buyer-funded balance, or their prepaid balance). The platform handles routing transparently.


If you use your own API keys {#own-keys}

When you publish a workflow with your own API keys (instead of platform-provided keys or letting buyers bring theirs), each run is bounded by the buyer's per-execution API budget — the cap the buyer authorizes when they fund a run.

If a single API call costs more than that budget, the run stops and the workflow pauses for that buyer. The buyer pays nothing for the failed run. They can top up and reactivate.

Why this matters for you:

  • Pick model defaults and prompt lengths that comfortably fit inside typical per-execution API budgets for your category. Outlier-prompt runs that blow past the budget cause buyer-visible pauses — bad for retention.
  • You still keep your builder fee for runs that complete successfully; you don't pay anything for runs that abort on budget.
  • If your costs are inherently spiky, set a higher minimum per-execution API budget when you publish, or use the platform-provided key option so the workflow balance covers the variance instead. This applies when buyers pay AI usage; with usage included in your price, your own key covers every run.

Worked example. Bob publishes a workflow with his own OpenRouter key and a $0.01 minimum per-execution API budget. A buyer runs it; the API call returns a $0.05 cost (longer-than-usual completion). The run stops; the buyer's workflow pauses with the message "Per-execution API budget exceeded"; Bob earns $0 from this run. To prevent this category of pause, Bob bumps the minimum per-execution API budget to $0.10 on his next publish.


What You Earn {#earnings}

You set your price — the full execution fee lands in your balance, and the only cut is a 10% fee when you cash out (net 90%).

In "Included in my price" mode you cover API usage yourself -- see Who Pays for AI Usage? below.

1,000 runs at $0.10Amount
Total run fees$100.00
Your earnings$100.00

Earnings accumulate in your balance. Use them to buy workflows and passes, or to pay per run at the paywall — or withdraw to USDC. Topping up a prepaid balance or a workflow's run budget is paid in USDC, so funding either one from earnings means cashing out first.

Cached answers are not runs. A webhook answer marked for caching is served again on the You pay link without a run. That repeat is not charged to the Workflow balance, earns nothing, and does not appear in run counts or earnings. Calls through the Caller pays link are never cached, so every paid call is a run you earn from. See Repeat answers from cache.

Settlement

Payments batch every 5 minutes. No invoicing, no chasing payments.

  1. Buyer runs workflow -- money reserved when the run starts (for workflows where buyers pay AI usage, this includes run price plus the buyer's usage budget)
  2. Batch settles (~5 min)
  3. Lands in your balance

When AI usage is included in the workflow's price: the buyer's balance reserves only the run price (plus the $0.001 payment-processing fee on pay-per-run calls). Your key safety limit is your private brake on your own keys — buyers never see it, and it never changes what they hold or pay.


Who Pays for AI Usage? {#multiplier}

On the pricing step you choose one of three modes for cost-bearing API usage:

The preselected mode follows your key-ownership answer from the Connect step: your own keys start on Included in my price, platform keys always bill at cost, and when buyers bring their own keys there is nothing to choose — they pay their provider directly.

ModeEffect$0.05 raw API cost
Included in my priceYou cover usage from your own keys (fixed pricing)Buyer pays $0 extra
Buyer pays · at costUsage billed to the buyer at costBuyer pays $0.05, you get $0.05 back
Buyer pays · plus my marginYour margin (25%--200%) added on topAt 100% margin: buyer pays $0.10, you get $0.10 back

If buyers bring their own keys, the mode doesn't apply -- they pay their API provider directly.

These modes only affect cost-bearing APIs (OpenAI, Twilio, DeepL). Free messaging APIs (Telegram, Slack) have no per-call cost.


Withdrawing Earnings {#withdraw}

Withdraw to USDC (10% exit fee, $10 minimum). Network fees are on us.

WithdrawFeeYou Receive
$100-$10 (10%)$90 USDC

Steps: Click balance in top nav > Withdraw tab > Enter amount > Swap > Confirm transaction.

Why 10% on Exit?

ModelPlatform cut
Traditional platforms30% on every transaction
indie.money10% only when you cash out

Spend earnings inside the platform and you keep virtually everything — with one exception, below.

ScenarioYou getPlatform gets
Convert everything$900$100 (10%)
Convert half$450 + $500 in ecosystem$50
Never convert$1,000$0

Fee-free reinvestment covers workflow purchases, passes, and paying per run at the paywall. Prepaid balances and workflow run budgets are the exception — they're topped up in USDC, so funding those from earnings goes through the 10% conversion.


Calling Other Workflows From Your Workflow {#chained-calls}

Your workflow can call other workflows on indie.money as part of its execution. When it does, you pay the actual consumption of those downstream workflows — not their advertised maximum price.

For example: your workflow signs up to spend at most $0.04 on a downstream workflow. That downstream workflow finishes and only charges $0.02. Your buyers are billed $0.02, not $0.04. The unused $0.02 is refunded automatically, to the wallet that paid for your workflow's run. When a Workflow balance paid for the run, the refund goes to the wallet that holds the workflow, not back into the balance.

External paid services that aren't hosted on indie.money may charge the full authorized amount — only indie.money workflows participate in actual-cost billing with automatic refund of the unused portion.

Only the actual execution and API costs are charged.