FLUX · SDXL · WAN · Qwen · Stable Diffusion

Open source models API
with the meter switched off

Every open-weight model, one endpoint, no meter. Unlimited generations for $149 a month.

Commercial usage rights included · 100% refund within 24 hours · Cancel anytime

$149/month, unlimited open source
15parallel generations
$0.0047per image if you prefer metered
24/7support on the unlimited tier

The unlimited open source plan

Built for the case where per-call pricing stops making sense — batch jobs, user-facing generation at scale, or anything where you'd rather not think about unit cost on every request.

Basic

$21/month
  • 3,250 API calls per billing period
  • 5 concurrent API requests
  • Access to all models
  • Discord and email support
Choose Basic

Standard

$47/month
  • 10,000 API calls per billing period
  • 10 concurrent API requests
  • Access to all models
  • Priority developer support
Choose Standard
Monthly volumeMetered at $0.0047Unlimited at $149Which wins
5,000 images$23.50$149.00Metered
25,000 images$117.50$149.00Metered
32,000 images$150.40$149.00Break-even
100,000 images$470.00$149.00Unlimited
500,000 images$2,350.00$149.00Unlimited

Break-even lands around 32,000 open-source generations a month. Premium partner models are billed separately from wallet balance and are not covered by the unlimited tier.

What "open source" covers

Models with permissive or openly published weights, served on managed infrastructure. All reachable through the same model_id field.

Image

FLUX.1 [schnell] and [dev], SDXL, SD 1.5, Qwen Image, and Z-Image Turbo — plus LoRA adapters and ControlNet conditioning on the same endpoints.

Unlimited tier LoRA ControlNet

Video

WAN and other open-source video models for text-to-video and image-to-video, at the same unlimited plan rather than per-second billing.

Unlimited tier Text & image to video

Audio

Open-source text-to-speech and music generation models. Metered audio starts at $0.001 per character on pay-as-you-go.

Unlimited tier TTS · music

3D

Open-source 3D asset generation at $0.0047 per generation metered, or covered under the unlimited plan.

Unlimited tier Mesh output

One endpoint, any open model

Switching models is a string change. The request and response shape do not move.

curl -X POST "$API_BASE/api/v6/images/text2img" \
  -H "Content-Type: application/json" \
  -d '{
    "key": "YOUR_API_KEY",
    "model_id": "flux-schnell",
    "prompt": "a weathered brass compass on a nautical chart",
    "negative_prompt": "blurry, watermark, text",
    "width": 1024,
    "height": 1024,
    "samples": 1,
    "num_inference_steps": 4,
    "safety_checker": "yes"
  }'
import requests

# every id below is covered by the unlimited open-source plan
OPEN_MODELS = ["flux-schnell", "flux-dev", "sdxl", "sd-1.5"]

def generate(prompt, model_id="flux-schnell"):
    res = requests.post(
        API_BASE + "/api/v6/images/text2img",
        json={
            "key": "YOUR_API_KEY",
            "model_id": model_id,
            "prompt": prompt,
            "width": 1024,
            "height": 1024,
            "num_inference_steps": 4,
            "safety_checker": "yes",
        },
        timeout=120,
    ).json()
    return res["output"]

# no per-call accounting needed on the unlimited plan
for m in OPEN_MODELS:
    print(m, generate("a weathered brass compass", m))
const OPEN_MODELS = ["flux-schnell", "flux-dev", "sdxl", "sd-1.5"];

async function generate(prompt, modelId = "flux-schnell") {
  const res = await fetch(`${API_BASE}/api/v6/images/text2img`, {
    method: "POST",
    headers: { "Content-Type": "application/json" },
    body: JSON.stringify({
      key: process.env.FLUX3_API_KEY,
      model_id: modelId,
      prompt,
      width: 1024,
      height: 1024,
      num_inference_steps: 4,
      safety_checker: "yes",
    }),
  });

  const data = await res.json();
  return data.output;
}

// fan out across models without watching a per-call meter
for (const m of OPEN_MODELS) {
  console.log(m, await generate("a weathered brass compass", m));
}

API_BASE is issued with your API key.

Open weights, without the ops

The weights being downloadable is not the same as them being cheap to run.

Licensing stays clean

FLUX.1 [dev] ships under a non-commercial base license when self-hosted. Generations through the API include commercial usage rights, so the licensing question does not follow your output into production.

Utilisation is the real cost

A rented GPU bills by the hour whether or not it is generating. Bursty workloads spend most of that on idle capacity, which is exactly the case a flat unlimited plan is designed for.

New models without redeploys

New open-source releases appear as additional model_id values. No image rebuilds, no multi-gigabyte weight pulls, no storage planning.

Parallelism is a plan setting

15 parallel generations on the unlimited tier, against priority GPU clusters. Scaling a spike is a billing change rather than an infrastructure project.

Frequently asked

What does "unlimited" actually mean here?

Unlimited generations on open-source models for $149/month, with 15 running in parallel. Throughput is bounded by that concurrency rather than by a call quota — requests beyond 15 queue instead of failing.

At what volume does unlimited beat pay-as-you-go?

Around 32,000 open-source generations a month. Below that, metered at $0.0047 per image is cheaper; above it the flat plan wins, and the gap widens quickly.

Which models are not covered?

Premium partner models — FLUX 2 Pro at $0.054 and Qwen Image 2.0 Pro at $0.075, among others — bill from wallet balance separately. The unlimited tier covers open-weight models only.

Can I use open-source model output commercially?

Yes. Commercial usage rights are included on all plans, which also resolves the non-commercial base license on FLUX.1 [dev].

Can I add teammates?

Yes, team members are included on the Open Source Unlimited plan.

Stop counting generations

Unlimited open-source models, 15 in parallel, $149 a month.

Get the unlimited plan