eBay variation pictures: one picture set per color, not per SKU
eBay ties variation photos to one attribute such as Color, with a picture set per value. Plan one Sume image batch per color and keep one hosting type.

How do eBay variation photos work?
On eBay you do not attach a photo to each variation row. You pick one variation-specific name, such as Color, as the classifier, and then give each value of it its own picture set: a set for Blue, a set for Black, a set for Pink. Every blue variation, whatever the size, shows the blue set. That comes from the Picture rules in eBay's Multiple-variation listings guide, read 2026-10-03.
For an image pipeline this changes the unit of work. A listing with 3 colors and 5 sizes is 15 variations but only 3 picture sets, so you generate per color, not per SKU row. With 5 shots in each color set that is 3 x 5 = 15 images, not 15 x 5 = 75.
What limits does eBay put on each set?
eBay's guide says each variation picture set can hold the same maximum number of pictures allowed at the item level for that marketplace and category, and its example cites up to 12 eBay Picture Services pictures. Check the cap for your own marketplace and category before you size a batch.
Hosting matters too. The guide says all pictures in the item-level set and the variation sets must use the same type of picture hosting, either eBay Picture Services or self-hosted pictures, and you cannot mix both in one listing. Sume returns Sume-hosted URLs, so from eBay's side they are self-hosted pictures. If the rest of the listing uses eBay Picture Services, upload your Sume results there too, rather than mixing.
| Rule | What eBay's guide says | What to do in a Sume batch |
|---|---|---|
| Classifier | One variation-specific name (for example Color) associates all variation pictures | Loop over the values of that one attribute |
| Sets | A separate set for each value of the classifier | One request group per color value |
| Max per set | Same maximum as the item level for that marketplace and category; example cites 12 Picture Services pictures | Cap each group at that number |
| Hosting | One type for the whole listing, no mixing | Use the same hosting for item-level and variation pictures |
| Revision | With no purchases and more than 12 hours left you can add or remove pictures and sets; otherwise only add sets and eBay-hosted pictures to existing sets, and sets with self-hosted pictures cannot be modified | Finish all color sets before the listing goes live |
How do I generate one set per color with Sume?
Start from one clean photo of the real product, since eBay's rules are about showing the item itself and your recolors must match the stock you sell. Sume's Image API takes up to 5 images on Ideogram 4.5 in total (the first is edited, up to 4 more are references), and on an edit aspect_ratio: "auto" keeps the source shape; the docs note that omitting the field is not the same as auto.
The request below recolors the base photo for one value of the classifier. Run it once per color, then add the angle shots for that color the same way.
curl -X POST "https://api.sume.com/v1/images" \
-H "Authorization: Bearer $SUME_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "ideogram/ideogram-v4.5",
"prompt": "Same sneaker recolored to blue, white studio sweep, side view",
"aspect_ratio": "auto",
"quality": "medium",
"input_references": [
{"type": "image_url", "image_url": {"url": "https://example.com/sneaker-base.jpg"}}
]
}'What should I check before publishing?
Compare each generated color against a real unit. A generated pink that is a shade off is a returns problem, not an image problem. Then count: sets per classifier value, pictures per set against the cap, and one hosting type across the listing.
Image generation on Sume is billed only when it completes; failed or cancelled generations are not billed, and slow requests can return 202 with a job to poll instead of the image body. Treat each color group as its own retryable unit so one slow color does not block the others.
Sources
Related posts
More in Use cases
- Edit an old Sora download with Gemini Omni: trim to 10 s first
Reuse a saved Sora clip as a Gemini Omni Flash edit source on Sume: cut it to 10 seconds with video trim, then send it as video_url with a short edit prompt.
- Edit one region of an AI image and keep every other pixel
A mask edit is guidance, not a guarantee. Paste the original back outside the mask with Pillow so untouched pixels stay identical. Python with Sume's mask_url.
- Edits assistant: US-only, daily cap, and what Sume covers instead
Edits assistant rolled out Sept 30 2026 to US users with a free daily prompt limit. What Sume docs cover for the media steps, and what they do not.
- Edits beat markers: cut to the beat with Sume Timeline start times
Edits auto-detects beats in your audio. Sume docs describe no beat detection, but a known BPM gives exact cut times for Timeline video slots. Script included.
Written by Sume