In short and in plain language
A customer searches your shop and finds nothing. For them, shopping often ends there. The shop does not report any error.
Search shows you what customers want, in their own words. That is why it pays to look after it.
The article shows what this involves. You check which searches return no results. You add other words and spellings for products. You check whether search has current data.
We add search care to your maintenance.
Someone types three words into the search box, presses enter and reads: no results found. For the shop this is an unremarkable event with no error message, no log entry, no spike in monitoring. For the visitor it is the end of the shopping trip. Search is the shortest path from a need to an article, and it is the one place where customers tell the shop in their own words what they want. That is exactly why it is a maintenance object: a catalogue changes, vocabulary changes, and an index nobody has touched since the last relaunch slowly loses contact with the language of its customers.
Key takeaways
- Zero results are not random, they are a list. Reading it weekly produces a work list for the catalogue, synonyms and content, sorted by frequency.
- The most common causes are linguistic, not technical: spelling variants, missing synonyms, attributes that live only in body text, and questions that mean no product at all.
- Synonyms should mostly be maintained one-way. A two-way rule quickly pulls results into the list that nobody asked for.
- The search index has an age. Without watching that age, search sells yesterday's stock and prices while the product page already shows today's.
- Search upkeep becomes reliable once it has a cadence, an owner and three or four metrics in the maintenance report.
Search is the shortcut through the catalogue
Whoever uses the navigation works through the structure the shop provides. Whoever searches skips that structure and phrases the request personally. That makes search queries the most honest data source in the entire shop: they contain the words of the customer, not the words of the catalogue. The whole upkeep effort - and the whole return - lies in that difference. A shop whose search understands the language of its visitors saves each of them several clicks; a shop whose search knows only its own catalogue vocabulary loses exactly the visitors who already knew what they wanted.
How widespread the gap is shows in the ongoing benchmark of search usability in online retail: 56 percent (Baymard Institute) of the audited sites support their users' search needs inadequately. The study draws on 170 (Baymard Institute) benchmarked sites and apps. Broken down by device, 46 percent of desktop sites, 58 percent of mobile sites and 64 percent of apps (Baymard Institute) rate as mediocre or worse overall. That is not a fringe group but the majority - which means a well-maintained search box is a comparatively cheap point of difference.
What counts as search upkeep in this article
Zero results are a list, not an incident
The first step of search upkeep costs nothing but access: an evaluation of the queries that returned zero results, sorted by frequency. Nearly every shop system and every search component can produce this list; in many installations nobody reads it. Yet it is the only place in the business where customers write down, unprompted and in their own words, what they miss in the shop. Six causes typically explain most of that list, and each one leads to a different upkeep step.
Spelling and typing errors
Split instead of joined, hyphen instead of space, one transposed letter. The query is correct in substance but matches no indexed word. The remedy is a variant list, not fuzzy matching across the whole catalogue.
The synonym is missing
The catalogue says hooded sweatshirt, the customer says hoodie. Both mean the same shelf. Without a stored term pair the list stays empty although the article is in stock.
Attribute only in body text
Wall thickness, connector type or cut are described in the copy but exist in no searchable field. Searching for the attribute returns nothing, even though the text describes it.
Content question, not a product
Return period, delivery time, invoice payment: queries that mean no product. A pure product search finds nothing for them and comes across as clumsy.
Article discontinued
The product existed, the demand still does. The successor carries a different name that nobody knows. Without a pointer the search ends in emptiness.
Not in the assortment
The most honest category and the most valuable one for purchasing: documented demand, sorted by frequency, for articles the shop does not carry yet.
Synonyms, spellings and abbreviations
The biggest lever sits in the word list, and the biggest mistake is to create it once. Retail language moves: brands swap designations, technical terms drift into everyday speech, and every season adds new short forms. In the search usability benchmark these linguistic query types rank among the weakest - for abbreviations and symbols 54 percent (Baymard Institute) of audited sites show weaknesses, for use-case queries 43 percent (Baymard Institute) and for feature queries 39 percent (Baymard Institute). Six kinds of rule cover daily practice.
One-way mapping
The customer term points to the catalogue term, not the other way round. Searching for hoodie finds hooded sweatshirts - but searching for hooded sweatshirt does not suddenly return everything ever labelled hoodie. This is the default case.
Two-way equivalence
Two terms are treated as interchangeable. Sensible only where the meaning truly matches, such as mobile and cell phone. With any fuzziness the rule pulls in results that nobody asked for.
Spelling variants
Joined, split, hyphenated, with and without accents in transliteration. This list grows out of the zero-result list and needs observation rather than theory.
Units and symbols
Inches, centimetres, volts, the inch mark, an x or a cross between two measurements. Without normalisation you lose exactly the queries that sit closest to a purchase.
Stop words that carry meaning
Without, for, against: short words that search engines like to discard although they carry the sense. A query for cream without fragrance otherwise turns into a query for cream with fragrance.
Accessory relations
Spare part, battery, filter, bag: queries that mean an accessory to a main article. Without a maintained relation between the two the list stays empty although the part is in the assortment.
These rules deserve documentation, not just entry. Every line in the synonym list needs a date, a trigger and a note on which query produced it. Without that provenance the list turns into an inventory after two years that nobody dares to touch, because it is unclear which rule causes which side effect. The same care pays off twice in multilingual shops: a synonym list maintained in one language only creates exactly the gaps in the second language that the article on translation gaps in the shop describes.
One-way is the default case
The index and its age
In most shops search does not work on the database but on a dedicated index - a copy of the catalogue optimised for fast text matching. That copy trails the original by some margin. By how much is an operational figure that few people know and few people watch. As long as the refresh runs every minute, nothing shows. If it breaks, search displays week-old prices and stock levels while the product page already states the current ones - and the contradiction is noticed by customers first, not by the operator.
The connection to other maintenance topics is close. Building the index is a background process like any other and shares its failure patterns, as the article on silent job failures in cron jobs and imports describes. While the refresh runs it can put noticeable load on the database - a topic of its own in database maintenance for shops. And a search component installed as an extension belongs in the same view as every other extension, for which the plugin audit sets the frame.
# Age of the search index in seconds against the last catalogue write
LAST_CATALOGUE=$(mysql -N -B shop -e \
"SELECT UNIX_TIMESTAMP(MAX(updated_at)) FROM product;")
LAST_INDEX=$(cat /var/lib/shop/index/last_run.stamp)
echo "Index age: $(( LAST_CATALOGUE - LAST_INDEX )) seconds"
# The twenty most frequent queries without results over the last seven days
mysql -t shop -e "
SELECT term, COUNT(*) AS queries
FROM search_log
WHERE hits = 0 AND created_at > NOW() - INTERVAL 7 DAY
GROUP BY term
ORDER BY queries DESC
LIMIT 20;"
Two numbers, one signal
Eight query types, eight checks
Search upkeep becomes plannable once queries are separated by type rather than by wording. The benchmark mentioned distinguishes eight types and reports for each how many audited sites show weaknesses. That breakdown works directly as a test plan: for every type you phrase three to five example queries from your own assortment and look at what search returns. The pass takes a good hour and yields a solid baseline.
| Query type | Example from the assortment | Sites with issues |
|---|---|---|
| Exact designation | Model number, full article name | 12 percent |
| Product type | Women's jeans, coffee machine, wall shelf | 20 percent |
| Feature | Waterproof jacket in blue | 39 percent |
| Use case | Gift for coffee drinkers | 43 percent |
| Abbreviation and symbol | TV instead of television, inch mark instead of inch | 54 percent |
| Compatibility | Battery matching a device model | 44 percent |
| Symptom | Cause described instead of product | 37 percent |
| Non-product | Return period, invoice payment, contact | 66 percent |
The last type deserves particular attention because it is underestimated most often. Non-product queries score worst at 66 percent (Baymard Institute), and in usability testing 34 percent (Baymard Institute) of participants used the search field for content that is not a product at all - the returns policy, say, or unsubscribing from a mailing list. Pointing the search box exclusively at the product catalogue lets a third of its usage run into the void. The remedy is unspectacular: take content and service pages into the index and mark them out as a separate section in the result list.
The zero-result page: dead end or signpost
Even with the best upkeep a residue of queries without results remains. The question is therefore not how to abolish zero results entirely, but what the shop offers at the moment of a zero result. Here the benchmark paints a similarly unfavourable picture: almost 50 percent (Baymard Institute) of the audited sites offer no effective way to recover from a search that yields nothing. An empty page stating that nothing was found is technically correct and commercially a dead end.
A usable zero-result page answers three questions at once: what did I search for, why did nothing come back, and how do I move on. It repeats the search term visibly so that a typo becomes obvious. It offers an amended query if the search component knows a similar one. And it leads into a selection close to the request - a category, the bestsellers of the matching area, or customer service where the query was clearly a question. Technically the page belongs in the same view as other dead ends in the shop, as described in maintaining 404 pages and redirects.
- The entered term appears visibly on the page so that a typo is spotted at once.
- A corrected or broadened query is suggested where the search component knows one.
- Two to four entry points lead onwards: matching category, popular articles, new arrivals.
- Where the shop recognises a content question, the page points to shipping, returns or contact.
- The search box stays filled and focused so the second query needs no detour.
- The page returns a clean status code and is kept out of search engine indexes.
- Every call is logged with term, timestamp and device type and feeds the weekly list.
A working rhythm for search upkeep
Search upkeep rarely fails on skill and often on cadence. It is an activity without urgency: nobody calls because a synonym is missing. That is why it needs a fixed slot in the maintenance calendar, the way updates and backups have one. Five steps have proven themselves as a weekly routine and cost around an hour in a mid-sized shop.
Pull the list
Export the queries without results from the past seven days, sorted by frequency, from the shop system or the search component. Twenty lines are enough; below that the return per line drops quickly.
Classify
Every line receives one of the six causes. This classification takes seconds per line and decides who handles the case - editorial, catalogue upkeep or purchasing.
Rule or task
Linguistic causes are entered straight away as a synonym or spelling variant. Missing attributes become a catalogue task. Missing articles go to purchasing as a collected note.
Re-test
After the next index run the same queries are submitted again. Whatever matches now is done. Whatever stays empty was classified wrongly and goes back into the list.
Report
Number of queries without results, their share of all searches and the count of newly created rules go into the maintenance report - as a trend, not as a snapshot.
Export the queries without results from the past seven days, sorted by frequency, from the shop system or the search component. Twenty lines are enough; below that the return per line drops quickly.
Every line receives one of the six causes. This classification takes seconds per line and decides who handles the case - editorial, catalogue upkeep or purchasing.
Linguistic causes are entered straight away as a synonym or spelling variant. Missing attributes become a catalogue task. Missing articles go to purchasing as a collected note.
After the next index run the same queries are submitted again. Whatever matches now is done. Whatever stays empty was classified wrongly and goes back into the list.
Number of queries without results, their share of all searches and the count of newly created rules go into the maintenance report - as a trend, not as a snapshot.
After a few weeks the character of the list changes visibly. Linguistic causes decline because the word list grows. What remains is the hard core: articles the shop does not carry. That is no failure but the actual result - documented demand that carries more weight in a purchasing conversation than any assumption. Anchoring search upkeep in a maintenance contract with committed response times turns that routine into a dependable service rather than a good intention.
Metrics for the maintenance report
For the work to become visible it needs numbers. Four to six figures suffice, and all of them can be derived from the search log without building extra measuring points into the shop. What matters is the view as a trend: a single zero-result rate says little, its movement across twelve weeks says a lot.
- Share of searches without results among all searches, weekly and split by mobile and desktop.
- The twenty most frequent queries without results, with their change against the previous week.
- Number of newly created synonyms, spelling variants and pointers per week.
- Age of the search index in minutes plus the document count per run.
- Share of searches that lead to a product page view - the actual success figure.
- Number of non-product queries and their share of all searches.
The last figure is the most interesting because it points beyond search. Where queries about delivery time, returns or invoice payment accumulate, that indicates the information is hard to find in the shop. Search upkeep thus exposes gaps that really belong to navigation and service copy. The same direction shows in the observation that questions about withdrawal are regularly asked through the search box - how the corresponding element is built in and tested is described in the article on the withdrawal button in the shop.
The commercial frame makes the effort comprehensible. Gross goods revenue in German e-commerce reached 83.1 billion euros (bevh) in 2025, and revenue in mail order and internet retail rose by 10.1 percent (Destatis) in real terms over the previous year, with the federal statistical office pointing to a special effect from the restructuring of a larger company. At the same time 43 percent (Bitkom) of online shoppers call the size of the assortment and 42 percent (Bitkom) call product presentation and usability very important when choosing a shop. A large assortment that cannot be found through search feels small to a visitor - so both criteria meet precisely in the search box.
Historically the direction is encouraging. A recurring study of search in online retail measured search success of 92 percent (Nielsen Norman Group) in its 2017 round, against 74 percent in the 2011 round and 64 percent in the year 2000. The distance between that success rate and today's findings on usability is explained by the fact that a technically successful search is not yet a usable result list. The upkeep work sits exactly in between.
Legal edges of search upkeep
Search has a legal side that is rarely considered in practice. Where the result list shows an article as available that has long been gone, that concerns the essential characteristics of goods. Availability is expressly among them under Section 5 subsection 2 (UWG) of the German act against unfair competition - which makes a search index that has not completed a full run for days more than an operational matter. The same care that the article on maintaining legal texts describes for withdrawal and price statements applies by analogy to what search claims about availability.
Accessibility adds to that. Services in electronic commerce fall under Section 1 subsection 3 (BFSG) into the scope of the German accessibility act, and the search box is one of the most used controls of all. Labelling, focus order, announcing the result count to assistive technology and a zero-result page that does not carry its message through colour alone therefore belong in the same review as the rest of the shop - the article on accessibility in the shop puts that in context. How stable search stays under load is in turn a question of load testing before peak traffic, because during the Christmas season search is one of the most expensive queries in the entire system.
A search without results is not a customer mistake, it is an open task in the catalogue. Reading it hands you a pre-sorted work list every week.
It starts with an inventory: which search component runs in your shop, at what cadence is its index built, which fields are searchable, and how many queries currently run into the void? Out of that inventory comes the upkeep plan with a weekly rhythm, owners and metrics. We set up the evaluation, take over the ongoing upkeep of synonyms and attributes and watch the age of the index together with the rest of your shop monitoring - the evaluation of the logs is described in the article on log monitoring and alerting, and how all of this affects load times is shown by performance maintenance. A short conversation is enough for a first assessment.
Sources and Studies
Related Articles
WordPress security updates: what old branches still get
WordPress 7.1.2 closed a critical flaw and the fix was backported to 4.7 as a courtesy. What older branches receive, what they do not, and when to move up.
Moving Shop Servers Without Losing Orders: A Runbook
Resolvers may keep serving stale DNS answers for 1 to 3 days. How a shop moves servers without losing orders, cron jobs or payment notifications.
Hosting provider or maintenance: who patches what
Where the hosting provider’s responsibility ends and maintenance begins: a matrix across every layer of the shop, questions to ask and clear handover points.