Typo Tolerance in Site Search: How It Works for Your Store
How does typo tolerance in site search actually work? Learn edit distance, why naive fuzzy search misfires, and why corrections must follow your catalog.
A shopper types "shampo", "moisturiser" instead of "moisturizer", or "samsng galaxy", hits search, and fully expects your store to understand. When the answer is an empty page, most shoppers don't stop to check their spelling. They leave and look for the product somewhere else. That is why typo tolerance in site search is not a nice linguistic touch; it is a sales problem. This guide explains how search engines forgive typos, and why forgiving too much hurts as badly as forgiving too little.
Why do shoppers misspell things in the first place?
Typos come from a few sources, and each needs a different treatment:
- Fast typing on phones: most searches are typed with one thumb on a small keyboard, so letters get dropped or swapped. "Serum" becomes "sreum", "cleanser" loses a letter and becomes "clenser".
- Spelling variants: British and American spellings, "face wash" vs "facewash", and in Arabic, different forms of the same letter.
- Sound-alike letters: shoppers write what they hear: س/ص or ت/ط in Arabic, "c" and "k" in English.
- Foreign brand names: shoppers often type a brand in Arabic script while the product is listed in Latin letters.
- Hard technical terms: very few shoppers can spell "niacinamide" or "hyaluronic" correctly on the first try.
How search engines tolerate typos: the idea of edit distance
The core idea is simple: count the small edits (deleting, inserting or replacing a letter, or swapping two neighbours) needed to turn one word into another. That count is the edit distance.
- "shampo" to "shampoo": one insertion, distance 1.
- "sreum" to "serum": one swap, distance 1.
- "lotion" to "potion": one replacement, distance 1, yet a completely different product.
The engine treats words within a small distance of the query as candidate matches, typically one edit for short words and two for longer ones, since two changes in a three-letter word make a different word entirely.
Arabic needs an extra step first: normalization. Differences such as أ versus ا, ة versus ه, or ى versus ي should not count as errors at all, and diacritics and decorative stretching (tatweel) should be ignored. Normalizing first keeps the typo budget for real mistakes.
Why naive fuzzy search gives wrong results
Here is where many search tools go wrong: edit distance knows nothing about your store, only that two words look alike.
Take a beauty store where a shopper types «حلب». Naive fuzzy search may treat it as valid (it is the Arabic name of Aleppo), search for it literally and find nothing. But in a beauty store the shopper almost certainly meant «حليب», milk: a milk body lotion, a goat milk cleanser. And if the store genuinely sells Aleppo soap, both should appear. The right answer changes with the catalog.
Another example: «كوفي», which is how "coffee" is written in Arabic. In a coffee shop the meaning is obvious. In a pharmacy or skincare store, the shopper may well mean the brand QV, pronounced "kew-vee", typed the way it sounds. Naive fuzzy search sees no link, since they share no letters, and doesn't know you sell QV, not coffee.
The opposite risk is just as real. A shopper who types "liner" for eyeliner typed a correct word, yet "linen" is only one letter away. If bedding shows up among the eyeliners, too much tolerance has ruined a result that was already fine.
Corrections must follow your catalog and what sells
Good correction doesn't ask "what's the closest word in the language?" but "what's the closest word in this store that the shopper most likely meant?" In practice:
- Your catalog is the dictionary: correction candidates should come from your product names, categories and brands, not from a generic dictionary.
- Don't correct correct words: if the shopper's word exists in your store and returns results, exact matches come first; fuzzy matches follow only when needed.
- What sells breaks ties: if two words are equally close to the query, the shopper most likely meant the one tied to products people actually click and buy.
- Not all typos are equal: confusing sound-alike letters or stretching a vowel is a common mistake and should "cost" less than replacing a letter with an unrelated one.
- Bridge the scripts: foreign brands need matching between Arabic and Latin spellings, so «ايفون» finds iPhone and «سامسونج» finds Samsung.
For more on what makes Arabic special, read our piece on Arabic ecommerce search challenges.
"Did you mean": showing the correction to the shopper
A silent correction confuses shoppers who see results without the word they typed, so make it visible:
- If the correction is near certain, show results for the corrected word right away, with a clear line such as "Showing results for: shampoo".
- If there are several plausible options, show "Did you mean: shampoo?" alongside results for the strongest candidate, and let the shopper switch.
- Never show an empty page when a reasonable close match exists. A shopper who sees related products keeps browsing; one who sees "No results found" usually leaves. We cover that problem in depth in our guide to zero-results searches.
Test it now: type your best sellers with a missing letter or a swapped pair and see what happens.
The cost of being too strict, and the cost of being too loose
Tuning typo tolerance is a balancing act, and both extremes have a price.
Too strict: the shopper who typed "shampo" sees an empty page though you stock dozens of shampoos. That is a lost sale, and an impression that hurts your conversion rate beyond that one visit.
Too loose: results fill up with unrelated products. A shopper who searches "liner" and sees bed linen starts distrusting your search and may conclude the product isn't there.
The practical middle ground: exact matches first, then limited fuzzy matching scaled to word length, weighted by what's in your catalog and what sells, with the correction shown clearly. The shorter the word, the more careful the tolerance should be.
How Bingo handles typos
Bingo is ecommerce search built for Arabic from day one. It installs from the Zid or Salla app store, imports your catalog automatically, keeps it in sync whenever products change, and runs a full re-sync every night. On typos specifically:
- Full Arabic normalization: أ, إ and آ read as ا; ى and ي are treated alike, as are ة and ه; diacritics and tatweel are ignored; Arabic-Indic digits are read as Western digits.
- Corrections based on your store: candidates favour words that really exist in your store and sell, so in a beauty store «حلب» becomes «حليب», and «كوفي» brings up QV products too.
- Lower cost for common confusions: mixing up س/ص, ت/ط, ذ/ز or long vowels is treated as a lighter mistake than an unrelated letter.
- Cross-script matching: «ايفون» finds iPhone, «كيوفي» finds QV, «سامسونج» finds Samsung.
- "Did you mean" and closest-match results instead of an empty page.
- Learning from shopper behaviour: when several separate shoppers search a word, find nothing, then search another word and click a product, Bingo learns the link once at least three separate sessions agree. No personal data is involved.
The merchant dashboard shows most-searched words, searches with no results, what Bingo learned, and a synonyms editor.
Next step: start with your shoppers' real typos
Typo tolerance isn't cosmetic. It is a core part of product discovery and of turning searches into sales. Start today with a short list of your best sellers, type each one with three common mistakes, and see how your store responds. If you'd like to see the difference for yourself, try the live demo, or check pricing and start a 14-day free trial on your Zid or Salla store.