How does Ghost smart search work?

For example, I’m trying to search for “proximity” which exists as a word in one my articles on a Ghost-powered portal: What is SpatialChat? | SpatialChat Center

But searching for the keyword doesn’t find anything
Does Ghost search look for words inside a Post?

Issue Summary

  • Explain roughly what’s wrong
  • What did you expect to happen?

Steps to Reproduce

  1. This is the first step…
  2. This is the second step, etc.

Setup information

Ghost Version
Ghost 5.60

Node.js Version
Node 16.17.0

How did you install Ghost?
Provide some details about your install of Ghost if you are self-hosting.

Provide details of your host & operating system
Include further details about your hosting and OS.

Database type
MySQL 5.7 / MySQL 8 / SQLite 3 / Other

Browser & OS version
Include if reporting frontend bugs.

Relevant log / error output
Copy and paste any relevant log output. Use backticks to format this into code.

Super interesting question! Searches are always tricky to implement, because of the sheer amount of data available.

Having had a look at the documentation, Ghost only uses the title and excerpts – and only builds the search index on the last 10,000 posts. In my opinion, a pretty good compromise between speed and depth of the index.

To give you some context, implementing a full-text search across all content can be quite resource-intensive. Factors like indexing every word, handling synonym recognition, and ranking results can quickly become super complex.

As a reference, in my day job, our full-text search for around 10,000 articles requires a dedicated virtual server equipped with 8GB memory and a powerful CPU.

Considering that Ghost aims to remain lightweight and accessible, focusing the search on titles and excerpts is a sensible decision, I think. It ensures efficiency without overburdening the infrastructure of small blogs :smiley:


That made sense, @jannis!

Thank you, now we will make sure that keywords are added into excerpt parts of the post for better indexing.

Apreciating the explanation

1 Like

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.