Recently Updated: 16 min read

Zero-Result Site Searches: Empty Result Pages and Fixes

Zero-Result Site Searches: Empty Result Pages and Fixes

When a shopper types "self-watering planter" into your houseplant pot store and gets nothing, two things are at stake. The shopper is stranded on an empty page, and the search URL they landed on may become one more address a crawler has to deal with. A good zero-results setup keeps the visitor moving, keeps search URLs out of the index, and turns the list of failed queries into a monthly work list for the catalogue. If you run a marketplace or shop for houseplant pots, the sections here set out the decisions in the order you will meet them.

Failed queries are a catalogue to-do list

Every zero-result query is a sentence in the shopper's own words. Read the list as feedback about how your catalogue is named, stocked and spelled, not as an error log.

BucketWhat it meansOwner
Missing productDemand exists, the range does notBuying team
Name mismatchThe shopper's word differs from listing titlesCatalogue team
MisspellingThe engine cannot cope with the typoSearch developer
Out of stockThe product exists but is hidden from resultsMerchandiser
NoiseBots, tests, accidental inputAnalyst

Sorting the list into these buckets before anybody debates solutions saves time, because each bucket has a different fix and a different person responsible.

Where the data comes from

Your own search log carries the query text, the result count and the filters in use. An analytics tool can report the same terms, and the GA4 side of that is covered in the GA4 site search report guide. The log is the better source for zero-result analysis because it records the number of results the engine returned.

Normalising before counting

Lowercase the queries, trim whitespace, merge obvious spelling variants and strip punctuation. "Self watering planter", "self-watering planter" and "selfwatering planter" are one need. Count searches and, if you can, distinct visitors. A term searched by twenty different people deserves attention before a term searched twenty times by one visitor.

ColumnPurpose
Normalised queryThe need in one spelling
SearchesVolume in the chosen month
Distinct visitorsBreadth of the need
BucketMissing, mismatch, typo, stock, noise
ActionAdd, map, fix, ignore
OwnerNamed person
StatusOpen, in progress, closed

What the empty results page should do for the visitor

The page has to say plainly that nothing matched, repeat what was searched, and offer a next step. For a houseplant pot search that could mean a spelling suggestion, links to nearby categories and a short list of popular pots.

A spelling suggestion

If the query looks like a misspelling, offer "Did you mean: self-watering planter?". Whether your engine can detect this depends on the software; the documentation has no statement on any specific search product.

Nearby categories

Link to the categories that best match the words in the query: "Planters with drainage", "Ceramic pots", "Indoor plant stands". Descriptive link text tells the visitor where each link leads.

A short, relevant selection keeps visitors in the shop. A back-in-stock or product request form turns a failed query into recorded demand. If the form collects an email address, keep the data handling to what the request needs.

Writing the page

Example scenario: the search was "self-watering planter" and returned nothing. Heading: "No results for self-watering planter". One sentence: "Check the spelling or try one of these categories." Then two category links, four pots and a link to a request form. The tone does not blame the shopper and the page ends in actions. When you print the visitor's query on the page, escape it for HTML, otherwise the search box becomes an injection route.

Filters that return nothing versus queries that return nothing

Zero results arrive by two routes. A typed query may match no product, or a shopper may stack filters on a category until nothing is left. On a houseplant pot category, "diameter 40 cm, colour terracotta, with saucer, self-watering" may leave an empty grid even though each filter alone has products.

SourceExampleRemedy
Typed query"self-watering planter" matches no titleSynonym, listing title, category decision
Filter stackFour filters leave zero potsShow counts next to filter values, dim empty options
Page number past the endA page beyond the last is requestedRedirect to the last valid page

Practical suggestion: print the result count beside each filter value and grey out the values that would give zero, so shoppers do not choose their way into an empty grid. Filter combinations also feed the URL space the 2008 post describes: it names filtering by category, price, colour, brand or style as a way a site can produce a huge number of URL combinations.

A synonym table

A synonym table closes the gap between what shoppers type and what listings say. Keep it as a maintained list that your search engine loads.

Shopper's wordListing wordingNote
self-watering planterreservoir pot, wicking planterMap to the reservoir category
plant saucerdrip trayCheck that both words are indexed
hanging plantermacrame holder, wall potReview each mapping separately

Record the date and reason beside each mapping. A mapping that fixes one query can damage another, for instance if a broad word pulls unrelated pots into the results.

Two languages

If the shop searches in more than one language, run the report per language and keep separate synonym tables. A fix in one language does not carry over to the other, and automatic cross-language mapping can create wrong matches.

Out-of-stock pots in search results

When a pot sells out and the engine hides unavailable items, the zero-result count rises for reasons unrelated to demand or naming. Decide on a policy and read the report accordingly.

Show or hide

Showing a sold-out pot, clearly marked, tells the shopper it exists and lets you offer a back-in-stock notice. Hiding keeps result lists clean but turns those searches into zero-result queries. Either choice works; pick one and record it so that analysts know why the numbers move.

Discontinued lines

If a line is gone for good, the empty results page for its name should point to the nearest alternatives. How you handle the retired product page itself is a separate decision.

Page details that are easy to miss

Escaping the visitor's query

The query appears on the page in the heading and perhaps in the search box. Encode it for the context where it is written, so that characters typed into the box are shown as text and not run as markup.

Accessibility

If the result count changes without a full page load, expose the new status to assistive technology through a status region. Make suggestion links reachable with the keyboard, and keep the heading structure orderly: one main heading with the query, then headings for suggestions and popular pots.

Privacy of the log

Search boxes receive whatever shoppers type, including personal details by mistake. Keep the log for a limited time, report on queries and not on people, and remove entries that contain contact details from exports.

Measuring the effect

Track the zero-result rate monthly, the number of repeated zero-result queries, exits from the empty page and clicks on suggested categories.

MeasureHow to read it
Zero-result rateLook at the trend; one month says little
Repeated zero-result queriesA falling count suggests synonyms and catalogue work are landing
Exits from the empty pageA falling count suggests the suggestions help
Clicks to suggested categoriesShows whether the links match what shoppers want

Seasons and campaigns move these figures, so compare equivalent periods and tie the reading to the changes you made. The documentation has no statement on the effect of this work on search rankings, and the measurable result is shopper behaviour on your own site.

Cleaning out noise

Some entries come from bots or test scripts. Remove a run of random queries from one source before counting. Counting them hides real needs behind meaningless volume.

Status code and indexing for empty results

An empty results page can return 200 with a robots meta tag of noindex, or it can return 404. The robots meta tag documentation covers noindex and has no statement about which status code an empty search page should use. Practical suggestion: if the page offers useful suggestions to the visitor, use 200 with noindex, and apply the same rule to every search results URL on the site.

How noindex works

According to Google's robots meta tag page, noindex means do not show this page, media or resource in search results. It also says the settings can be read and followed only if crawlers are allowed to access the page. If a page is blocked in robots.txt, any information about indexing or serving rules will not be found and will therefore be ignored.

ControlEffectCatch
noindex in a robots meta tagAsks that the page not be shown in resultsThe page must be crawlable
robots.txt disallowRestricts crawlingA noindex on a blocked page is not read
X-Robots-Tag headerDelivers the same rules in the HTTP responseRecommended for files where a meta tag cannot be placed

The page adds that robots meta tags and X-Robots-Tag headers are discovered when a URL is crawled. A new noindex therefore takes effect after the URL is next crawled. The documentation has no statement on how long that takes.

Infinite spaces: what the 2008 post says

Google Search Central published "To infinity and beyond? No!" on 5 August 2008. It describes an infinite space as a set of links that offers little or no new content. Crawling it can waste bandwidth, and it can keep Googlebot from fully indexing the real content of a site. A calendar with a "Next Month" link is the classic case. The post also points to sites that let visitors filter results by category, price, colour, brand or style, which produces a large number of URL combinations.

For fixes, the post suggests blocking categories of dynamically generated links with robots.txt and using the nofollow attribute on problem links, then checking that Googlebot can still reach all your content. The post is old, so read it for the concept and use the current robots meta tag documentation for indexing control. The two do not point the same way for noindex: a disallowed URL cannot show its noindex tag.

Why a search box produces an unlimited number of URLs

Each query a visitor types makes a new URL. If your pages link to those URLs, or other sites link to them, a crawler meets an unlimited supply. For a houseplant pot store, "ceramic pot", "pot ceramic", "ceramic plant pot large" and "large ceramic pot" are four URLs with overlapping results.

Filters and sorting

Filter and sort parameters multiply the problem. One category with colour, size, material and sort options can create more combinations than the shop has products. The same noindex rule can cover them, but decide separately which filter pages deserve their own clean URLs.

Options for search URLs, with their costs

OptionAimCost
No internal links to search result URLsFewer discovered URLsExternal links can still expose them
noindexKeep pages out of resultsPages must stay crawlable
robots.txt disallowReduce crawlingNoindex is not read; the URL may still be known
nofollow on problem linksDiscourage link followingNamed in the 2008 post
Fewer parameter combinationsSmaller URL spaceCan limit shoppers' options

Practical suggestion: leave search result pages crawlable, mark them noindex, and avoid linking to them from templates. Where a query reveals a real category, such as "self-watering planters", create a category page with a clean address and descriptive text rather than letting the search URL stand in for it.

Example scenario: a houseplant pot shop

Example scenario: a shop runs its monthly report and sees that "self-watering planter" returns nothing, although the catalogue holds pots with a water reservoir under the names "reservoir pot" and "wicking planter". The words differ.

The shop opens three tasks. The catalogue team maps "self-watering planter" to the reservoir category as a synonym. The content team writes a short intro for that category explaining how the pots differ. The developer adds noindex to search result pages and links the empty results page to the planters and ceramic pots categories. No ranking or sales gain is promised. The check next month is whether the zero-result count for this query has dropped.

A monthly zero-result work list

Practical suggestion: run the same steps each month.

  1. Export last month's zero-result queries and normalise them.
  2. Rank them by distinct visitors, then by searches.
  3. Assign a bucket to each of the top queries.
  4. For missing products, send a sourcing request.
  5. For name mismatches, add a synonym or fix the listing title.
  6. For misspellings, add tolerance or a suggestion.
  7. Check which of last month's tasks closed.
  8. Record the zero-result rate for the month.
RoleMonthly job
Catalogue managerMissing products and listing titles
Content ownerCategory intros and synonym proposals
DeveloperTypo tolerance, noindex, filter limits
AnalystNormalisation and rate tracking

Reading the rate

The share of searches with no result moves with the season and with campaigns, so a single month proves little. Compare the same weeks across periods and tie conclusions to the changes you shipped. The documentation has no statement on any effect of this work on rankings; what you can measure is shopper behaviour on your own site, such as exits from the empty page and clicks on suggested categories.

The following month

Example scenario, continued: the shop pulls the report again. "Self-watering planter" now returns the reservoir category, while "self-watering planter with saucer" appears as a new zero-result query. The catalogue team checks whether any listing mentions an attached saucer. If one does, the title gets the word; if none does, the buying team receives a question about range. New queries will appear every month, so the aim is not an empty list. The aim is that the same query does not return twice without an answer.

What to hand the buying team

Buyers need more than a list of words. Give them the query, the number of distinct visitors, the nearest existing category and the last date the query appeared. Add any filter values that accompanied it, such as size or material, because a repeated query with the same filters describes a concrete product. A short monthly note with the top five missing products is easier to act on than a spreadsheet of five hundred rows.

Keeping the clean category pages honest

When a repeated query becomes a category page with its own address, give it real content: a short introduction, the pots that belong in it and links to neighbouring categories. A page that exists only to catch a query, with no products or no explanation, repeats the thin pages the report was meant to help you avoid. If the demand is real but the range is not, hold the page back until stock exists.

Decision rule: what to do with a zero-result query

  1. A misspelling goes to the search developer for tolerance or a suggestion.
  2. A shopper word that differs from a listing title goes to the catalogue team for a synonym or a title fix.
  3. A repeated query with no matching product goes to the buying team.
  4. An out-of-stock product needs a deliberate choice between showing and hiding it.
  5. Noise leaves the report.
  6. In every case the empty page offers a next step and the search URL carries noindex.

Sorting one week of failed queries

Practical suggestion: take the week's failed queries and give each one a single label from the decision rule, then count the labels. The count tells you where the effort goes.

LabelTypical signWho acts
SpellingClose to a real product wordSearch configuration
SynonymA shopper word the titles never useCatalogue editor
Missing productRepeats across weeks with no matchBuying team
Out of stockProduct exists but is hidden from resultsSearch owner and catalogue
NoiseRandom strings, pasted textRemove from the report

If most labels land in one row, fix that row first. A report dominated by "synonym" points at titles, while one dominated by "missing product" belongs on the buying team's table.

Checklist

  • Zero-result queries are exported monthly and normalised.
  • Each top query has a bucket, an action and an owner.
  • The empty page offers a suggestion, nearby categories and a request path.
  • Search result URLs carry noindex and are not blocked by robots.txt.
  • Templates do not link to arbitrary search URLs.
  • Filter and sort combinations are limited.
  • Real category needs get a clean category page.
  • Visitor input is escaped on the results page.

Mistakes to avoid

Blocking and noindexing the same URL

Disallowing a URL in robots.txt hides its noindex tag from the crawler. Pick the control that matches the goal.

Treating a 2008 post as current policy

The post explains the concept. For indexing control, rely on the current robots meta tag documentation.

An empty page with no way forward

A page that says only "no results" ends the visit. Add suggestions, categories and a request path.

A page for every failed query

Creating a category page for every query rebuilds the infinite space by hand. Create one only for a repeated query that describes a real category.

Redirecting every failed query silently

Sending the visitor to the home page without a word hides what happened. Say that nothing matched, then show alternatives.

Letting the report stay in one team

The report describes the catalogue as much as the search engine. Read it with buyers and catalogue editors.

Frequently Asked Questions

Should zero-result search pages be indexed?

Practical suggestion: no. Mark search result pages with noindex. Google's robots meta tag page defines noindex as do not show this page in search results.

Can I add noindex and block the same URL in robots.txt?

No. Google's page says a page blocked in robots.txt has its indexing rules ignored, because they will not be found. Allow crawling so the noindex tag can be read.

Should an empty results page return 200 or 404?

The robots meta tag documentation has no statement about status codes for empty search pages. Practical suggestion: use 200 with noindex if the page helps the visitor, and apply the same rule everywhere.

Is the 2008 infinite-space post still valid?

It is dated 5 August 2008 and explains the concept of infinite spaces, with robots.txt and nofollow as its fixes. Use the current robots meta tag documentation for indexing control.

Which team should own the zero-result report?

Practical suggestion: a named owner such as the catalogue manager opens the report and assigns tasks to buying, content and development.

Does fixing zero-result queries improve rankings?

The documentation has no statement on that. The measurable effect is on your own site, such as fewer exits from empty pages.

Conclusion

A houseplant pot store gets two benefits from handling zero-result searches well. Visitors who meet an empty page get suggestions, categories and a request path, and search URLs stay crawlable but marked noindex, so the shop does not hand crawlers an unlimited URL space. The monthly list of failed queries then feeds the catalogue with missing products, synonyms and spelling fixes. For the wider picture of search URLs, parameters and tracking codes, see the URL parameters, tracking codes and internal search pages guide.

The Google pages behind these decisions are To infinity and beyond? No! (Opens in a new tab) and Robots meta tag and X-Robots-Tag specifications (Opens in a new tab). If you want category intros and empty-page copy written together, take a look at our content writing service.

0 Comments

No comments yet for this article.

Post a comment

Please log in to leave a comment. Login