Search behavior in your online store
The online store search uses different factors in and several built-in behaviors for handling search terms to return accurate and relevant results from your products, pages, and blog posts.
On this page
Considerations for online store search
Review the following considerations and requirements for search behavior on your online store.
Apps
Apps that modify your theme or that have search capabilities might impact the built-in online store search:
- If you're using a third-party search app to generate search results, then the search behaviors and capabilities of Shopify's built-in search might not apply to search results on your online store. To learn more about how your third-party search app works, contact the app's developer.
- Third-party apps that modify your theme's search template might impact search results on your online store.
- You can manage and improve your search results by managing the visibility of products, pages and blog posts, and by customizing your online store search results with the Shopify Search & Discovery app. Learn more about managing searchability and using the Search & Discovery app.
Search syntax
The following search behaviors don't apply to searches that use search syntax:
- Typo tolerance
- Predictive search
- Semantic understanding
Supported languages
Your store's primary locale affects which search behaviors you get.
Language | Typo tolerance | Search stemming | Trigram |
---|---|---|---|
English | ✔ | ✔ | |
French | ✔ | ||
Spanish | ✔ | ||
Portuguese (Brazil) | ✔ | ||
German | ✔ | ||
Dutch | ✔ | ||
Italian | ✔ | ||
Japanese | ✔ | ✔ Can support Katakana, hiragana, and kanji. | |
Danish | ✔ | ||
Swedish | ✔ | ||
Portuguese (Portugal) | ✔ | ||
Finnish | ✔ | ||
Norwegian (Bokmål) | ✔ | ||
Turkish | ✔ | ||
Romanian | ✔ | ||
Hungarian | ✔ | ||
Russian | ✔ | ||
Polish | ✔ | ||
Czech | ✔ | ||
Greek | ✔ | ||
Icelandic | ✔ | ||
Lithuanian | ✔ | ||
Slovenian | ✔ | ||
Slovak | ✔ | ||
Bulgarian | ✔ | ||
Vietnamese | ✔ | ||
Croatian | ✔ | ||
Indonesian | ✔ | ||
Latvian | ✔ | ||
Estonian | ✔ | ||
Serbian | ✔ | ||
Ukrainian | ✔ | ||
Catalan | ✔ | ||
Norwegian (Nynorsk) | ✔ | ||
Faroese | ✔ | ||
Portuguese | ✔ | ||
Albanian | ✔ | ||
Bosnian | ✔ | ||
Afrikaans | ✔ | ||
Macedonian | ✔ | ||
Armenian | ✔ | ||
Serbo-Croatian | ✔ | ||
Latin | ✔ | ||
Welsh | ✔ | ||
Gaelic | ✔ | ||
Moldovan | ✔ |
Singular and plural search terms
The online store search tries to match terms in both their singular and plural forms.
Searching for puppies
matches results containing "puppy" or "puppies".
Treating singular and plural terms as equivalent is an example of stemming, where a word is mapped to its common lemma (stem). Shopify's stemming also takes into account the common stem of different words.
Searching for body:leggings
matches results containing "leg" or "leggings".
If you want to search for a word based on partial pattern matching, then use prefix search.
Typo tolerance
The online store search includes typo tolerance, which finds correct matches for search terms that contain typos.
Search results include matches that differ from the search term by one letter or that have two letters in a different order. The first four letters of a search term need to be entered correctly for typo tolerance to take effect.
For example, search for chocollate
, will return results that have chocolate
or chocolates
in the title or description.
Typo tolerance isn't applied on all fields when creating search results. For example, chocollate
wouldn't match on any product tags of blog post tags of chocolate
. The following resource fields support typo tolerance:
Resource type | Supported fields | Products |
|
---|---|
Pages |
|
Blog posts |
|
Search syntax
Search syntax determines how search terms are treated when Shopify searches for results.
Using AND, OR and NOT operators
AND
Searching for results with the AND
operator between search terms returns results when all search
terms are in the result.
By default, all search terms are treated as having AND
between them. Searching for artichoke hearts
or
artichoke AND hearts
both yield results containing both "artichoke" and "hearts". Joining operators aren't necessary.
OR
Searching for results with the OR
operator between search terms returns results when any search
term is a result.
Searching for artichoke OR hearts
yields results containing at least one of "artichoke" or "hearts".
NOT
Searching for results without a term can be done by prefixing the term with a minus sign (-
).
Searching for artichoke -heart
matches terms with "artichoke", but not "heart".
Prefix search
Prefix search will return results where the search term matches the beginning of other terms in results. Prefix search occurs automatically on all searches.
Searching for artich
matches terms that begin with "artich", like "artichoke". This also works on the last term of a search. Searching for artichoke hea
matches terms that begin with "artichoke hea".
Phrase search
Placing a search term between double quotes (""
) searches for that exact word or phrase in one of the searchable fields.
Searching "artichoke hearts"
matches a product with the title "Can of artichoke hearts", but not a product with the title "Canned hearts of artichoke".
Searching specific fields
Add a field name with a colon to your search term to narrow your search for that term to the specified field.
For example, searching for title:artichoke
searches for titles that include the term "artichoke".
Searching for a misspelt word won't work when searching specific fields, since search looks for an exact match. For example, searching for title:artichoqe
doesn't yield any results.
Depending on the resource you're searching for (product, page, blog post), results can be based on different searchable properties.
Resource | Searchable properties | Products |
|
---|---|
Pages |
|
Blog posts |
|
Trigram
Trigram search matches any consecutive sequence of at least three characters in katakana, hiragana, and kanji. You can also search kanji in pairs. For example, you can search for "アップルグリーンラップドレス" by entering any of the following terms:
ップル
アップル
ップルグリーンラ