Online sports goods store: sizes, types of sports, dimensions
The development of an online sports goods store is a collection of three different catalogs under one roof: clothes and shoes live by sizes, inventory by characteristics, exercise machines and bicycles by dimensions and separate delivery. Therefore, the work begins with the layout of your assortment into these groups, and not with the layout of the main one. By default, we set the size and color as model options, not individual products. We name the term and amount after a free audit: a store for one sport and a store for eight are different jobs.
Garden equipment store with oversized goods, measurement 07/31/2026
product pages, 3,868 categories, TTFB 840.5ms
40
Niche catalog for 300 items, measurement 08/01/2026
categories in four levels, first response 235 ms
554
Category page weight with 100 cards is the same
KB of HTML vs. 143.6 KB on the main of the same store
25–45
Development period
working days from the approval of the TK
50%
Working conditions
advance payment, two rounds of editing, 30-day warranty period
What's included
Complete list of work and what you get as a result
A catalog with two entrances - by product type and by sport: the buyer enters from the side from which he thinks.
Filter by size, brand, article and level of training on OCFilter with canonical on combinations - otherwise thousands of identical addresses will settle in the index.
Size and color as variants of one model: one card, one canonical, selection inside the card — the catalog is not inflated many times.
Availability by size in the card: the buyer sees what is not available before the cart, and not after payment.
Size grids of specific brands in the card plus a "how to take measurements" tip - instead of a PDF link in the footer of the site.
Inventory characteristics by separate fields — weight, material, length, maximum load: a filter and model comparison is collected from them.
Marking of overall items and separate delivery conditions in the card and basket: the buyer learns about the rise to the floor before ordering.
Sets and accompanying items: mat and gloves for the simulator, helmet, pump and lock for the bicycle.
Seasonal selections that switch in the admin: categories and addresses remain in place, what is above changes.
Checkout with payment by card, payment in installments and post-payment; Nova Poshta, Ukrposhta, Meest Express, self-delivery.
Technical SEO and machine markup: CNC, canonical on variants, unique title, sitemap without duplicates, JSON-LD Product, Offer, AggregateOffer, BreadcrumbList.
Transfer: access, written instructions, administration meeting with the manager. 50% advance payment, two rounds of edits at the design stage, warranty period of 30 calendar days.
When this service isn't right
What's not included — so there are no surprises at delivery
Subject and studio shooting of equipment
Compilation of dimensional grids of different brands as content work is a separate service
Logistics of oversized shipments as an operational process
Post-launch advertising
Hosting, domain, acquiring
Who it's for
Situations where this service delivers results
Scenario 1 of 5
Trade equipment for several sports at once
One shopper searches for "running shoes," the other searches for "everything for tennis." These are two different entrances to the same catalog, and the store should keep both: a tree by product type plus picks by sport on top.
We'll review your situation in a free audit
Scenario 2 of 5
Half of the catalog is clothes and shoes with sizes
The main thing is decided here: the size is a variant of the model or a separate product. The decision depends on the number of addresses, the import scheme and how many edits the manager makes when the price of the model changes.
Scenario 3 of 5
In the catalog there are exercise machines, bicycles, tennis tables
An oversized item does not go by common carrier, and the buyer should find out about it in the card, not at the last step of the checkout. This is where the installment plan lives: it is needed more often on expensive inventory than on T-shirts.
Scenario 4 of 5
Next to the equipment, you sell sports nutrition
This is the fourth logic in the same store: taste and packaging as options, expiration date in the remains, not in the description. It will not work to start food in the same fields as inventory.
Scenario 5 of 5
The assortment is arranged by season
Skis lie for half the year, bicycles for the second half of the year. We need a mechanism that changes the main and first screens of the categories without rescanning — and does not remove the addresses, because it will not work to return them to the search in one season.
Free audit of sports assortment
Sporting goods are several different stores in one: clothes live by sizes, inventory by characteristics, exercise equipment by dimensions. The audit breaks down your inventory into these groups and shows how much work is in each.
What we measure
Assortment groups and rules for eachHow many clothes and shoes with sizes are in the catalog, how many inventory with characteristics, how many overall items. Each group requires its own card logic, and the number of groups determines the amount of work.
Dimensional data statusWhether the size is shown in a separate price field and whether the grids of different brands are combined. If the size is sewn into the name with a string, it has to be retrieved by a parser — this is a separate stage with its own term.
How many addresses will your directory giveWe calculate in two scenarios: the size as a model variant and the size as a separate product. The difference is tenfold, and it solves everything else — import, site map, manager work.
Dimensions and deliveryWhat items are not covered by a regular carrier and what are the rules for them. The conditions should be on the card: in the garden equipment store we measured, the self-pickup point at the checkout is marked as closed from March 2026 - the buyer will learn about it already in the registration.
Page weight and speedWe measure the main, category and card separately. A benchmark from our measurement: in a niche store with 300 items, the main one weighs 143.6 KB, and a category with 100 cards weighs 554 KB, which is four times more.
SeasonalityWhat part of the assortment is sold only half a year. This determines whether a mechanism to quickly switch the main and categories between seasons is needed, or whether a manual edit twice a year will suffice.
What you get
Assortment document: groups of goods, state of dimensional data, list of overall items.
The scheme of the catalog with two inputs - by product type and by sport - and the place of filters in it.
The figure of the future catalog in both scenarios of starting the dimensions and the evaluation of the work on the assembly of the models.
A conversation for 30–40 minutes, where we go through the document point by point.
Timeline: 2-4 working days from the moment we received the price and website address
Why is it free
Because in sporting goods, the estimate misses precisely on the dimensions: what looks like a catalog of two thousand items, after the layout by dimensions, becomes twelve thousand combinations. You can calculate this only on your data, and it is faster to calculate than to play it safe in the estimate. The document is yours regardless of whether we continue to work together.
What's next
After the audit, we name the amount and term in stages with calendar dates, then the contract, invoice and act. If it becomes clear from the numbers that you do not need the store now, you will hear it in the first email.
Short form: your contact and site URL
Contract, act and 30-day warranty
Every project gets a written contract: scope, deadlines, amount, acceptance procedure. After delivery — act and invoice, then 30 calendar days of warranty.
Sole proprietor & bank transfer
The contractor is a registered sole proprietor. Payment by invoice with closing documents.
Rights & access — yours
Code, design and materials transfer to you after full payment. Domain, hosting, repository and analytics are registered to you.
Client portal instead of email chains
During the project you get access to a portal: contracts, invoices, acts and project status in one place.
European clients
Among our work — projects for Norway, Bulgaria, Moldova and Spain.
Verifiable numbers
Every case in the portfolio comes with a link to a live site and a technical measurement.
Audit first, then pricing
There is no price list on the site intentionally: the scope of the same work differs multiples between clients.
We say "no" when unsure
If the task isn't ours or the deadline is unrealistic — we tell you upfront.
What affects the price
Why two seemingly identical tasks are priced differently
How many assortment groups are in the catalogOne sport shop is one card logic. Clothes, shoes, equipment, simulators and food together - five sets of fields, five sets of filters and five delivery scenarios.
Dimensional data statusThe price, where the model, size, color, price and balance are in separate columns, is filled with imports for the day. The price, where the size is sewn into the name ("Alta sneakers 42 blue"), has to be parsed with a parser, and the brand grids have to be built by hand.
Number of variants within the modelTwo thousand models in six sizes and three colors are thirty-six thousand combinations with their own residuals. Import volume, sitemap size, and build time are calculated from this number, not from the number of models.
Overall itemsEach individual delivery type is a rule in the checkout, a test order and a text in the card. Exercise machines and bicycles also add an installment: a module plus a test of how it behaves in a mixed basket.
Payment, delivery and balance accountingEach payment method and carrier is a separate module and order run. Balances at the option level are almost always drawn from the accounting system, and this is already an exchange with a schedule, not a widget in the checkout.
Seasonal windowLaunching two weeks before the start of the season is more expensive: the project rises in the queue, and approvals must be made in one working day. Imports with expanded dimensions are not compressed by the accelerated queue.
Cases
Tasks and results in numbers — all metrics measured by us
online store of tactical and military equipment, catalog of over 50,000 items
Task
Keep a variety of equipment in one store — body armor, clothing, shoes, backpacks, optics — with filtering by characteristics. The task is of the same nature as the multisport catalog.
Solution
OpenCart 3 by Cloudflare, two language versions, nine types of JSON-LD on the main. Checkout includes online card, cash on delivery, cash on delivery, non-cash payment and installments.
Result
54,302 products and 635 categories. The volume was verified by two methods: the sitemap-index of 32 product files gives 110,096 addresses in two languages, the regular search — 54,501–54,600 positions, a discrepancy of 0.4%. With such a directory, the first server response is 413.8 ms, the HTML weight is 421.5 KB. Defect found: hreflang declared as uk-UA and uk-RU instead of ru-UA. Measured on 07/31/2026.
online store of garden equipment and spare parts with oversized products
Task
Sell equipment that does not go by regular parcel, together with small spare parts - and give the buyer installments for expensive items.
Solution
An OpenCart store with a sitemap divided into submaps. Eight payment methods, including cashless with VAT and payment in installments from monobank. Delivery by Nova Poshta, Meest Express and Rozetka Delivery.
Result
55,321 product pages in the site map (18 submaps of 3,000 addresses plus 1,321) and 3,868 categories — 59,189 addresses in total. First server response 840.5ms at 454.5KB HTML: Slowest response of the lot, and for 55k items this is expected. A defect was found: the self-pickup point in the checkout is marked as closed from 03/23/2026 - the buyer sees an invalid option in the basket. Measured on 07/31/2026.
niche store of irrigation equipment with a catalog of 300 items
Task
Collecting a narrow technical catalog where the items are visually the same and differ only in characteristics is the same story as with tennis rackets or dumbbells of the same row.
Solution
OpenCart 3 by nginx with brotli compression, OCFilter in categories, one-click ordering. Checkout was checked with a real order: two carriers and six methods of delivery, three methods of payment.
Result
300 products in 40 categories at four levels of nesting — confirmed by two methods, 0% discrepancy. First server response 235ms, full download 262ms. The main page weighs 143.6 KB without compression and 22.5 KB in brotli, and the category page with a hundred products is 554 KB: the weight is in the cards, not in the theme. Measurement 01.08.2026.
Did not find your case?
Describe how it works on your side — we will tell you whether “Development of an online sporting goods store” fits and what it means in your situation. No brief and no call: one question, one answer.
Process steps
Transparent stages with approval at every step
Total duration:25–45 days
1
Assortment audit and decision on options
2-4 working days
We divide the price into groups, count the models and combinations, look at the current site, if there is one. The output is the number of the future catalog in both scenarios and the decision in which of them we go.
2
TK and directory structure
4-6 working days
A tree by product type, selections by sport, a set of attributes for a filter, card fields for each group, canonical rules on variants. We fix it in writing: it is expensive to replay it after the layout.
3
Design
5-9 working days
Main, category, card with size selection, grid table, cart, checkout with overall delivery. Right here, we set the target weight of the page — a category with a hundred cards is the easiest to turn into half a megabyte of markup.
4
Assembly of the store
7-11 working days
Theme layout, catalog and filter, variants with separate balances, dimension mark, kits and related items, admin roles, payment, shipping and returns pages.
5
Catalog import, sizes and availability
5-9 working days
Mapping price fields, test filling, building models from individual cards, binding dimensional grids to brands, setting balances at the variant level, and comparing the number of cards using two methods.
6
Integrations, markup, testing, transfer
2-6 working days
Payment and carriers, installments, GTM and GA4, JSON-LD with Product and AggregateOffer, site map, end-to-end order flow from size selection to TTN, administration process with the manager.
Technologies & integrations
What we build on and what it connects to
Stack
OpenCart 4.x by default: options, attributes and imports are in core
OpenCart 3.x — when the critical module exists only under three; we fix the version in the TK
OCFilter to filter by size and characteristics. Limitation: multiplies addresses combinatorially, and without canonical it is thousands of identical pages in the index
PHP and MySQL. Limitations: tens of thousands of combinations require separate work with indexes and category cache
nginx, HTTP/2, WebP, and lazy image loading: In the image category, images outweigh all other page code
JSON-LD Product, Offer, AggregateOffer, BreadcrumbList. Limitations: Markup does not rank or obligate Google to show the snippet
Exchange with accounting system for variant-level balances is a separate scope of work, not an out-of-the-box module
Integrations
LiqPay
WayForPay
monobank
payment in installments
postpaid
Nova Poshta
Ukrposhta
Meest Express
self pickup
Google Tag Manager
GA4
Google Merchant Center
Meta Pixel
Instagram
TikTok
Catalog by product type vs. catalog by sport
How this option differs from the alternative
Tree by sportOur approach
A buyer who knows the productmust first choose a sport, and sneakers lie in three sections at onceimmediately enters "sneakers" and filters by size
A buyer who chooses a sportgets exactly where he wanted - this is the real advantage of such a schemecomes from the "everything for running" selection collected by a filter on top of the tree
A multi-sport itemor duplicate card or product in multiple categories with address competitionone card, several selections
Number of categoriesgrows exponentially: in the garden equipment store we measured, there are 3,868 categoriesis kept within a few tens
Seasonal switchingthe categories themselves have to be moved, and this is the movement of addressesthe composition of the selections changes, the tree remains
Our recommendationthe sport is the filter facet and planting selections over the treemain tree — by product type
What we need from you
We can't start without this — best to prepare in advance
1List of items with sizes, colors and characteristics in machine form - a table, not a photo of the price.
2Size grids of the brands you work with.
3The list of overall items and their delivery conditions is your operational reality, we cannot invent it for you.
4Decisions on how to group the catalog: by sport or by product type. It is approved at the audit and fixed in the TK.
5Access to hosting and domain or agree to choose hosting for you.
6One person with the right to approve the directory structure and layouts.
If something is missing — let us know, we'll help you gather it or do it as a separate task.
FAQ
Most frequently asked questions — with concrete answers
Should each size be a separate product?
By default no: size and color are options of one model, one card, one canonical, selection within the card. Otherwise, the catalog grows exponentially: two thousand models in six sizes and three colors give thirty-six thousand addresses, each of which needs a description and a place on the site map. It makes sense to start separate addresses point by point - for those models and sizes for which there is really a search demand. The decision is made at the audit of your price, because it is more expensive to repeat it after launch than to do it right away.
How to reduce returns due to size?
Three things, and all of them are done at the development stage: a brand-specific grid in a card, not a general table on a separate page; a tip on how to take measurements; an honest mark when the model is small or large in size. Fair limit: we will not name the specific percentage of return reduction - it depends on the pad, brand and audience, and we do not have our own measure of this indicator. We remove the technical cause of the error, not promise a number.
We have simulators, they do not go by regular delivery
Then the overall items are indicated by a sign in the catalog, and their conditions are shown in the card and in the basket - before the payment step. The practice of hiding it on the "shipping and payment" page means that the buyer is the last to know about the lift, and the order remains incomplete. Technically, it's a separate shipping method at checkout that's enabled by product feature, plus a mixed cart rule where dumbbells and a t-shirt are next to each other.
Make a catalog by sport or by product type?
Our recommendation: the main tree is by product type, and the sport is the filter facet and planting selections on top of the tree. The reason is simple: half of the equipment lives in several sports at once, and with a tree by sport, the same pair of sneakers either duplicates or competes with itself for the address. How many categories the multiplication gives can be seen in the garden equipment store we measured: 3,868 categories on 55,321 product pages. It is no longer possible to control such a tree by hand.
Is it possible to show availability by size?
Yes, and it should be done right away, not "in the second queue". The buyer sees in the card what sizes are available now, and does not waste time choosing the missing one. Technically, this is a balance at the level of the variant, not the model, and that is why it is better to pull the availability from the accounting system. A fair limit: the exchange does not correct the accounting — if the system is re-sorted, the site will quickly and accurately show inaccurate data, and there is always a window between downloads during which the product can be bought twice.
Half of the assortment is sold for only half a year - what to do with it?
Decide by structure, and not by redesigning the site twice a year. The main and first category screens are assembled from blocks that can be switched in the admin: in winter, ski equipment goes up, in summer - bicycles and everything for water. At the same time, the categories themselves remain in place and do not lose their addresses. This is important: an address that has disappeared for half a year does not return to the search immediately, and you will meet the season with an empty page instead of a worked one.
We also sell sports nutrition - is it the same way?
No, he has his own logic. Flavor and packaging are options on the same card, but the expiration date lives in the stock: a batch with a date, not a line in the description. Plus the composition and nutritional value in separate fields, otherwise the buyer will not compare two proteins with each other. If your food is a significant part of the catalog, it is a separate unit of work, and on the audit we count it separately from the equipment.
How to sell kits?
Due to the accompanying items in the card and in the basket with real logic: a mat and gloves for the simulator, a helmet, a pump and a lock for the bicycle. The set as a separate product with its own price also works, but only if you are ready to keep its balance separately from the balance of the components. This decision is best made before development: converting kits from one mode to another after launch means overflowing balances and rewriting addresses.
How long does the development take and what is stretching it?
25-45 working days from TOR approval, six stages: inventory audit 2-4 days, TOR and structure 4-6, design 5-9, assembly 7-11, import with dimensions 5-9, integration with testing and transfer 2-6. Assembly and import are the longest. It is usually not the code that stretches the project: incomplete size grids and prices, where the size is sewn into the name of the product, eat up more time than the entire assembly of the store.
There is no price list on the site on purpose: the same work differs several times over between two clients, and a “from” figure explains nothing in that case. First a free audit — we count your pages, duplicates and speed — then we name the sum and the deadline and fix both in the contract.