
SEO vs SEM: Which Searches to Earn and Which to Buy
SEO vs SEM is usually the wrong question. Learn what the terms really mean and how to use ads and Search Console data to decide which searches to earn or buy.
From F&B to fintech, clinics to law firms, startups to enterprise. If your customers search on Google, we make sure they find you first, not your competitors.
One specialist team, focused only on the organic rankings that put you in front of ready-to-buy Singapore customers.
A clear, sequenced path from audit to rankings. You always know what we’re doing and why it matters for your leads.

Quick answer: Ecommerce SEO is the discipline of making a product catalogue findable at scale. It differs from ordinary SEO because filters generate URLs automatically, category pages carry more commercial weight than product pages, near-identical products create duplication, stock levels change daily, and crawl budget becomes a real constraint past a few thousand URLs.
Most of what is written about search optimisation assumes a website with a stable set of pages that a human wrote on purpose. A shop does not work that way. A shop is a database with a front end, and the pages are generated. That single fact is why ecommerce SEO behaves like a separate discipline rather than the same discipline applied to a different industry: the number of URLs is a function of your filter logic rather than your editorial calendar, and the content on each one is assembled from fields rather than authored. In our ecommerce case study, three years of accumulated faceted navigation URLs had created thousands of duplicate pages on a store with 200+ product SKUs, and only 34% of its products were indexed, even though nobody had decided to create any of those extra pages. This post is the foundation piece for the rest of this cluster. It covers architecture, faceted navigation, duplication, stock handling and crawl economics, and it is written for people who own a catalogue rather than for people who own a brochure site. If you want the commercial framing instead, our e-commerce SEO service page sets out how we approach engagements, while this post is about the mechanics underneath them.
The transferable part is real. Titles, headings, internal links, page speed, structured data and backlinks all behave the same way on a shop as on any other site. Roughly two-thirds of the underlying craft carries over. It is the remaining third that decides whether a store grows or plateaus, and it has no equivalent on a normal site.
The first structural difference is that URLs are generated, not written. On a services site somebody decides to create a page. On a store, a filter combination, a sort parameter, a pagination index or a session token can each spawn a new address. The store owner never chose to publish those pages and often does not know they exist. Everything downstream of that, including crawl waste, duplication and diluted ranking signals, follows from it.
The second is that the commercially valuable page is usually the category, not the product. A shopper searching for a product type rather than a specific model lands on a listing. That is where the head demand sits, and it is the page most stores treat as furniture.
The third is that the inventory changes underneath you. Products sell out, get discontinued, come back in a new colourway, and each of those events is a URL-level decision that most platforms make badly by default.
The fourth is scale of thin content. Two hundred variants of the same t-shirt are two hundred pages that differ by one attribute. Google has to decide which one, if any, deserves to rank. If you have not decided for it, it will decide badly.
Conventional wisdom says that a bigger site ranks better because there is more of it. On catalogues we have found the opposite often enough to treat it as the default assumption: past a certain size, additional indexable URLs actively reduce performance, because attention is finite and you are spending it on filter permutations rather than on the thirty pages that make you money. Our technical SEO work on stores usually starts by removing pages rather than adding them.
Think of a store as three layers. The home page handles brand demand. Category and subcategory pages handle type demand, which is where most non-branded search volume lives. Product pages handle model demand, which is high intent but low volume and often owned by the manufacturer or a marketplace.
Most Singapore stores under-build the middle layer. A shopper searching for a general product type has no interest in one specific item yet, and the page that satisfies them is a well-organised listing with a short explanatory block, clear filtering and internal links to the relevant subcategories. What they usually get is a bare grid of thumbnails with an H1 generated from the category name and nothing else on the page.
The fix is not to bolt 800 words of filler under the product grid, which is the advice that circulates and which we would push back on. Copy placed below the fold on a listing page is read by almost nobody and is transparently there for the machine. A better structure is a concise introduction above the grid that states what the category covers and who it is for, the grid itself, and then genuinely useful supporting material such as a buying guide or sizing information further down for the minority who want it.
Subcategory depth is a judgement call that depends on demand, not on merchandising. If people search for a narrower type in meaningful numbers, that type deserves its own indexable page with its own title and its own internal links. If they do not, it should be a filter, not a page. This one decision, made product group by product group, is the single highest-leverage piece of work in a catalogue engagement, and it is the one that almost never appears as a line item in a proposal.
Keep the click depth shallow. Anything more than three clicks from the home page on a mid-sized catalogue is a signal that your navigation is organised for a warehouse rather than for a shopper. Breadcrumbs, cross-links between sibling categories and links from your best-performing content back into categories all compress that depth cheaply.
Filters are the defining technical problem of this discipline. A category with five filter groups of six options each can generate tens of thousands of valid URL combinations, and most platforms will happily serve and allow crawling of every one of them.
The result is predictable. Crawl activity spreads across permutations nobody searches for, ranking signals split between a clean category URL and forty parameterised versions of it, and the reporting becomes unreadable because traffic is distributed across addresses that should never have existed.
The decision framework is demand-based, and there are only three outcomes for any given facet. Index it, block it, or allow it to exist without indexing it. A facet earns indexing only when people search for that combination as a phrase, when you can write a distinct title and introduction for it, and when there is enough inventory behind it that the page is not near-empty.
| Facet type | Typical search demand | Recommended handling | Why |
|---|---|---|---|
| Brand within a category | High | Index as a real page with unique copy | Brand plus product type is a common query shape |
| Single colour or size | Low | Canonical to the parent category | Rarely searched as a standalone phrase |
| Price range | Very low | Block from crawling | Generates permutations with no query behind them |
| Sort order | None | Block from crawling | Same items, different sequence, zero new value |
| Two or more facets combined | Almost none | Block from crawling | Combinatorial explosion, near-empty results |
| Pagination beyond page one | None directly | Allow crawl, keep self-referencing canonical | Needed for discovery of deeper products |
| Availability or in-stock toggle | None | Block from crawling | Changes daily, unstable for indexing |
The most common mistake we correct is a blanket canonical from every filtered URL to the bare category. It feels tidy and it quietly destroys the handful of filter pages that had real demand behind them, most often the brand-within-category ones. The second most common is using a robots directive to block URLs that are already indexed, which prevents the crawler from ever seeing the instruction to remove them. Order matters: let the removal signal be crawled first, then block.
Whatever rules you set must be enforced in internal links as well. If your own navigation links to parameterised URLs that you have told Google to ignore, you are sending contradictory instructions and spending link equity on pages you have disowned.
On a normal site, duplicate content is an accident. On a catalogue it is the default state, and it arrives from four directions at once.
Manufacturer descriptions are the first. If you sell the same stocked item as thirty other retailers and you all paste the supplier text, none of you have a differentiating page. This matters more in Singapore than in larger markets because the distributor pool is small and the same paragraph genuinely does appear on every local stockist.
Product variants are the second. Colour, size, capacity and bundle variants can each generate a URL with the same description and the same images. The usual answer is one indexable page per meaningful purchase decision, with the rest handled as selectable options rather than separate addresses. A shopper searching for a specific colour is a real query, so treat the exception seriously, but do not create fifteen pages because your platform makes it easy.
Cross-listing across categories is the third. The same product reachable through two category paths produces two URLs unless the platform is configured for a single canonical product URL independent of the path taken to reach it.
Syndicated feeds and marketplace mirrors are the fourth, and this is where the Singapore context bites. Many local stores list the same catalogue on their own domain and on the large regional marketplaces. That is a sound commercial decision and we would not advise against it. What it means for search is that your own product pages compete with a much stronger domain carrying the same text, which is a strong argument for putting your original writing effort into category pages and buying guides rather than into rewriting 3,000 product descriptions you will never finish.
Prioritise description rewriting by revenue, not alphabetically. In most catalogues, a small group of products carries most organic revenue. Write those properly, with genuine specifics, local sizing or voltage notes where relevant, and honest limitations. Leave the long tail on structured attributes and good schema markup until the top of the catalogue is finished. Our e-commerce SEO results case study applies the same logic at category level: the 15 top-revenue product categories were rewritten as content-first landing pages.
No other kind of website has to decide what a page should do when the thing it describes stops existing. Handling this badly is one of the quiet causes of long-term decay on older stores.
Temporarily out of stock: keep the page, keep it indexable, and say so on the page. Removing a URL that has accumulated links and ranking history because a shipment is late is self-harm. Show the expected restock window, offer a notify-me option, and link to genuine alternatives.
Permanently discontinued with a direct successor: redirect to the successor. A 301 to the new model preserves the accumulated authority and gives the shopper what they were looking for.
Permanently discontinued with no successor: redirect to the parent category rather than serving a 404, provided the category is a sensible destination. If the product line is gone entirely and the category no longer exists, a clean 404 or 410 is the honest answer.
Seasonal products should never be deleted and recreated. Festive ranges, back-to-school lines and year-specific models accumulate signals across cycles. Keep the URL live year-round, adjust the on-page copy between seasons, and you inherit last year’s position instead of starting from zero every time.
The same logic applies to any business whose pages are tied to individual stock items rather than to services, which is why the handling described here transfers directly to listing-driven sites such as the dealership work covered in our car dealer SEO results write-up.
The failure pattern we see most is soft 404 behaviour, where the platform serves an out-of-stock page with the product removed and a message in its place, returning a 200 status for what is effectively an empty page. At catalogue scale this trains the crawler to distrust that whole URL pattern. Set an explicit rule per scenario and test it, because the default behaviour of most platforms was chosen for merchandising convenience rather than for search.
Crawl budget is irrelevant for a 40 page site and decisive for a 40,000 URL one. The practical definition is simple: there is a finite rate at which your store will be crawled, and every wasted request is one that did not go to a page you care about.
Check what proportion of crawl requests land on URLs you never intended to publish. In Search Console crawl stats, a healthy mid-sized catalogue spends the clear majority of requests on canonical category and product URLs. We regularly see stores where parameterised filter URLs take more than half of all requests, and on the worst account we have opened, useful pages received under one request in five.
Server response time is a crawl rate multiplier. Crawlers slow down on slow hosts. Improving time to first byte on a large catalogue does not just help users, it directly increases how much of your site gets seen. For Singapore stores this is partly a hosting geography decision, since a store serving mainly local shoppers on a distant origin server with no edge caching pays that latency on every single request.
Client-side rendering deserves scrutiny. If your product grid, filters or internal links only appear after JavaScript executes, discovery depends on a rendering step that is queued and not guaranteed. Server-rendered category listings and real anchor tags for pagination remain the reliable choice on large catalogues, whatever the framework documentation promises.
Those four checks sit inside the technical workstream of most catalogue engagements, and the way they are scoped is set out across our SEO services pages.
Keep the sitemap honest. Include only canonical, indexable, live URLs, split into logical files by type so you can read indexing coverage per section, and keep the last-modified dates accurate. A sitemap listing 38,000 URLs when you have 4,000 real products is a diagnostic in itself, and it is often the fastest way to find out that the filter problem exists at all.
Local realities change the priorities substantially, and imported advice written for large American retailers misleads people here.
Catalogues are smaller. A large number of Singapore stores run between 100 and 2,000 SKUs. Below roughly 500 products, crawl budget is not your problem and you should not be sold a crawl budget project. Category architecture, differentiated copy and local trust signals are where the return is.
Marketplace presence is close to universal. Most local stores of any size also sell on the large regional platforms. The strategic consequence is that your own domain has to earn the visits that the marketplaces cannot serve well: considered purchases, technical products, bundles, service and warranty, and anything where a buying guide shortens the decision. Trying to outrank a marketplace on a generic product query with the same supplier text is the least winnable fight on the board.
The market is small enough that head volumes are low. A category term with 200 monthly searches locally can be worth more than a 5,000 volume term is in a large market, because intent is concentrated and competition is shallower. Chasing regional head terms with a local delivery footprint wastes budget.
Cross-border selling is a separate technical decision. If you ship to Malaysia, Indonesia or Australia, decide deliberately between one site with clear shipping and currency information, and separate localised versions with correct language and region annotations. Half-implemented multi-region setups, where prices switch by geolocation but URLs do not, produce the worst of both outcomes: confused indexing and confused customers.
Prices belong in SGD on the page, in the markup and in the feed. Mismatches between what the page shows and what the structured data declares are a common cause of rich result loss, and they happen most often on stores that added a currency switcher after launch.
| Catalogue size | Where the return usually is | What does not matter yet | Typical SGD monthly range |
|---|---|---|---|
| Under 200 SKUs | Category copy, product differentiation, local signals | Crawl budget, log analysis | SGD 1,500 to 2,500 |
| 200 to 2,000 SKUs | Facet rules, category expansion, internal linking | Advanced feed engineering | SGD 2,500 to 5,000 |
| 2,000 to 20,000 SKUs | Crawl control, templating at scale, variant strategy | Bespoke page-by-page copy | SGD 4,500 to 9,000 |
| Over 20,000 SKUs | Log file analysis, rendering, index segmentation | Manual anything | SGD 8,000 upwards |
Field notes: In our ecommerce case study, a WooCommerce home and lifestyle store with 200+ products sat squarely in the second row of this table. Faceted navigation had generated thousands of duplicate URLs and only 34% of product pages were indexed. We blocked 14 faceted navigation parameter combinations in robots.txt, submitted a clean XML sitemap and resolved 200+ redirect chains, and indexation reached 79% by the end of Month 2. The programme then rewrote 15 category pages and rebuilt internal linking to route authority to them. By Month 9, indexation was 95%, two category pages had reached #1, and organic monthly revenue had moved from S$8,400 to S$28,600, with crawl attention back on the pages that carried the demand.
Ecommerce SEO is best understood as inventory management for search. The question is not how to add more, it is which URLs deserve to exist, which deserve to be indexed, and which deserve internal links pointing at them. Answer those three questions product group by product group and most of the other problems dissolve.
We’ve seen a catalogue-wide indexation problem masquerade as a content problem for months, with a team writing new pages while thousands of existing ones sat wrongly excluded. Our clients with the largest catalogues get the most value from a firm indexation policy applied at template level, because a rule fixed once at the template propagates to every product beneath it. We recommend auditing indexation before content on any catalogue over a few thousand SKUs, since the content work is wasted if the pages it lives on are not eligible to rank.
If you own a Singapore store, the order of work is fairly consistent. Get the facet rules right so the crawler stops wasting itself. Build the category layer properly, because that is where the non-branded demand lands. Differentiate the top few dozen products rather than all of them. Set explicit rules for stock events so the catalogue does not decay quietly. Only then worry about publishing more.
The contrarian point worth holding onto is that most catalogues need to shrink before they grow. A store with fewer, better, clearly distinct pages outperforms the same store with ten times the URLs on every account we have handled. If you want a view of which of these layers is costing you the most, an SEO audit sized for a catalogue is the diagnostic, and our B2B e-commerce results write-up shows how the same rules apply when the buyer is a business rather than a consumer.
The craft overlaps, but three things have no equivalent on a normal site. URLs are generated by filters and parameters rather than written by a person, so you can have far more pages than you intended. The most commercially valuable pages are usually categories rather than individual products. And the content changes underneath you as stock moves, which means every product needs a rule for what happens when it sells out or is discontinued. Those three realities drive most of the specialist work.
Categories, in almost every case. Category and subcategory pages capture the type-level demand that makes up the bulk of non-branded search, while product pages compete against manufacturer sites and marketplaces carrying the same description. The exception is a store selling own-brand or exclusive items, where product pages are genuinely unique and can rank strongly. Start with the ten to thirty categories that map to your highest-margin ranges, then work down.
As a working threshold, crawl budget starts to matter above roughly 5,000 crawlable URLs, which many stores reach with only a few hundred products once filters are counted. The number to look at is not your product count but your crawlable URL count from Search Console crawl stats and a site crawl. If those two numbers differ by more than an order of magnitude from your product count, you have a facet problem regardless of catalogue size.
If the outage is temporary, keep the page live and indexable, state the restock expectation, and offer alternatives and a notification option. If the product is permanently gone but has a direct replacement, redirect it to that replacement. If it is gone with no successor, redirect to the parent category where that is a sensible destination, or serve a genuine 404 if it is not. What you should avoid is serving a stripped, empty page with a 200 status.
No, and attempting it is how these projects stall. Rank your catalogue by revenue and organic entrances, rewrite the top tier properly with genuine specifics, and leave the long tail on well-structured attributes, good images and accurate product schema. In most catalogues a small minority of products carries the majority of organic revenue, so the return on the first 50 rewrites is far higher than on the next 500.
Not all of them. Facets with real search demand behind them, typically brand within a category, deserve to exist as indexable pages with their own titles and introductions. Single attribute facets like colour usually canonical to the parent. Price ranges, sort orders, availability toggles and multi-facet combinations should generally be blocked from crawling. The decision is demand-driven and should be made group by group rather than with one blanket rule.
It is not harmful in itself, and for most Singapore retailers it is commercially sensible. The implication is strategic rather than technical: your own product pages carry the same supplier text as a far stronger domain, so competing head-on for generic product queries is a poor use of budget. Put your original effort into categories, buying guides and the parts of the experience a marketplace cannot replicate, such as bundles, service and warranty.
Technical corrections such as facet control and fixing indexation of key categories can show movement within 6 to 10 weeks because you are unblocking pages that already had potential. Category expansion and content differentiation typically take 4 to 6 months to translate into revenue. A new store on a new domain should plan on 9 to 12 months before organic is a dependable channel, and should not cut paid search off before then.
It changes what is easy, not what is correct. Hosted platforms give you fast, reliable infrastructure but constrain URL structures and robots control. Self-hosted systems give you full control and hand you the responsibility for performance and security. Custom builds can do anything and frequently ship without the basics because nobody specified them. The strategy is the same across all three; the implementation route and the effort required differ considerably.
Uncontrolled faceted navigation, by a wide margin. It is invisible in the admin panel, it does not break anything a customer sees, and it quietly multiplies your site by a factor of ten or more while splitting ranking signals across addresses nobody chose to publish. The second most common is a mismatch between displayed prices and the prices declared in structured data, usually after a currency or promotion feature was added post-launch.
If you want to know how many URLs your store is actually exposing, which facets are worth indexing and where your crawl attention is going, we will run a free initial review of your catalogue and send back a prioritised list rather than a crawl export. You keep the findings whether or not you work with us. Get in touch with your store URL and rough product count, and we will tell you which of the layers in this post is costing you the most.
Natalie leads SEO strategy at Singapore SEO Agency, helping local and regional businesses build organic search programmes that drive qualified leads. She specialises in technical SEO and content-led authority building for Singapore SMEs.
Get a free SEO audit for your Singapore website — we'll show you exactly where you stand, what's holding you back, and what it would take to rank on page 1.
Get Your Free SEO Audit →
SEO vs SEM is usually the wrong question. Learn what the terms really mean and how to use ads and Search Console data to decide which searches to earn or buy.

Google Search Console login problems usually start with verification and ownership. Learn how to get in, fix access errors and offboard agencies safely.

The click through rate formula is clicks divided by impressions. Learn what each platform counts, the averaging trap and how to set it up in Google Sheets.

A click through rate means nothing on its own. Learn to compare CTR by position, query type and SERP features, and see what low CTR is really telling you.

What a google analytics certification proves, what it misses, how to verify one and the practical questions to ask before you hire a marketer or freelancer.

A domain authority checker only helps when you compare your site with the pages ranking for your searches. Learn to read Moz, Ahrefs and Semrush scores.
Fast, no obligation. We reply within 24 hrs.
Singapore’s specialist SEO agency for SMEs. We rank your business on Google — and only Google. No distractions, just results.
© 2026 Singapore SEO Agency. All rights reserved.