per-generation$3.16B image + $946M video generation

Per-Generation Billing for Image, Video, and Audio APIs

Monetize every image generated, every video rendered, and every voice clip synthesized. Wrap DALL-E, Stable Diffusion, Runway, ElevenLabs, or any media API.

How it works

TypeScript
import { settlegrid } from '@settlegrid/mcp'
import OpenAI from 'openai'

const sg = settlegrid.init({
  toolSlug: 'my-image-gen',
  pricing: { defaultCostCents: 25 },
})

const openai = new OpenAI()

const billedImageGen = sg.wrap(async (args: { prompt: string; size?: string }) => {
  const response = await openai.images.generate({
    model: 'dall-e-3',
    prompt: args.prompt,
    size: (args.size as '1024x1024') || '1024x1024',
  })
  return { content: [{ type: 'text', text: response.data[0].url! }] }
})

Supported providers

SettleGrid works with any provider. Here are the most common ones for media generation.

ProviderPricing
OpenAI DALL-EImage generation -- $0.04-0.12/image
MidjourneyPremium image gen -- subscription-based
Flux / Stable DiffusionOpen-source image gen -- per-image
Runway Gen-4Video generation -- per-second pricing
ElevenLabsVoice synthesis -- per-character pricing
SunoMusic generation -- per-song pricing
Billing model: per-generation

Why per-generation billing?

Media generation has natural per-unit billing: per image, per video second, per audio character. Each generation has a clear cost tied to compute and model complexity. SettleGrid lets you set rates per generation type and pass through costs with your margin built in.

$3.16B

Total Addressable Market

6

Supported Providers

2 min

Setup Time

Frequently asked questions

Can I charge different rates for different image sizes?
Yes. Use method-level pricing to set different rates for 256x256, 512x512, and 1024x1024 generations. The method name can encode the size, model, or quality level.
How do I handle video generation billing?
For video, use per-second pricing mode. Return the video duration in _meta.durationMs and SettleGrid calculates the charge based on your per-second rate.
What about voice synthesis (text-to-speech)?
Wrap your TTS API call with sg.wrap() and price per-call. For character-based pricing, calculate the character count in your wrapper and return it in _meta for transparent billing.
Can users see the price before generating?
Yes. SettleGrid exposes pricing in the tool discovery API, so agents and users know the cost before they invoke a generation. No surprise bills.

Start billing media generation today

Add per-generation billing to your media generation service in under 2 minutes. No upfront costs, no contracts.

SettleGrid Help

AI-powered support

How can I help?

Ask me anything about SettleGrid