hermosodocs

Credits & costs

Everything Hermoso does is priced in one currency: credits. The web Studio, the MCP server and the CLI draw on the same balance at the same rates — there is no separate developer pricing and no per-seat charge for agent access.

Get the price before you spend it

hermoso_capabilities is free and returns the live catalog: every image, video, voice and writing model with its exact credit cost. Video is priced per duration and per resolution, because both change what it costs to render.

hermoso_capabilities    # → model ids, exact per-render credits, aspect ratios, durations
hermoso_credits         # → current balance

Never hard-code a price or a model id. The catalog moves — models are added, retired and repriced — and a number copied into a prompt is wrong the first time a vendor changes theirs. Ask for it; it costs nothing.

A quote cannot disagree with the charge

The quote you are shown and the amount you are billed are computed by the same expression, which is a deliberate property rather than a coincidence. Underneath, a render:

  1. Reserves an estimate before the first provider call, so a balance check can never pass a render the account cannot finish paying for.
  2. Settles the exact cost afterwards, refunding or topping up the difference.

Two consequences worth relying on. If a model is substituted mid-render, you are billed for the model that actually rendered, not the one that was requested — and the substitution is disclosed in the result rather than left for you to find on an invoice. And if a call produces nothing usable, you are not billed for it: an LLM reply that yields no parseable output books our cost as our loss, and the error says so specifically instead of suggesting you try again.

Failure refunds

The rule is charge for delivery, not attempts:

What costs nothing

The whole rule in one sentence, the same one the app, the MCP server and the CLI print: Credits are spent only on two things: running an AI model (image, video, voice, text, planning, post-production) and Ad Spy research. In the Studio chat that includes the chat itself: every reply from the agent runs a model and bills its own cost, and planning or revising a design runs a planning model that bills on top of the reply, before anything renders. Everything else costs no credits on any plan: publishing and scheduling posts, building and managing paid campaigns, analytics and insights, comments and DMs, connectors, profiles and team seats. How many posts is set by the plan, not by credits: the Free plan includes 10 posts a month on up to 3 channels, and every paid plan posts without a limit and runs autopilot. Basic ($9.99 a month) is unlimited posting and Autopilot with no monthly credits: it includes the same 250+ free credits as the Free plan, monthly credits start on Starter, and Autopilot spends credits. Posting an ad you already rendered is never a second charge. The one exception: posting to X (Twitter) and reading X data bill credits per call because the X API charges per request, and a post that contains a link is priced far higher than one without. Managing X ads is free like every other ad platform.

Reading and managing what you already own is free, on purpose — running out of research budget must not take your whole operation offline with it.

The one exception, stated up front

The X API bills per call. X charges us per API request, so posting to X and reading X data (post_to_x included) bill credits per call, including each post in a thread and the separate write that attaches alt text. A post containing a link costs far more than one without: hermoso_credits prints the exact credits per X post, and post_to_x with dryRun: true prices a post before anything goes out. This is the only per-call cost in the product, and the X tile says so before you connect it. It is the X API, not the whole connector: X ads management is free, exactly like Meta, Google, LinkedIn, Microsoft, TikTok, Pinterest, Snapchat and ChatGPT Ads.

What does cost

Generation and research — the things that call a paid vendor on your behalf:

No markup on models

Starter, Pro and Studio include monthly credits and have no markup on models. Basic includes no monthly credits (it includes the same 250+ free credits as the Free plan, monthly credits start on Starter, and Autopilot spends credits). Basic and Free pay standard model prices. The plans are on the pricing page.

Credits stay the only unit: every price hermoso_capabilities and /api/generate/status return is already your price, and each model row also carries standardCredits and memberCredits. billing_status says whether your plan has it (plan.memberRate).

Running out

A call that cannot be paid for answers 402 with a message naming both numbers — what it needs and what you have — rather than just the gap. From inside an agent:

An agent may not charge money on a bare confirm. The quote token binds the exact pack and price that was quoted, so a retried confirmation is idempotent and a confirmation cannot be applied to a charge nobody saw.

Rate limits

Paid renders are limited per verified account, in a 60-second window. The limit is generous for a person and deliberately unfriendly to a script — if you hit it, you are looping faster than a human ever would. It answers 429; back off and retry.