Migrating a cycling & bike store from WooCommerce to Shopify (2026)
How to migrate a bicycle or cycling accessories WooCommerce store to Shopify — bike spec metafields, compatibility data, size calculators, workshop services, frame size variants, and cycling store Shopify setup.
Cycling and bike stores have a mix of complete bikes (high-value, complex spec data), components (compatibility-critical), accessories (size/fit dependent), and increasingly, workshop services and maintenance packages. Each subcategory has different data needs and customer behaviours. Here's how to migrate this technical category from WooCommerce to Shopify effectively.
Product categories in a cycling store
- Complete bikes: Road, mountain, gravel, hybrid, e-bike, kids. High value ($500–$10,000+). Frame size and colour are primary variants.
- Frames: Solo frame purchase for custom builds. Size, material (carbon, aluminium, steel, titanium), geometry data.
- Drivetrain components: Groupsets, derailleurs, cassettes, chains — Shimano, SRAM, Campagnolo compatibility groups
- Wheels and tyres: Wheel size (700c, 650b, 29", 27.5"), tyre width, tubeless compatibility
- Cockpit: Handlebars, stems, bar tape. Clamp diameter compatibility critical.
- Saddles: Seat width sizing, gender-specific options
- Clothing and apparel: Jersey, bib shorts, gilet. Size and gender. Seasonal.
- Accessories: Lights, helmets (size critical), locks, bags, pumps, tools
- Workshop services: Service, build, fitting — products in Shopify for booking/purchasing
- E-bike batteries and motors: Compatibility with specific e-bike brands/models
Bike specification metafields
Complete bike specifications
product.metafields.bike.bike_type(single_line_text) — Road, Mountain, Gravel, E-bike, Hybrid, BMX, Kidsproduct.metafields.bike.frame_material(single_line_text) — Carbon, Aluminium, Steel, Titaniumproduct.metafields.bike.groupset(single_line_text) — Shimano 105, SRAM Rival, Ultegra, GRX, Deore XTproduct.metafields.bike.groupset_speeds(number_integer) — 11, 12 speedproduct.metafields.bike.wheel_size(single_line_text) — 700c, 650b, 29", 27.5"product.metafields.bike.brake_type(single_line_text) — Hydraulic disc, Mechanical disc, Rimproduct.metafields.bike.fork_material(single_line_text) — Carbon, Aluminiumproduct.metafields.bike.suspension(single_line_text) — Hardtail, Full suspension, Rigidproduct.metafields.bike.travel_mm(number_integer) — suspension travel in mm (MTB)product.metafields.bike.weight_kg(number_decimal) — bike weightproduct.metafields.bike.colour_options(list.single_line_text) — available colours across all sizes
E-bike specific specifications
product.metafields.ebike.motor_brand(single_line_text) — Bosch, Shimano EP8, Fazua, TQ, Bafangproduct.metafields.ebike.motor_nm(number_integer) — maximum torque in Nmproduct.metafields.ebike.battery_wh(number_integer) — battery capacity in Whproduct.metafields.ebike.range_km(number_integer) — approximate range in km (eco mode)product.metafields.ebike.charge_time_hours(number_decimal)product.metafields.ebike.speed_kmh(number_integer) — assist cut-off speed (25km/h EU, 32km/h US)
Component compatibility data
product.metafields.component.compatible_standards(list.single_line_text) — "Shimano 12sp HG", "SRAM XD", "Microspline"product.metafields.component.bottom_bracket_standard(single_line_text) — BSA, PF30, BB86, T47product.metafields.component.steerer_diameter(single_line_text) — "1-1/8"", "Tapered 1-1/8" to 1.5""product.metafields.component.clamp_diameter_mm(number_decimal) — for stems, seatposts: 31.8mm, 35mm, 27.2mmproduct.metafields.component.rotor_size_mm(single_line_text) — "140mm", "160mm", "180mm" for disc brakesproduct.metafields.component.axle_standard(single_line_text) — QR, 12×100, 12×142, 15×100, 12×148 Boost
Frame size variants
Complete bikes have two variant dimensions: size and colour.
- Standard size labels vary by type: Road/Gravel: XS/S/M/L/XL or 48/51/54/56/58cm. MTB: S/M/L/XL or S/M/L by reach. Kids: 16"/20"/24"/26" wheel.
- Variants: Size × Colour = variant grid. A bike in 5 sizes and 2 colours = 10 variants.
- Frame size guide: link to a sizing chart page or section on the product page. Store geometry data per size as a metafield or in product description table.
- Geometry table: reach, stack, top tube, seat tube, wheelbase — usually displayed as a table in product description (migrated from WooCommerce as HTML table)
Sold-out sizes
Bikes go out of stock by size frequently. Keep sold-out variants visible with "Notify me when back in stock" rather than hiding them — size availability is a key purchasing decision and customers comparison-shop by size across brands.
Workshop services as Shopify products
Many independent bike shops (IBS) offer in-store services. Sell these as Shopify products to streamline booking and payment:
- Service products: "Gold Service" (all bearings, cables, full clean) — sold as a product, no inventory tracking
- Build kit service: "Workshop bike build from frameset" — hourly rate or fixed price
- Bike fit: "Expert bike fit (90 minutes)" — service product
- Set product type "Service" to distinguish from physical products in reporting
- Physical delivery: disable for service products — mark as "requires pickup" or set fulfilment to "manual"
- For online booking with time slots: integrate Shopify with a booking app (BookedOut, BookThatApp)
Financing for high-value bikes
Bikes over £500/$500 frequently convert better with BNPL/finance options:
- Shop Pay Installments (US): Affirm-powered. Shown automatically on product pages for eligible orders.
- Klarna: available for UK/EU. Monthly instalments for high-value bikes.
- V12 Finance (UK): specialist cycle finance used by many UK retailers — integrates with Shopify via app
- Cycling-specific: Cycling Finance (UK) or Upgrade Bikes Finance
- Display finance representative example on product page: "From £25/month (representative APR 9.9%)"
Compatibility lookup tools
Component compatibility is a major friction point in cycling ecommerce. Customers need to know if a component works with their existing bike before buying:
- Use metafields for compatibility standards (see above)
- Compatibility filter: use Shopify Search & Discovery to filter components by standard (e.g., filter cassettes by "12-speed HG" vs "XD" vs "Microspline")
- For advanced compatibility: use a Shopify app like LimeSpot or a custom solution to build a "What fits my bike?" lookup tool via Storefront API
- Shimano and SRAM compatibility charts: link to manufacturer compatibility PDFs as a trusted reference
Shopify theme recommendations for cycling stores
| Theme | Best for |
|---|---|
| Impulse | Mid-size cycling retailers, strong promotional features, advanced filtering |
| Warehouse | Large cycling catalog, components + accessories, catalogue-style browsing |
| Broadcast | Performance-focused brand identity, hero imagery, editorial sections |
| Ride (free) | Specifically designed for outdoor/cycling — if available in the theme store |
| Dawn (free) | Workable for smaller stores but lacks advanced filtering needed for components |
Cycling store migration checklist
- Create bike specification metafields: bike type, frame material, groupset, wheel size, brake type, weight
- Create e-bike metafields: motor brand, Nm, battery Wh, range km
- Create component compatibility metafields: standards, clamp diameter, axle standard
- Configure frame size variants: Size × Colour for complete bikes
- Migrate geometry tables to HTML table in product descriptions
- Set up back-in-stock alerts for sold-out frame sizes
- Convert workshop services to Shopify products (no inventory, manual fulfilment)
- Configure BNPL: Klarna or Shop Pay Installments for bikes over £500
- Configure component compatibility filtering via Search & Discovery metafield filters
- Set up freight shipping rates for complete bikes (boxed weight 10–20kg)
- Select catalog-capable theme with advanced filtering
- Import sizes guide page linking from product pages
The transition from WooCommerce to Shopify is particularly positive for specialty bike retailers because Shopify's multi-location inventory handles the common shop pattern of an online store sharing stock with a physical retail floor. Overselling a popular bike frame size — a frequent problem on WooCommerce stores with separate online/offline inventory — is avoided when a single Shopify inventory syncs across online and point-of-sale. This alone can justify the migration for an active bricks-and-mortar bike shop.
Migrate your store with k-sync
Connect your WooCommerce store, validate your products, and push to Shopify in minutes. Free for up to 50 products.
Get started freeRelated reading
Migrating a luggage and travel accessories store from WooCommerce to Shopify (2026)
How to migrate a luggage, travel bags, or travel accessories WooCommerce store to Shopify — luggage specifications, airline compliance, TSA lock, warranty and durability claims, and luggage retail Shopify setup.
Migrating a motorcycle accessories store from WooCommerce to Shopify (2026)
How to migrate a motorcycle accessories, biker gear, or motorbike parts WooCommerce store to Shopify — helmet safety standards, CE-rated protective clothing, type approval for parts, fitment compatibility, and motorcycle retail Shopify setup.