Marko Cvijić / Ecommerce SEO
Ecommerce SEO. At catalog scale.
Most stores do not need more content. They need the twelve thousand URLs their filters are generating to stop competing with the four hundred that actually sell. Organic search, rebuilt as a primary revenue channel - and reported in revenue, not rankings.
The problem
Paid dependency is a structural problem.
The pattern repeats across every retailer I have worked with. Revenue is real but it is rented: turn the ad spend off and the month collapses. Organic sits at a fraction of what the catalog should command, and the standing explanation is that the category is simply competitive.
It usually is not. Underneath there is a filter system generating tens of thousands of crawlable combinations, category pages with no reason to exist, product URLs that change when a variant does, an out-of-stock policy that quietly deletes earned authority, and a feed that disagrees with the site about price. The catalog is fighting itself, and the paid budget is covering the difference.
That gap is the opportunity. Organic is the only acquisition channel where the work compounds instead of resetting every time the budget does - but it has to be built at the architecture level, and it has to be measured against revenue, or nobody will keep funding it long enough to compound.
What the work covers
The catalog, the money, and the markets.
01 · Catalog & crawl
Where most of the value is trapped
Which filter combinations are allowed to be indexed, which are crawlable but not indexable, and which are closed off entirely. Decided by demand and margin, then enforced at template level so it holds after the next release.
Category and subcategory structure mapped to how people actually search rather than how the ERP happens to be organised. Every category page earning its existence, with the thin ones consolidated rather than padded with copy.
One template decision multiplied across fifty thousand products. Titles, structured data, variant handling, canonical logic and internal linking built once, correctly, instead of optimised product by product forever.
Seasonal and discontinued products handled so accumulated authority is retained instead of deleted. The single most common way retailers lose organic revenue without ever seeing it in a report.
Link equity routed to the categories that carry margin, driven by rules rather than by hand - related products, breadcrumbs, hub pages and cross-category paths that keep working as the catalog turns over.
Migrations are where organic revenue disappears quietly. Redirect mapping, template parity checks and staged verification, run before the switch - on WooCommerce, Magento or a custom platform.
02 · Revenue, not rankings
The part that keeps the work funded
Organic contribution reported per category and page type, connected to analytics and reconciled against what the business actually booked. A position report has never survived a board meeting.
Order count and average order value tracked as separate stories. A volume push that halves AOV is not growth yet - it is a market learning to buy from you, and it needs to be read as a phase.
Work sequenced by contribution, not by search volume. High-traffic categories with no margin get de-prioritised, which is an easier argument to win once the numbers are in one place.
In seasonal retail, the wrong comparison window can hide a year of progress or invent one. Like-for-like periods defined up front, so results are read against the curve the business actually runs on.
03 · Beyond your own store
Where the next tranche of demand sits
Entering a neighbouring market without cannibalising the existing one: hreflang, currency and localisation logic, and an honest read on whether the demand next door is worth the operational cost.
Feed quality governs both Shopping performance and how AI systems describe your products. Titles, attributes, availability and price kept consistent with the site - a large share of paid waste starts here.
Where marketplaces are a channel rather than a competitor, the catalog has to be legible in both places at once, with the cannibalisation measured instead of assumed.
Product and category discovery increasingly happens inside generated answers. Structured data, entity clarity and feed integrity are what decide whether your products appear there at all.
Proof
Two years, one integrated system.
Case · DIY & Garden · Agromarket Corporation · Bosnia & Herzegovina
From paid dependency to compounding organic growth.
A DIY and garden retailer with a technically capable store, stagnant sales and heavy paid-channel dependency. We took direct ownership of organic search and advised the in-house team across the faster channels, rather than spreading them thin across everything at once. Twenty-six months.
Revenue growth, Mar '24 to Mar '26
Organic visits, Q1 '26 vs Q1 '25
Impressions, Q1 '26 vs Q1 '25
Order volume growth
Phase 1 · March 2024
Baseline
Average order value 300 KM, a relatively small number of orders, and growth that had stalled. Revenue indexed at 100 for every comparison that followed.
Phase 2 · March 2025
Acquisition
Order volume up 217% and products sold up 257%, with AOV falling to 165 KM. Read on its own that looks like a downgrade. It was a market being taught to buy - revenue index 174.
Phase 3 · March 2026
Maturation
Order volume held steady while AOV recovered to 304 KM, up 84%. Customers had enough confidence to buy higher-value products. Revenue index 289 - nearly three times the baseline.
Annual · 2025 vs 2024
Full-year view
Total revenue +115%, order volume +186%, products sold +172%. Growth followed the seasonal curve rather than a straight line, which is what compounding looks like in seasonal retail.
Track record
Retail and marketplace leaders.
Consistently 50% to 165% growth in organic performance for market leaders across the region, plus the measurement layer that let each of them keep funding it.
- KupujemProdajem
- Agromarket
- Bazzar
- Dexy Co
- Obuća Metro
- Pickbox
- Mojeh
01
Tracking and revenue attribution verified before any catalog work is prioritised.
02
Indexation rules for filters decided by demand and margin, then enforced in the template.
03
No replatform or redesign goes live without a redirect map and a parity check.
04
Comparison windows fixed up front, so seasonality cannot be used to flatter a report.
05
Volume and average order value always reported separately, never blended into one number.
06
Feed and site data reconciled monthly. A price mismatch is a paid problem and an organic problem at once.
Fit
Who this is for.
A real catalog and a real dependency
Thousands of SKUs or more, meaningful revenue already flowing, and an uncomfortable share of it coming from paid. Someone senior wants organic to become a primary channel and is prepared to fund eighteen to twenty-four months of compounding rather than a quarter of content.
A quick lift before a sale
Small catalogs, or a mandate to move numbers inside one quarter. Catalog architecture pays back over seasons, not weeks. If the timeline is a quarter, paid media is the honest answer and I will tell you so on the call.