Ecommerce is one of the clearest wins for self-hosted SDXL. You need hundreds to thousands of on-brand product shots, often the same product in multiple poses, backgrounds or seasonal themes. A studio shoot costs £1,500-£3,000 per day. Midjourney’s API starts at roughly £0.03 per image and gives you almost no control over brand identity. SDXL on a dedicated GPU gets you brand-consistent output at £0.0005-£0.002 per image, with full control. This piece covers the realistic GPU sizing, the LoRA and ControlNet stack, and the maths. For hardware, see dedicated GPU hosting.
Contents
- Why SDXL for product images
- Batch throughput by GPU
- LoRA for brand styles
- ControlNet for pose consistency
- VRAM budget
- Cost per image vs Midjourney API
Why SDXL for product images
SDXL 1.0 with a product-trained LoRA and a SAM-based background mask can produce commercially usable ecommerce imagery. The workflow is repeatable, seed-stable, and every output is owned outright – no third-party API TOS to navigate. The typical pipeline is: upload reference photo, segment product with SAM, composite onto fresh background generated by SDXL, apply brand LoRA for consistent look, run 30-step DPM++ 2M at 1024×1024 or 1216×832 (ecommerce ratio).
Batch throughput by GPU
| GPU | VRAM | 1024×1024 imgs/hr | Batch-4 imgs/hr |
|---|---|---|---|
| RTX 3060 12GB | 12 GB | 600 | 720 (OOM risk) |
| RTX 5060 Ti 16GB | 16 GB | 1,058 | 1,720 |
| RTX 3090 24GB | 24 GB | 1,285 | 2,150 |
| RTX 5080 16GB | 16 GB | 1,636 | 2,600 |
| RTX 5090 32GB | 32 GB | 2,000 | 4,800 |
| RTX 6000 Pro 96GB | 96 GB | 2,400 | 9,000 |
At batch 4 on an RTX 5060 Ti, you can produce about 40,000 product images per day before the card hits thermal throttling. See the SDXL benchmark and image-generation studio guide for the full methodology.
LoRA for brand styles
A brand LoRA is 20-40 training images, 1,500-3,000 steps, DreamBooth-LoRA on SDXL UNet. The LoRA itself is 150-250 MB and can be swapped at inference time. A typical brand has three LoRAs: a product-look LoRA, a lifestyle LoRA and a seasonal LoRA. You can stack two at generation time with a weight slider (<lora:brand:0.8> <lora:autumn:0.4>).
| LoRA type | Training images | Steps | Training time on 5060 Ti |
|---|---|---|---|
| Product look | 25 | 2,000 | ~45 min |
| Lifestyle scene | 40 | 3,000 | ~75 min |
| Seasonal theme | 30 | 2,000 | ~55 min |
ControlNet for pose consistency
Ecommerce often needs the same product in three poses: hero shot, side angle, and in-use. ControlNet’s OpenPose and Depth variants let you lock pose while changing background and lighting. Running ControlNet adds roughly 25% to generation time and 1.5 GB VRAM. IP-Adapter Plus keeps the product shape consistent across variations without retraining the LoRA.
VRAM budget for the full stack
| Component | VRAM |
|---|---|
| SDXL base + refiner FP16 | 8.5 GB |
| 2x LoRA | 0.4 GB |
| ControlNet (Depth) | 1.5 GB |
| IP-Adapter Plus | 0.7 GB |
| SAM-HQ segmentation | 2.2 GB |
| Activations @ batch 4 | 3 GB |
| Total peak | ~16 GB |
16 GB is therefore the practical floor. The 5060 Ti 16GB or 5080 16GB are the cleanest budget and mid-tier picks. Above that, the 5090 buys you batch size.
Cost per image vs Midjourney API
Assume an RTX 5060 Ti dedicated server at £325/mo, 70% utilisation, batch 4.
| Source | Cost / image | Brand control | Latency |
|---|---|---|---|
| Midjourney API | £0.030 | Low | ~15 s |
| OpenAI gpt-image-1 | £0.025 | Medium | ~10 s |
| SDXL on RTX 5060 Ti | £0.0014 | Full (LoRA) | 3.4 s |
| SDXL on RTX 5090 | £0.00086 | Full | 1.8 s |
| SDXL on RTX 6000 Pro | £0.00058 | Full, big batch | 1.5 s |
At 50,000 images per month the 5060 Ti saves roughly £1,430 vs Midjourney; at 500,000 the saving is £14,300. The break-even is at about 11,500 images per month.
Self-host your product-image pipeline
Dedicated GPUs, UK-hosted, brand-LoRA friendly. UK dedicated hosting.
Browse GPU ServersSee also: Best GPU for SDXL, 5060 Ti SDXL benchmark, image-generation studio, Flux Schnell benchmark, 5060 Ti to 5090 upgrade.