Vodmill docs
v1.0.0
Get help
● Set up · Monetization

Plans and credits
what you sell, and what each action costs.

Customers spend credits on analysis, rendering and the smaller AI actions. You decide the credit price of every action, the plans people subscribe to and the credit packs they top up with. Payments go to your own Stripe account.

CreditsPlansCredit packsStripe

01Credits

Every paid action costs a workspace credits. The price is shown before anything runs. A failed or canceled step returns its credits automatically (src/server/jobs.ts). Set the prices in the console, Money, Credits (0 makes an action free, the highest value is 1000):

ActionSetting keyDefault
Transcribe one minute of source videocredits.transcribeMinute1
Pick moments with AI in one minute of source video (free with the workspace's own AI key)credits.momentsMinute1
Render one clip in one aspect ratiocredits.render2
New titles and hooks for a clipcredits.retitle1
Post texts for a clip (TikTok, Shorts, Reels, X)credits.socialCopy1
Complete-thought check of a clipcredits.checkThought1

With the defaults, analysing a 60-minute source with AI costs 120 credits, and rendering one clip in 9:16 and 1:1 costs 4. Uploading, bringing a video in from a link, editing, cutting pauses and moving a cut to a sentence boundary are free.

Price your credits against your costs

Each analysed minute costs you money at your transcription provider and at Anthropic; each render costs you CPU time. Look at the console's AI usage page and your providers' dashboards after a few test sources, then set credit prices and pack prices that cover them.

02Where credits come from

  • Monthly credits of the workspace's plan, added each time Stripe reports a paid invoice.
  • Credit packs a workspace buys.
  • Welcome credits for a new self-serve workspace (Product, Access).
  • You: console, Workspaces, the credits action on a row adds or removes credits with a reason the workspace sees in its credit history.

03Plans

Console page Plans. A plan sets what a workspace may do:

FieldMeaning
Name, price per month, currency, Stripe price idWhat Stripe charges. Create a recurring price in Stripe and paste its price_… id. A free plan needs none.
Credits per monthAdded on every paid invoice
Longest source video (minutes)Default 60, up to 1440
Source minutes analysed per monthDefault 300; 0 means no limit
Storage for sources and renders in GBDefault 10; 0 means no limit. Counts source videos, renders and uploads together.
60 fps rendersAlso needs "Allow 60 fps renders" under System, Rendering
No watermarkRemoves the watermark text set under System, Rendering
Import from a linkAlso needs imports switched on (Imports)
Create campaignsLets the workspace post campaigns (Campaigns). Joining campaigns as a clipper needs no plan limit.
Posts published or scheduled per monthDefault 0, which means no limit (Publishing)
REST API and webhooksAPI v1; also needs the API turned on under System, Public API
Queue priority (higher goes first)Order in the render and analysis queues
Order on the pricing pageSort order customers see
Free plan (for sign-ups)New self-serve workspaces start on it
ActiveInactive plans stay on existing workspaces but cannot be chosen

A new install has one plan, Free, with no monthly credits and every limit at its default: 60-minute sources, 300 minutes a month, 10 GB, no 60 fps, watermark kept, no import from a link, no campaigns. Change it to what you want to give away.

Customers see their plan, the comparison and the credit packs on the app's Plan and credits page. Workspace owners change the plan there.

04Credit packs

Console page Credit packs: one-time top-ups a workspace can buy when its monthly credits run out. Each pack has a name, a number of credits, a price of at least 0.50 with a three-letter currency code (for example usd or eur), and an active switch. Stripe Checkout charges it; no Stripe price id is needed.

05Turn selling on

  1. Stripe key Paste the secret key under System, Integrations.
  2. Webhook Add the endpoint and its signing secret (Stripe webhook).
  3. Plans and packs Create them, with Stripe price ids on the paid plans.
  4. Switch Money, Customer billing, "Sell plans and credit packs". The same section has "Name on receipts" and "Customers can enter promotion codes at checkout".
  5. Test With Stripe test keys first: buy a credit pack with Stripe's test card and check the workspace's credits on the console's Workspaces page.

Without online payments you can still set any workspace's plan by hand on the Workspaces page, for example for clients you invoice yourself. The app then tells customers that plans are handled by the people who run the service.

Revenue figures

The console's Revenue page counts payments recorded by the Stripe webhook, in two sources: plan subscriptions and credit packs. It shows what happened on your server, never an estimate. Campaign commission is not part of it: that is a figure in the campaign ledger (Commission).