RivermarkRivermark
Core concepts

Costs and limits

Usage-based pricing and the cost field.

The Rivermark API is billed on usage. Behind the scenes, for each request, the agent reads files, loads webpages, creates or edits design files, performs self-review and self-correction, and repeats until conditions are satisfied. You pay for that work.

The cost field

Every response includes a cost field — a floating-point number in US dollars, the exact cost of that call:

Cost in the response
{
  "design_id": "rmd_cj4hbqz2w0003mz6x7p9q2xe",
  "output": [ … ],
  "cost": 0.08
}

This makes it trivial to implement per-user billing, margin tracking, or spend analytics — you always know exactly what each request cost.

What determines cost

Three things, roughly in order of impact:

  1. The amount of work — creating a new design costs more than editing one; more frames cost more than fewer.
  2. The size of references — a large zip archive takes more reading than a single image.
  3. The complexity of the request — ambiguous or open-ended tasks take more exploration than mechanical ones.

During the beta, automated rendering, webpage fetches, and design storage are provided free of charge — cost covers agent work only.

Typical costs

Prices are very approximate

These are rough orientation numbers. Actual costs vary based on the specifics of each request — reference sizes, task complexity, and how much exploration the agent needs. Check the cost field on real requests for your use case, and talk to us for an estimate at volume.

Task typeTypical costVariability
Create a new design based on brand and user input$0.10medium
Apply a single round of arbitrary user feedback$0.05high
Apply provided copy to a previously approved design and render$0.02low
Create 3 options for a design based on brand and user input$0.25high
Resize a design for a new format$0.05medium*
Extract a brand kit from a website and image attachment$0.75medium
Extract a brand kit from a large .zip with guidelines and references$1.50high

* Usually low; if a resize requires significant reflow, the agent may perform multiple rounds of adjustment.

This is why the architecture of your integration matters: extract brands once, create templates rarely, and fill them often. The guides are structured around exactly this economics.

Rate limits

Limits are per-organization and exist to protect the platform from runaway loops, not to constrain real workloads. Concurrent request limits are configurable from the API dashboard.

When you hit a limit you'll receive 429 with a retry_after hint in the error message. Retry with exponential backoff — see Errors.

On this page