Skip to content
5.0 Upwork, 100+ reviews Adobe Certified since 2021 New: become your own Magento developer Learn more →
Industry · Fashion + apparel

Magento for fashion brands: sizes, swatches, seasons and returns

When I build Magento for fashion brands, the homepage is rarely what takes the time. The catalog is: one dress in six colours and eight sizes is 48 products, and the photos have to change when the colour does. Then there are returns, because people order two sizes and send one back. And every season the range turns over, so last season needs somewhere to go. Below are the parts of a clothing store I spend real hours on.

  • Colour and size swatches, with photos that follow the chosen colour
  • Size charts tied to a brand or fit, not one chart for the whole store
  • Returns and exchanges that put stock back where it belongs
Adobe Certified Magento developer since 2021 Freelance, so you deal with me directly
Why clothing is different

What makes clothing harder to sell online than it looks

A t-shirt brand with twelve products can run on almost any platform. These four start to hurt once the range grows, so I look at them before picking a theme or a single extension.

  • Variants One dress is dozens of SKUs

    A dress in six colours and eight sizes is 48 simple products behind one configurable page. Each has its own stock count and often its own barcode. Magento copes with that fine. The trouble starts when attributes, the import sheet and the photo file names are not agreed before the first catalog load, because cleaning them up afterwards takes weeks.

  • Returns People order two sizes and keep one

    Clothing comes back more often than most products, and usually for fit. Magento Open Source has no returns module: you get credit memos and nothing more. Adobe Commerce adds Returns (RMA) and store credit. On Open Source I connect a returns service or an extension, so a return triggers the right refund and the item lands back in stock.

  • Seasons The range turns over every few months

    New collections go live, last season moves to sale, and old styles have to leave without breaking pages Google already ranks. Special prices in Magento already take start and end dates. Making a whole collection appear at 9am on a Thursday is an Adobe Commerce staging feature; on Open Source it takes a small scheduled job.

  • Wholesale Stockists expect their own prices

    Plenty of labels sell to boutiques as well as direct. Customer groups, tier prices and group-specific price rules cover the basics in any Magento edition. Hiding the trade range from the public, minimum quantities per style and line sheets need an extension on Open Source, or Adobe Commerce B2B with its shared catalogs.

What gets built

The Magento setup I use for an apparel catalog

Most of the build time on a clothing store goes into these six areas. Some are admin settings, some need an extension, and one or two need code. I mark which is which.

  • Swatches, and photos for every colour

    Colour becomes a visual swatch and size a text swatch. The photos sit on each colour’s child products, so clicking navy swaps the gallery to navy. Magento does this natively once the images are on the right products. Most of my time here goes into the import: one row per size and colour, consistent option names, and a photo naming rule the studio can actually follow.

  • Size charts that match the label

    Magento has no size chart feature, and a 10 at one label is a 12 at another. One chart for the whole store just produces returns. I keep each chart in a CMS block and link it by an attribute such as brand, fit or product type, and add garment measurements as attributes when you have them. Option labels can differ per store view, so one SKU can read UK 10 on the UK site and EU 38 on the European one.

  • Launches, sale and end of season

    The “new in” list runs off Magento’s “Set Product as New” dates, special prices get start and end dates, and catalog price rules run the sale. When a style is gone for good I disable it and redirect its URL to the nearest category rather than leave a dead page. Adobe Commerce lets you preview a full launch through content staging. On Open Source I script the switch and run it on staging first.

  • Exchanges before refunds

    Plenty of fit returns are really exchanges: same dress, one size up. I set the returns flow so the customer chooses the new size first, and the refund only happens if that size is sold out. On Open Source that comes from a returns platform or an extension; on Adobe Commerce I build on the native Returns module. Returned items go back to the right source in Multi-Source Inventory once the warehouse has checked them.

  • Wholesale on the same store

    Trade buyers get their own customer group, with tier prices or a price rule for their discount, and see those prices once they log in. Paying on account works through the Purchase Order method that ships with Magento. Hidden trade categories, minimum quantities per style and a quick order form come from Adobe Commerce B2B or from extensions. Stock is shared, so we agree up front whether wholesale orders may take the last units.

  • Selling in more than one country

    Each country can be a store view or a website with its own currency, language and tax display. EU shoppers expect prices with VAT included, US shoppers expect tax added at checkout, and one Magento admin handles both. Since December 2024 the EU General Product Safety Regulation also wants online listings to name the manufacturer and, when the manufacturer is outside the EU, a responsible person inside it. I add those as product attributes instead of pasting them into descriptions.

  • Questions before you start?Read the answers →
Decision shortcuts

Magento isn’t the right answer for every fashion brand, here’s the honest cut

I do not push Magento on every brand. Below: when Magento clearly wins, when Shopify is enough, and the rare hybrid case. Skim, find the one that fits, and skip the deep dive if you already know your answer.

  • Stick with Shopify if

    Stick with Shopify if…

    • Catalog under 2,000 SKUs and stable
    • B2B share is low (under ~15%)
    • Drops are infrequent or stockless
    • Prefer hosted simplicity, no DevOps headache
    • Ops team is 1-2 people, app-stack is acceptable
    • No complex returns automation requirement
    • No ERP / PIM / channel-manager integration burden
  • Hybrid (rare)

    Hybrid setup…

    • Shopify front for D2C / consumer drops
    • Magento back for B2B / wholesale ops
    • Justified for fashion brands selling retail + direct
    • Shared product feed via PIM (Akeneo / Pimcore)
    • Unified inventory via Shopify-Magento middleware
    • Operational complexity is real: don’t pick lightly
    • Single-platform usually wins below $25M GMV
The build process

Five steps from audit to optimised store

Audit → plan → build → deploy → stabilise. Tuned for fashion’s seasonal cadence: every drop is a tested go-live with a war-room playbook. Optional ongoing retainer through the next four seasons.

  1. 01

    Audit

    SKU schema review (size/color/fit/season axes), performance baseline (Lighthouse, INP, LCP at 99th percentile), returns workflow audit (current RMA latency, refund-vs-credit split, restock SLA), channel sync state (Amazon, Faire, Joor, TikTok), B2B share + wholesale ops audit. 1 week.

    Baseline + gaps
  2. 02

    Plan

    Drops calendar (SS/AW/holiday/capsule), returns SLA target, channel priorities (which to integrate first by GMV contribution), B2B vs DTC split + visibility model, AR partner pick (Vyking / 3DLOOK / Mirror) by category, marketplace order-of-record decision. Written spec + Gantt.

    Locked scope
  3. 03

    Build

    Configurator + RMA module + drop-release scheduler + B2B catalog + channel manager wiring + Hyvä storefront + lookbook CMS pages. Built in 4-10 weeks depending on scope. Test fixtures for 1,000+ variant SKU families. Smoke test the drop-release flow on a staging clone every Friday before go-live.

    Build + UAT
  4. 04

    Deploy

    Pre-warm Hyvä + Cloudflare cache, drop-cohort QA on a 1% canary release, fallback plan if drop fails (manual cron trigger + admin override). DNS / TTL prep. Spreadsheet of every CDN purge + warmup script + go-live checklist. War room for the first drop after launch.

    Live + verified
  5. 05

    Stabilise

    Monitor returns rate by SKU + customer cohort, RMA latency, drop conversion, B2B reorder rate. Iterate on size charts, AR placement, returns reasons taxonomy. Quarterly performance audit. Optional ongoing retainer ($1.5k to $5k/mo) for continuous optimisation through the seasonal calendar.

    Optimised + iterating
Client reviews

What clients say about working with me

Public reviews on Upwork. Same person, same rate card, same playbook for every brand.

Magento work and feedback View Upwork profile

  • Illustration of Magento 2 development work for a sports footwear and hockey shop
    Sports footwear and hockey shop, Netherlands
  • Illustration of Magento 2 development work for a photo printing supplies wholesaler
    Photo printing supplies wholesaler, Netherlands
  • Illustration of Magento 2 development work for an educational toys and books shop
    Educational toys and books shop
  • Kishan has done an excellent job in a timely manner. He is very knowledgeable, has a very positive attitude, easy to communicate.

    Z. K.Magento 2 client
  • He is technically strong, approaches problems thoughtfully, and focuses on stable, long-term solutions.

    E. H.Magento 2 client
  • Kishan was a pleasure to work with! He is highly skilled, professional, and delivered outstanding results on time.

    M.Magento 2 client
  • Working with fashion brands in
  • United States
  • United Kingdom
  • Canada
  • Australia
  • Germany
  • France
  • Netherlands
  • India
Read all reviews
FAQ

Twelve questions fashion ecom leaders actually ask

Magento variant ceiling, does it really handle 10,000+ SKUs?

Yes, with the right indexing and storefront stack. The biggest fashion catalog I ship today runs ~78,000 variants across 1,200 product families and holds a 95+ Lighthouse mobile.

The model is Magento configurable + simple products with EAV attributes for size, color, fit, season, fabric. The performance gotchas:

  • Catalog product flat tables off, EAV indexed cleanly. Flat tables hurt at this scale.
  • Custom denormalised stock-status table for "in-stock by size/color" filtering, native price/stock indexers slow at 50k+ variants.
  • Hyvä theme instead of Luma. Luma re-renders the swatch picker on every interaction; Hyvä uses Alpine state and stays under 200ms INP.
  • Lazy-loaded swatch images (browser-native loading="lazy" plus IntersectionObserver fallback for the PDP swatch grid).

Shopify hits a hard ceiling at 100 variants per product (Plus: 2,000) which forces fashion brands above that into multi-product workarounds that fragment SEO and analytics. Magento has no such ceiling.

Drop-release flow, how do you avoid double-selling at midnight launches?

The classic fashion-drop bug: 8,000 customers refresh at 12:00:00 GMT, Magento takes the order, Stripe charges the card, then inventory hits zero and the second wave of customers gets “charged but out of stock.” Refunds + angry tweets.

The fix is three things wired together:

  • Stock reservations, native Magento 2.4+ feature. Inventory is reserved at add-to-cart, not at order placement. A 30-minute cart timeout releases unconverted reservations.
  • Payment-vault tokenization, cards are tokenized at the gateway (Stripe / Adyen / Braintree), not charged on add-to-cart. Charge only fires on successful order placement after stock is confirmed.
  • Cron-scheduled category visibility flip, the drop category is set to invisible until 11:59:59, then a cron flips it visible at 12:00:00. Same cron triggers a Cloudflare/Akamai purge of the homepage + category page so the cache reflects the new state instantly.

Pre-warm Hyvä cache 30 minutes before the drop, run a war-room playbook on the first launch, and have a manual cron-trigger fallback ready. I’ve shipped 80+ drops on this pattern with zero double-sells.

Returns automation, which tools integrate cleanly with Magento?

Three I’ve shipped multiple times:

  • Loop Returns, best-in-class for store-credit-first flow. Customer initiates return → Loop offers an instant store-credit bonus (e.g. +10%) to keep the revenue. Native Magento integration via official extension. Pricing: ~$0.15 per processed return + $700/mo.
  • Aftership Returns Center, better for international + multi-warehouse. Reverse-pickup label generation across 1,000+ carriers. Integrates with Aftership tracking + ParcelPanel. Pricing: ~$23/mo + per-shipment fees.
  • Returns Magic, Magento-first, lighter UX, cheaper. Best for stores under $5M GMV. Pricing: $59, $249/mo flat.

All three integrate with Magento RMA module + customer-segment-based store-credit auto-issue. The pattern that cuts processing time 70%: auto-issue store credit on intent (before the customer ships back), restock on receipt (warehouse scans tag → Magento stock-update via webhook), blacklist serial returners by email + shipping fingerprint after >3 returns in 90 days.

Bonus: photo-upload requirement for “final sale” categories deters wardrobing (people buying to wear once and return).

AR try-on for fashion, which tools work with Magento?

Different tools by category:

  • Vyking, footwear. Customer holds phone over their feet, sees the shoe in 3D. Conversion lift on PDP runs 1.5-3.4x in the data I see. ~$1.5k, $5k/mo + per-SKU 3D-asset cost (~$80 per shoe). Magento integration via product-attribute → AR-asset-URL mapping.
  • 3DLOOK / WANNA, apparel + bags. Body-scanning approach for size recommendation + virtual try-on. Cuts size-related returns ~25% in published case studies. Enterprise pricing only ($3k+/mo).
  • Mirror / Fittingbox, eyewear + watches. Camera-based face-tracking. Used by Warby Parker and most luxury watch brands. ~$2k, $8k/mo.
  • Snap AR Lens Studio, cheapest path. Build a Snapchat lens linking back to PDP. Free to build, lower conversion lift but viral channel. Magento integration is a deep-link from lens to product.

Architecturally: Magento stores the AR-asset reference as a custom product attribute. Hyvä PDP renders the AR launch button conditionally if the attribute is populated. No core changes; the AR vendor handles the rendering. AR placement matters: above the size selector for footwear, after color selection for apparel.

B2B wholesale on the same Magento as DTC, feasible?

Yes, and it’s the right architecture for fashion brands selling both retail and direct.

On Adobe Commerce: native B2B Companies module. Wholesale buyers register companies, get tier-priced catalogs, hidden trade categories, multi-step quote approvals, Net-30 invoicing, requisition lists for buyer reps, line-sheet PDF export. Same SKU pool as DTC, same checkout, totally different pricing visibility.

On Open Source: customer-group price rules + hidden categories + extensions like Aheadworks B2B Suite, Amasty Company Accounts, or Magenest B2B. Cost: ~$800, $2,500 one-time vs ~$30k+/yr for Adobe Commerce. Trade-off: native B2B is more polished, third-party is more flexible.

Either way the architecture is the same: shared inventory (one stock item per variant; both DTC and wholesale draw from it), customer-segment-based pricing (DTC sees retail price, wholesale sees trade price), hidden trade catalogs (line-sheets that DTC visitors never see), customer-group-aware checkout (Net-30 + ACH + PO-number for wholesale, card-only for DTC).

Net-30 invoicing typically routes through Apruve, Resolve, or TreviPay, they underwrite the credit and pay you on day 1, customer pays them on day 30.

Shopify vs Magento for fashion specifically, when does each win?

Honest cut, fashion-specific:

Shopify wins for fashion if: catalog under 2,000 SKUs (or 100 per product without Plus), B2B share under 15%, drops infrequent or stockless, no complex returns automation, ops team is 1-2 people, comfortable with $300, $1.5k/mo app spend. The Shopify app marketplace has decent fashion-specific apps (Klaviyo, Recharge for subscriptions, Loop, Klarna).

Magento wins for fashion if: catalog above 5,000 SKUs, B2B share above 20%, drop-release reliability matters, returns automation is a margin priority, multi-region with shared inventory, AR + lookbooks + PIM-driven catalog, ERP integration. Fashion brands typically migrate to Magento around $5M GMV when Shopify variant ceilings + app-fee accumulation start hurting.

Specific fashion ceilings on Shopify: 100 variants per product (Plus: 2,000) is the most common reason fashion brands move; the next is per-tx fees (2.4-2.9% on third-party gateways) eating ~$120k/yr at $5M GMV; the third is Shopify B2B gaps (multi-step approval workflows, complex tier pricing).

Hybrid setup, Shopify for D2C drops, Magento for B2B/wholesale, works for fashion brands selling both retail and direct, but the operational complexity is real (PIM as middleware, dual checkout, double the surface area). I only recommend it above $25M GMV with a hard B2C/B2B split.

Lookbooks + shoppable content, how do you build them?

Three patterns depending on brand maturity:

  • Hyvä shoppable-image widget, native to Hyvä themes since 2024. Drop a CMS image, add hot-spots tied to product SKUs, customer clicks → instant add-to-cart drawer. Fastest to ship, mobile-perfect. The pattern I default to.
  • Adobe Commerce Page Builder, if you’re already on Adobe Commerce, Page Builder ships with hot-spot + product-tag widgets. Slower to load than Hyvä native, but more drag-and-drop friendly for marketing teams.
  • Custom CMS pages with Magento widgets, for editorial-heavy lookbooks (think Browns, Ssense, Mr Porter). Combines product widgets, video (Cloudflare Stream / Cloudinary), animations (GSAP), and category-aware navigation. ~$3k, $15k per lookbook to build, but visually unmatched.

For Instagram-style shoppable galleries: Foursixty integrates with Magento via product feed and lets you tag products on Instagram posts that auto-render on PDP / category pages. Cuts paid-social CAC ~15-25% by leveraging UGC.

Performance note: video on PDP must be CDN-streamed (Cloudflare Stream / Cloudinary / Mux), not self-hosted MP4. A 8MB self-hosted MP4 destroys LCP on mobile.

Multi-region inventory (EU + US + UK + AU), Magento native?

Yes, via Magento Multi-Source Inventory (MSI), native since 2.3.0.

Architecture: define sources (warehouses) per region (e.g. de_warehouse, us_warehouse, uk_warehouse, au_warehouse) and stocks (shopping experiences) per region (e.g. EU stock includes DE+FR+NL+IT sources, US stock is US-only, etc.). Customer geo-routes to a stock; stock aggregates inventory from its sources; cart shows accurate availability.

The shipping piece: source-selection algorithms (priority-based or distance-based) decide which warehouse fulfills each line item. For fashion this matters because a single order can split-ship from 2 warehouses if the size is in EU but the colorway is in US, the algorithm decides whether to split-ship (faster) or wait-ship from one (cheaper).

Multi-region pricing + currency: separate store views per region. EU store view in EUR with VAT-included prices; US in USD with tax-excluded; UK in GBP. Same SKUs, different price visibility, different checkout (Klarna in EU, Affirm in US, Clearpay in UK).

Shopify Markets is similar but shares the catalog, you can’t easily hide a SKU in one market without scripting. Magento can hide products at the source/stock level natively.

Marketplace integration (Amazon, Faire, Joor, TikTok Shop), how?

Magento as the order-of-record, marketplace as a sales channel. Three integration patterns:

  • Channel manager (Channel Advisor, Codisto, Akeneo, Sellbrite), PIM/feed-based. Master catalog lives in Magento (or in Akeneo PIM), channel manager syncs product feeds out + order feeds in. Best for >5 channels. Cost: ~$400, $2,500/mo. Pattern I default to at $5M+.
  • Direct API integration per channel, for <3 high-value channels. Custom Magento module per channel: Amazon SP-API, TikTok Shop API, Faire API, Joor API. Cleaner and cheaper long-term but each channel is ~$8k, $25k of dev work.
  • App-level apps, Magento Marketplace has Amazon connector, eBay connector, etc. Cheapest but lowest-quality for fashion (poor variant handling, no GTIN auto-population, no marketplace-specific category mapping).

Fashion-specific: Faire (wholesale to indie boutiques) and Joor (wholesale to retailers) are essential for any brand with B2B share >15%. Both have decent Magento connectors. Zalando and ASOS Marketplace matter for EU; Nordstrom Marketplace for US prestige.

Inventory of truth question: pick one. If Magento → push to channels. If a PIM (Akeneo, Pimcore) → push to both Magento and channels. Mixing creates the “why is the SKU oversold?” chaos most fashion brands hit at $5M+.

Influencer + affiliate tracking on Magento, what works?

Three layers, depending on scale:

  • UTM + native Magento sales rule discount codes, for brands under $1M GMV. Each influencer gets a unique discount code (e.g. SARAH15) that auto-applies a 15% discount and tags the order. Pull the report monthly, pay per order. Cheap, ugly, works.
  • Refersion or LeadDyno, mid-tier ($89, $499/mo). Affiliates get a tracking link + dashboard, you get attribution per affiliate, payouts auto-calculated. Native Magento extensions exist for both. Best fit for $1M, $10M brands.
  • Impact, PartnerStack, Awin, ShareASale, enterprise affiliate networks. $1k, $5k/mo + 5-10% of affiliate revenue. They handle recruitment, fraud detection, and payments. For fashion, RewardStyle (LTK) is the dominant influencer-affiliate platform; integrates via product feed.

For paid influencer campaigns (vs affiliates), Aspire, Grin, CreatorIQ handle creator discovery + briefing + content rights + tracking. Magento integration is product-feed + UTM-based; campaign attribution lives in the influencer-platform UI.

Cookie-based tracking is dying (ITP, GDPR, third-party cookie deprecation). The 2026 pattern: discount-code-as-attribution + server-side conversion tracking via Magento order webhooks → Meta CAPI / TikTok Events API / Google Enhanced Conversions.

Performance, does Hyvä really matter for fashion?

For fashion, more than any other vertical. Three reasons:

  • PDPs are image-heavy, 8-15 product photos per PDP is normal in fashion. Luma + jQuery + RequireJS load all of them eagerly, killing LCP. Hyvä uses native lazy-load + Tailwind aspect-ratio classes + responsive image srcset, holding LCP under 1.5s on mobile.
  • Variant pickers re-render on every interaction, size click → color update → fit update. Luma re-runs the full PDP JS on each click (200-400ms INP). Hyvä uses Alpine.js reactive state (under 80ms INP). At 50,000 variant catalogs the difference is the customer giving up vs. completing the purchase.
  • Mobile traffic is 70-80% of fashion ecom. Core Web Vitals on mobile are non-negotiable for organic ranking on fashion head terms (e.g. “summer dresses” “men’s sneakers”).

Numbers from a recent Luma → Hyvä migration on a 12k-SKU women’s apparel store: Lighthouse mobile 42 → 96, LCP 4.1s → 1.3s, INP 320ms → 75ms. Measured conversion lift: +18% on mobile, +11% on desktop. Migration timeline: 6 weeks. ROI inside 90 days.

If you’re on Luma + 3 fashion-heavy apps and serious about ranking on category head terms, Hyvä migration is the highest-leverage spend you can make.

Cost + timeline for migration to Magento from Shopify (fashion specific)?

Pricing is a fixed written quote for your scope. Send the details on WhatsApp and I reply within one working day.

Realistic ranges for a fashion brand at $2M, $10M GMV:

  • Magento + Hyvä rebuild: Fashion-specific scope adds: configurator setup, drop-release flow, returns automation integration, AR partner integration, B2B layer if needed, PIM/channel-manager integration if needed.
  • Timeline: 8-14 weeks for a typical mid-market fashion store. Faster (6 weeks) if SKU count is small and design is preserved; longer (16-24 weeks) for B2B + multi-region in scope.
  • Hosting: $400, $1,500/mo on Cloudways / dedicated. Fashion needs over-provisioned for drop traffic spikes, assume 5-10x base traffic during a drop. CDN (Cloudflare / Akamai) mandatory.
  • Ongoing: retainer for through-season ops (drops, post-launch returns iteration, AR rollouts).

Risks specific to fashion migration:

  • Variant-product mapping is fiddly, Shopify treats “Size: M, Color: Blue” as one option pair; Magento separates size and color into independent attributes. Migration script needs to flatten + reshape.
  • Return history and store-credit balances must migrate cleanly, otherwise customers lose visible credit and complain.
  • SEO: redirects must cover product URLs (Shopify /products/<handle> → Magento /<url-key>.html) AND category URLs AND variant deep-links. Miss any of these and you drop 20-40% of organic for ~6 weeks.

Run both stores parallel for 30 days behind a feature flag, only flip DNS once redirects map ≥98% of traffic + 30 successful test orders + 1 dry-run drop. Fashion migrations done well don’t lose ranking; done badly they take a season to recover.

Free fashion consultation

Book a free 30-min fashion-Magento consultation

Tell me your SKU count, return rate, and B2B share. I’ll send a written platform-fit recommendation within 24 hours and include a 30-min calendar link if a call would help. No upsell.

Message me on WhatsApp

No form to fill. Send me a quick message. I reply during 10 AM to 7 PM IST, Monday to Saturday.

Helpful to mention

  • Current platform
  • Store URL
  • Annual GMV (USD)
  • SKU count (variants)
  • B2B / wholesale share of revenue
  • Main pain / why you’re looking at Magento

These are already in the message for you. Just add your answers.

Message me on WhatsApp

Or save my number: +91 84012 70422

Built for your trade Share your store requirements Message me