Variant Images on the Milano Theme
Milano theme variant images have the same default behavior as almost every other Shopify theme: when a shopper picks a color, the gallery keeps showing all of them. Pick “Sand,” still see the black, the olive, the rust. Milano is a clean, well-built multipurpose theme, and it handles a lot beautifully. But filtering the product gallery down to one variant’s photos isn’t something it does on its own, because Shopify itself doesn’t give themes a real way to do it.
The good news: this is a solved problem. With Rubik Variant Images, your Milano store can show only the selected variant’s media, add real swatches to the picker, and keep everything fast. No theme code edits. This post walks through why Milano behaves this way and how to fix it.
Milano ships as an OS 2.0 multipurpose theme aimed at fashion, beauty, and home stores. That OS 2.0 part is what matters: app embeds work the standard way, so setup is the same as it is on Dawn. If you came here worried about compatibility, relax. It works.
In this post
- Why Milano shows all variant images at once
- What Shopify gives you natively
- How to filter Milano variant images
- Setup on Milano, step by step
- Swatches on the Milano product page
- Color and size together
- If each color is a separate product
- FAQ
- Related reading
Why Milano shows all variant images at once
Milano theme variant images all show at once because Shopify has no built-in feature to filter a product’s gallery by variant. The product gallery is a single media list attached to the product, not to each variant. So Milano, like Dawn, renders the whole list. It has no instruction that says “hide everything except Sand when Sand is selected.”
Some themes hack around this with a featured-image swap. Shopify lets you set one image per variant, and a theme can swap the main image when the picker changes. But that’s one image. Not the front, back, detail, and on-model shots a real product page needs. The rest of the gallery still shows every color mixed together.
Does this actually cost you sales? We think so, and merchants tell us the same. A shopper who selects Sand and then scrolls past three black photos starts to doubt they picked the right thing. That hesitation shows up as “is this the right color?” support tickets and as returns. One of our reviewers put it well: filtering the gallery “noticeably reduced the ‘Is this the right color?’ support queries.” That’s the whole point.
What Shopify gives you natively
Natively, Shopify gives you exactly one thing here: a single featured image per variant. Set it in the product admin, and the theme can swap the main image on selection. That’s the ceiling.
What it doesn’t give you: multiple images per variant, video or 3D per variant, gallery filtering that hides the other colors, or a way to share one size-chart image across all colors without duplicating it. For a Milano fashion store with five colors and four photos each, native Shopify just isn’t built for it. You need a layer on top.
How to filter Milano variant images
Rubik Variant Images watches Milano’s variant picker and filters the gallery to show only the selected variant’s media. It assigns multiple images, plus videos and 3D models, to each variant. It reads variant data from metafields and renders in Shadow DOM, so its styling stays isolated from Milano’s CSS and survives theme updates. No external API call. It loads with the page.
One detail Milano stores care about: you can mark an image as shared across all variants. So your size chart, your fabric-care card, your brand banner, those stay visible no matter which color is selected. You assign them once instead of uploading a copy per color, which keeps your media library lean and your page light.

Setup on Milano, step by step
- Install the app, then open Online Store, Customize on Milano, and turn on the Rubik Variant Images app embed under App embeds. Save.
- Assign images to each variant. Drag and drop by hand, or use AI auto-assign, which reads the product title, option values, filename, alt text, and the image itself to sort them for you.
- Got hundreds of products? Use bulk assign. It groups images by gallery order in the background, no manual sorting.
- Open a Milano product page and click through the colors. The gallery now filters to the selected variant.
Want to confirm your setup before going live? Run your store through the free variant image checker, and if you’re planning how many images each variant should carry, the variant image calculator helps you budget against the 250-image-per-product limit.
Swatches on the Milano product page
While you’re in there, swap Milano’s color dropdown for real swatches. The app renders image swatches, color swatches, and pill buttons, and you can mix types per option (color as swatches, size as pills). On a visual theme like Milano, that’s a meaningful upgrade. Shoppers see the colors instead of reading them.
Because the swatches live in Shadow DOM, they keep their look regardless of Milano’s stylesheet, and a theme update won’t break them. Preview shapes and sizes first with the free swatch preview tool, then fine-tune with the 100+ CSS variables in the visual editor. For the full design rundown, see our swatch design guide.
“This app is an absolute lifesaver! It’s incredibly easy to use, and it completely eliminated the usual headaches of sizing and color selection. The process is smooth, intuitive, and hassle-free. On top of that, the support team is fantastic, helpful, responsive, and genuinely committed to making things smooth. Highly recommend.”
Koazzi, US, February 2025, Rubik Variant Images on the Shopify App Store
Color and size together
Plenty of Milano stores run color and size on the same product. The app handles multi-option products: assign media per combination, so picking “Sand” and “Large” shows the right photos for that exact pairing. If you only assign images at the color level, size selection won’t disturb them. You decide how granular to get. Our guide to multi-option variant images covers the patterns.
And if your catalog is bumping into Shopify’s variant ceiling, that’s a different conversation. Craftshift has a solid breakdown of the 2026 Shopify variant limit if you need it.
If each color is a separate product
Some Milano stores split colors into separate products for SEO (each color gets its own URL and indexable images). If that’s your setup, gallery filtering isn’t the tool, because there are no variants to filter. You want to link those products and show swatches that jump between them.
That’s combined listings. Our sister app covers it on the same theme: read combined listings on the Milano theme. A lot of stores run both: combined listings to group the colors, variant images to filter the photos within each one.
See it live in the demo store, watch the tutorial video, or read the getting started docs.
Frequently asked questions
Does Rubik Variant Images work with the Milano theme?
Yes. Milano is an OS 2.0 theme and supports app embeds, so setup is the same as on Dawn, with no theme code edits. The app supports 350+ themes and page builders.
Why does Milano show all colors in the gallery?
Because Shopify attaches the gallery to the product, not to each variant, and has no native filtering. Milano renders the whole media list. An app that hooks the variant picker is what filters it down to the selected variant.
Can I show more than one image per variant on Milano?
Yes. Shopify natively allows one featured image per variant. The app lets you assign multiple images, videos, and 3D models per variant, and filters the gallery to show only that variant’s media.
Will it slow down my Milano store?
No. The app is metafield-based with no external API calls. It loads with the page instead of fetching from a separate server, so it doesn’t add a network round trip.
Do swatches survive a Milano theme update?
Yes. Swatches and variant data live in the app and in metafields, not in the theme code, and render in an isolated Shadow DOM scope. A Milano update doesn’t touch them.




