Generate Professional Product Photos with AI (No Studio Needed)
After this runbook, you will have 10+ studio-quality product photos generated from a single smartphone shot, ready to upload to your Shopify store.
Before you start
- Required A smartphone photo of your product on a plain (white or grey) background
- Required Midjourney account — Basic plan ($10/month) Start Midjourney Basic
- Optional Adobe Firefly account — free tier is enough Sign up for Firefly
- Required Discord account (Midjourney runs inside Discord)
Most sellers spend $200–$800 per product on a photographer for the first batch — and then can’t afford to iterate when they tweak packaging or want seasonal variants.
This runbook gets you to good enough to launch for the cost of a Midjourney subscription. Once you know which SKUs actually sell, that’s when you invest in a real shoot for your top 3.
The workflow 6 steps
-
Prep your source photo
Photograph your product against a white or light grey wall in natural daylight. Shoot at minimum 1200×1200px. The subject should fill at least 60% of the frame.
Midjourney's image-to-image mode needs a clean subject to isolate. A cluttered background forces the model to guess where your product ends — and it guesses wrong 40% of the time. This single step determines 80% of output quality.
Avoid hard shadows crossing the product face. If you can't avoid them, shoot outside on an overcast day.
-
Upload your photo to Midjourney via Discord
MidjourneyIn Discord, open the Midjourney bot DM or a /imagine channel. Drag your image into the message field and send it alone (no text). Right-click the uploaded image → 'Copy Link'.
Midjourney needs a hosted URL, not a local file path, in its /imagine prompt. The URL from the Discord-uploaded image is what you paste into step 3. Skipping this means the model has no visual reference and generates a generic product.
-
Build the product shot prompt
MidjourneyRun: /imagine [PASTE-YOUR-IMAGE-URL] professional product photography, studio white background, soft box lighting, 85mm lens, shallow depth of field, commercial grade --iw 2 --ar 1:1 --v 6.1
--iw 2 sets image weight to the maximum (2.0), telling the model your photo is the dominant input. Without it, Midjourney treats your image as a loose style hint and invents a product that looks vaguely like yours. --v 6.1 is the highest-quality current model.
-
Select and upscale the best variation
MidjourneyFrom the 4 outputs grid, click U1–U4 on the best result. Then click 'Upscale (2x)' in the follow-up panel.
The initial 2×2 grid outputs are at 1024px. The 2x upscale brings you to 2048px — the minimum Shopify needs for zoom to look sharp on retina displays. Uploading without upscaling means blurry zoom, which kills trust at the decision moment.
-
Clean the background in Adobe Firefly
Adobe FireflyUpload your upscaled image to firefly.adobe.com → Generative Fill → select the background → hit Delete (leave empty for clean white, or type a scene description like 'marble countertop').
Even with --iw 2, Midjourney occasionally places your product in a slightly off-brand scene. Firefly's background removal is the most accurate free tool for product edges — it handles glass, fabric, and fine detail better than remove.bg at this scale.
-
Export PNG and upload to Shopify
ShopifyDownload as PNG (preserves transparency if you removed the background). In Shopify Admin → Products → your product → drag images into the media zone. Set alt text: '[Product Name] — [key feature]'.
PNG preserves transparent background for any color-shifted banner you place it on later. JPEG locks you into the current background color forever. The alt text is not optional — Google Images is a real ecommerce traffic source and Shopify's own SEO checklist flags missing alt text.