Introduction
Flux 2 from Black Forest Labs is one of the most widely adopted open-weight AI image generation models in 2026. Its three-tier family — Schnell, Dev, and Pro — serves everything from real-time previews to commercial photography-grade output. But adoption brings questions, and the same ones come up repeatedly: What can I legally do with each tier? How do I fine-tune a LoRA? What GPU do I actually need? What are the API rate limits?
This FAQ compiles definitive answers to the most common questions about Flux 2 Pro and Dev, organized by topic. Bookmark it — you’ll come back.
Licensing
What license does each Flux 2 tier use?
The three Flux 2 tiers have different licenses with different commercial implications:
| Tier | License | Commercial Use | Self-Hosting | Fine-Tuning |
|---|---|---|---|---|
| Flux 2 Schnell | Apache 2.0 | ✅ Fully permitted | ✅ Unrestricted | ✅ Unrestricted |
| Flux 2 Dev | FLUX.1 [dev] Non-Commercial License | ❌ Requires separate commercial license | ✅ For non-commercial use | ✅ For non-commercial use |
| Flux 2 Pro | Proprietary (API access) | ✅ Via BFL API or commercial agreement | ⚠️ Requires enterprise license | ✅ Via BFL platform or enterprise agreement |
Can I use Flux 2 Dev commercially?
Not under the default license. Flux 2 Dev’s weights are distributed under a non-commercial license. To use Dev commercially, you must either:
- Use the BFL API — Images generated through Black Forest Labs’ official API are licensed for commercial use
- Obtain a commercial license — Contact BFL directly for a self-hosting commercial license
- Use a licensed provider — Some third-party API providers (Replicate, fal.ai, Together AI) include commercial usage rights in their terms of service because they hold commercial agreements with BFL
Can I use Flux 2 Schnell commercially?
Yes, without restriction. Schnell uses the Apache 2.0 license, which permits commercial use, modification, and redistribution. You can self-host it, fine-tune it, and sell products built on it with no licensing fees or agreements required.
Do I own the images I generate with Flux 2?
This depends on the tier and access method:
- Schnell (self-hosted): You own the outputs with no restrictions
- Dev (via BFL API or licensed provider): You receive a commercial license to use the generated images; specific ownership terms are defined in BFL’s Terms of Service
- Pro (via BFL API): Same as Dev — commercial usage rights granted under BFL’s ToS
Important note: AI-generated image copyright law remains unsettled in most jurisdictions. While you have usage rights, full copyright ownership of AI-generated images is not guaranteed under current US or EU law.
Can I distribute or share Flux 2 model weights?
- Schnell: Yes, under Apache 2.0 terms (include license notice)
- Dev: Yes, under the non-commercial license terms (must retain the license file, recipients bound by same terms)
- Pro: No — Pro weights are not publicly distributed
LoRA Fine-Tuning
What is LoRA fine-tuning and why does it matter for Flux?
LoRA (Low-Rank Adaptation) is a technique for customizing a foundation model by training a small set of additional parameters rather than modifying the full model. For Flux 2, LoRA fine-tuning allows you to:
- Teach new visual concepts — Specific products, characters, or brand aesthetics
- Encode artistic styles — Particular illustration approaches, color palettes, or compositional preferences
- Improve domain performance — Better results for niche subjects (architecture, fashion, medical imagery, etc.)
A trained LoRA file is typically 50-200 MB and can be loaded alongside the base model at inference time without modifying the original weights.
How do I train a LoRA on Flux 2?
The standard workflow using Hugging Face Diffusers:
- Prepare training data — 20-50 high-quality images representing the concept you want to teach
- Write captions — Each image needs a text caption describing it; include a unique trigger word (e.g., “in the style of [trigger]”)
- Configure training — Set learning rate (typically 1e-4 to 5e-4), training steps (500-2000), and LoRA rank (typically 16-64)
- Run training — Execute the training script on a GPU with sufficient VRAM
- Test and iterate — Generate images using the trigger word and evaluate quality
What hardware do I need to train a Flux LoRA?
| Configuration | VRAM | Training Time (1000 steps) | Notes |
|---|---|---|---|
| Minimum | 24 GB (RTX 4090 / A10G) | 45-90 minutes | fp16 training, batch size 1 |
| Recommended | 40 GB (A100 40GB) | 30-60 minutes | Standard training, batch size 2-4 |
| Optimal | 80 GB (A100 80GB / H100) | 15-30 minutes | Larger batch size, faster convergence |
Cost estimate for cloud-based LoRA training:
- Lambda Labs A100: ~$1.10/hr → ~$0.55-1.10 per LoRA
- AWS g5.2xlarge (A10G): ~$1.21/hr → ~$1.00-1.80 per LoRA
- RunPod A100 (40GB): ~$1.64/hr → ~$0.80-1.60 per LoRA
How many images do I need to train a good LoRA?
| Use Case | Recommended Images | Quality Requirements |
|---|---|---|
| Product LoRA | 20-30 | Consistent lighting, white/neutral backgrounds, multiple angles |
| Style LoRA | 30-50 | Diverse subjects in the target style, high resolution |
| Character LoRA | 15-25 | Multiple angles, expressions, lighting conditions |
| Brand aesthetic LoRA | 40-60 | Representative portfolio of brand imagery |
Quality matters more than quantity. Ten excellent images will produce a better LoRA than fifty mediocre ones. Aim for consistent, high-resolution images that clearly represent the concept.
Can I stack multiple LoRAs?
Yes. Flux 2 supports loading multiple LoRAs simultaneously with adjustable weights. Practical guidelines:
- 2-3 LoRAs: Reliable, minimal quality degradation
- 4-5 LoRAs: Possible but requires careful weight balancing (keep total combined weight under 1.5)
- 6+ LoRAs: Not recommended — quality degrades and interference between LoRAs becomes unpredictable
Common stacking pattern: Brand style LoRA (weight 0.7) + Product LoRA (weight 0.8) + Lighting LoRA (weight 0.4)
Does LoRA fine-tuning change the licensing?
No. A LoRA trained on Flux 2 Dev is still bound by Dev’s license. A LoRA trained on Flux 2 Schnell inherits Schnell’s Apache 2.0 license. The LoRA weights themselves are your property, but they can only be used with a base model under that model’s license terms.
API Rate Limits
What are the rate limits for the BFL official API?
Black Forest Labs applies tier-based rate limits:
| Plan | Requests per Minute (RPM) | Requests per Day (RPD) | Concurrent Requests |
|---|---|---|---|
| Free | 5 | 100 | 2 |
| Starter | 20 | 2,000 | 5 |
| Growth | 60 | 20,000 | 15 |
| Enterprise | Custom | Custom | Custom |
What are rate limits on third-party providers?
| Provider | Default RPM | Max Concurrent | Burst Handling |
|---|---|---|---|
| Replicate | 60 | 10 | Queue-based, auto-scales |
| fal.ai | 100 | 20 | Serverless, auto-scales |
| Together AI | 60 | 10 | Queue-based |
| RunPod Serverless | Hardware-limited | Hardware-limited | Auto-scaling with cold starts |
How do I handle rate limits in production?
Best practices for rate-limit-resilient architectures:
- Request queuing — Buffer incoming requests and process them within rate limits
- Multi-provider failover — Route to a backup provider when primary hits limits
- Exponential backoff — Retry rate-limited requests with increasing delays
- Priority scheduling — Prioritize paid/premium user requests over free-tier
- Pre-generation — Generate commonly-needed images during off-peak hours and cache results
Self-Hosting Hardware Requirements
What GPU do I need to run Flux 2?
| Tier | Minimum VRAM | Recommended VRAM | Consumer GPU Option | Cloud GPU Option |
|---|---|---|---|---|
| Schnell (fp16) | 12 GB | 16 GB | RTX 3060 12GB | T4 (16GB) |
| Schnell (fp8/quantized) | 8 GB | 12 GB | RTX 3060 8GB | T4 (16GB) |
| Dev (fp16) | 24 GB | 40 GB | RTX 4090 | A100 (40GB) |
| Dev (fp8/quantized) | 12 GB | 16 GB | RTX 4070 Ti 16GB | A10G (24GB) |
| Pro (fp16) | 24 GB | 40 GB | RTX 4090 | A100 (40GB) |
| Pro (optimized) | 16 GB | 24 GB | RTX 4090 | A10G (24GB) |
What throughput can I expect?
Images per minute at 1024x1024 resolution, default steps:
| GPU | Schnell | Dev (28 steps) | Pro (35 steps) |
|---|---|---|---|
| RTX 4090 (24GB) | 40-60 | 8-12 | 6-8 |
| A10G (24GB) | 30-45 | 6-10 | 4-7 |
| A100 (40GB) | 60-90 | 12-18 | 8-14 |
| A100 (80GB) | 70-100 | 15-22 | 10-16 |
| H100 (80GB) | 100-150 | 20-35 | 15-25 |
What else do I need besides a GPU?
| Component | Minimum | Recommended |
|---|---|---|
| RAM | 32 GB | 64 GB |
| CPU | 8 cores | 16+ cores |
| Storage | 100 GB SSD | 500 GB NVMe SSD |
| Network | 1 Gbps | 10 Gbps (for serving images) |
| OS | Ubuntu 22.04+ / RHEL 9+ | Ubuntu 22.04 LTS |
| CUDA | 12.1+ | 12.4+ |
| Python | 3.10+ | 3.11 |
How does Flux 2 self-hosting compare to Stable Diffusion 3.5?
| Factor | Flux 2 Dev | SD 3.5 Large | SD 3.5 Medium |
|---|---|---|---|
| Minimum VRAM (fp16) | 24 GB | 18 GB | 12 GB |
| Quantized VRAM | 12 GB | 10 GB | 8 GB |
| Consumer GPU viable | RTX 4090 only | RTX 4090/3090 | RTX 3060+ |
| Speed (A100, 1024px) | ~4.5s | ~5.2s | ~3.1s |
| Photorealism quality | Higher | Good | Moderate |
| Text rendering | Strong | Moderate | Moderate |
| LoRA ecosystem size | Growing fast | Largest | Large |
| Setup complexity | Moderate | Low | Low |
Bottom line: SD 3.5 Medium is the most hardware-accessible option. Flux 2 Dev delivers higher quality but requires more powerful (and expensive) hardware. For organizations with A100-class GPUs, Flux 2 is the quality leader. For those constrained to consumer hardware, SD 3.5 Medium is often the practical choice.
Commercial Use
Can I build and sell a SaaS product using Flux 2?
Yes, with the right tier and licensing:
- Schnell: Build anything you want, no restrictions (Apache 2.0)
- Dev: Only via BFL’s API or with a commercial license agreement
- Pro: Only via BFL’s API or with an enterprise agreement
Most SaaS companies use a combination: Schnell for free-tier features, Dev/Pro via API for paid features.
Do I need to disclose that images were AI-generated?
Flux’s license does not require disclosure, but:
- Some jurisdictions are introducing AI content labeling laws (EU AI Act, various US state laws)
- Some platforms (stock photo sites, social media) have their own disclosure requirements
- Industry best practice is moving toward voluntary disclosure
Can I use Flux-generated images in training data for other models?
- Schnell: Yes — Apache 2.0 places no restrictions on use of outputs
- Dev/Pro (via API): Check BFL’s current Terms of Service — using API outputs for training competing models may be restricted
What about content restrictions?
Flux 2 itself has no built-in content filtering when self-hosted. You are responsible for:
- Implementing your own content moderation pipeline
- Complying with applicable laws regarding generated content
- Preventing misuse (deepfakes, harmful content, CSAM)
BFL’s API does apply content filtering on their hosted endpoints.
Quick Reference Summary
| Question | Schnell | Dev | Pro |
|---|---|---|---|
| Commercial use? | ✅ Free | ⚠️ Needs license/API | ⚠️ Needs API/enterprise |
| Self-host? | ✅ Anyone | ✅ Non-commercial | ⚠️ Enterprise only |
| LoRA training? | ✅ Unrestricted | ✅ (license carries) | ⚠️ Via BFL platform |
| Minimum GPU? | 8-12 GB | 12-24 GB | 16-24 GB |
| API cost/image? | $0.002-0.003 | $0.02-0.03 | $0.04-0.06 |
| Best for? | Previews, free tiers | Most production apps | Premium features |
References
- Black Forest Labs — Official Website
- Black Forest Labs — API Documentation
- Flux Model Cards — Hugging Face
- FLUX.1 [dev] License — Hugging Face
- Apache License 2.0 — Full Text
- Hugging Face Diffusers — LoRA Training Guide
- Civitai — Flux LoRA Community
- Replicate — Flux Model Hosting
- fal.ai — Flux Inference API
- Together AI — Flux API Access
- Lambda Labs — GPU Cloud Pricing
- NVIDIA — Data Center GPU Specifications