Before Black Friday, we found real typos on online stores — “recieve”, “jewlery”, “with with”.
We checked 200 flagged words, picked at random from a scan of 598 stores. 44 were real misspellings. The rest were jargon and brand names a basic spell check doesn’t know — so the charts below count possible typos, not confirmed ones.
44 of 200 flags were real typos — clear misspellings.
A basic spell check (not AI) flagged at least one word on 51.8% of 598 stores. In the 200 we checked, 78% of flags weren’t typos — product jargon and brand names. The charts below count every flagged word.
At a glance
598 stores · up to one homepage and one product page per store · no AI in this study.
- Real typos among the flagged words we checked
- 44 of 200
- flagged words we checked were real typos
- Stores checked
- 598
- stores · 1,119 pages · 553,821 words
- Stores with at least one flag
- 51.8%
- of stores had ≥1 flag · most flagged words we checked weren’t typos
- Flags in total
- 819
- flags · 1.4 per store · 14.8 per 10,000 words
What we found
We checked 200 flagged words, picked at random, each one on its page. 44 were real typos. The other 156 weren’t: ingredients, model names, slang, and non-English words on English pages. That’s 78% false positives.
What the noise looked like (156 total)
| Pattern | Count | Examples |
|---|---|---|
| Real English, jargon or compounds the spell check didn’t know | 49 | underlayment, wicking, caseback, backend, merch, argan |
| Brand, product or model names | 42 | iphone, paypal, pinterest, skyn |
| Non-English words inside English pages | 23 | Danish, Dutch, French, Spanish words; Indian textile terms |
| Abbreviations, slang, intentional spellings | 22 | lol, idk, upto, mens/womens, sooo |
| Text split or cut off mid-word | 11 | "featu", "produ", "D elivery" |
| Code or markup leaking into text | 4 | |
| People's names | 3 | |
| Placeholder (lorem ipsum) text | 2 |
Noise rate by flag type
Same 200 flagged words; small groups, read loosely.
| Flag type | Checked | Not typos | Noise rate |
|---|---|---|---|
| Extra letter | 95 | 84 | 88.4% |
| Wrong letter | 48 | 39 | 81.2% |
| Swapped letters | 26 | 18 | 69.2% |
| Missing letter | 24 | 12 | 50.0% |
| Doubled word | 7 | 3 | 42.9% |
| All | 200 | 156 | 78.0% |
How we scored the sample
We picked 200 flagged words at random, no more than 2 per store, and looked at each one on its page. A word only counted as a real typo if it was clearly a misspelling of the English word the store meant. Anything unclear didn’t count as a typo.
Result: 78.0% weren’t typos (156 of 200 flags; 44 real typos).
- If you remove 9 duplicate flags (the same text on a store’s homepage and product page), it’s 78.5% (150 of 191).
- If you count all 6 borderline calls as real typos, it’s 75.0%.
- Our first pass, before we added filters for non-English text, placeholder "lorem ipsum" text and code leaking into page text, was 84.0% (168 of 200). The filters helped, but not nearly enough.
What that means for the numbers above
- The charts and glance numbers count every flagged word. We didn’t adjust them using the 200 we checked, and you shouldn’t either. Those 200 were capped at 2 per store, so they tell you how often a flagged word is a real typo, not how many stores have one.
- The “51.8% of stores” figure is not “51.8% of stores have typos.” It’s the share of stores where the checker flagged at least one word. Many of those stores were flagged only for jargon or brand names. Of the 200 flagged words we checked, 78% weren’t typos.
- Differences between categories and platforms are mostly noise. Jargon and brand names vary a lot by category (beauty ingredients, textile terms, vape products), so a higher flag rate can mean “more unusual vocabulary,” not “more mistakes.”
- It’s also an undercount of real typos in some places. We skipped every capitalized word to avoid flagging brand names, so typos in headings and Title Case product names aren’t counted at all. We also skipped words under 3 letters, words with apostrophes, and the store’s own name.
- Two pages per store is a small slice of any site.
Four views of the flags
The same flagged words, four ways. Category gaps are mostly vocabulary, not carefulness.
Show data table
| Category | Share with a possible typo | Stores | Sample |
|---|---|---|---|
| Jewelry | 58.8% | n = 34 stores (20 flagged) | 30 or more stores |
| Beauty | 56.8% | n = 44 stores (25 flagged) | 30 or more stores |
| Apparel | 51.6% | n = 91 stores (47 flagged) | 30 or more stores |
| Other / unclassified | 51.6% | n = 256 stores (132 flagged) | 30 or more stores |
| Health | 73.7% | n = 19 stores (14 flagged) | Fewer than 30 stores |
| Kids & toys | 66.7% | n = 15 stores (10 flagged) | Fewer than 30 stores |
| Sports & outdoor | 56.0% | n = 25 stores (14 flagged) | Fewer than 30 stores |
| Crafts & books | 47.6% | n = 21 stores (10 flagged) | Fewer than 30 stores |
| Electronics | 44.8% | n = 29 stores (13 flagged) | Fewer than 30 stores |
| Home | 44.4% | n = 27 stores (12 flagged) | Fewer than 30 stores |
| Pets | 41.7% | n = 12 stores (5 flagged) | Fewer than 30 stores |
| Food & drink | 34.8% | n = 23 stores (8 flagged) | Fewer than 30 stores |
| All stores | 51.8% | n = 598 stores (310 flagged) | Flagged words, not confirmed typos |
Flagged words, not confirmed typos
Show data table
| Platform | Share with a possible typo | Stores | Sample |
|---|---|---|---|
| Shopify | 58.9% | n = 56 stores (33 flagged) | 30 or more stores |
| WooCommerce | 53.3% | n = 323 stores (172 flagged) | 30 or more stores |
| Other | 47.1% | n = 170 stores (80 flagged) | 30 or more stores |
| BigCommerce | 52.0% | n = 25 stores (13 flagged) | Fewer than 30 stores |
| Magento | 50.0% | n = 24 stores (12 flagged) | Fewer than 30 stores |
Flagged words, not confirmed typos
Show data table
| Possible typos per store | Stores | Share of stores |
|---|---|---|
| 0 | 288 | 48.2% |
| 1 | 137 | 22.9% |
| 2 | 82 | 13.7% |
| 3–5 | 68 | 11.4% |
| 6–10 | 17 | 2.8% |
| 11–20 | 4 | 0.7% |
| 21+ | 2 | 0.3% |
Flagged words, not confirmed typos
Show data tables
| Flag type | Counted flags | Share of counted flags | Not typos, of those we checked |
|---|---|---|---|
| Extra letter | 389 | 47.5% | 88% of 95 checked |
| Wrong letter | 211 | 25.8% | 81% of 48 checked |
| Missing letter | 98 | 12.0% | 50% of 24 checked |
| Swapped letters (transposition) | 89 | 10.9% | 69% of 26 checked |
| Doubled word | 32 | 3.9% | 43% of 7 checked |
| Flag type | Flags |
|---|---|
| UK spelling | 1,398 |
| Unknown word | 1,324 |
How we ran it (and what it isn’t)
Which stores
We started from the public Tranco list of popular websites (rank 2,000 and below; very large sites and big marketplaces were excluded). We kept a site only if its homepage was in English (or didn’t declare a language), showed clear storefront signals (Shopify, WooCommerce, BigCommerce or Magento markup, an add-to-cart/bag/basket button, or product data with a price), and linked to a product page on the same site. That gave 629 stores. After fetching and filtering, 598 stores had at least one English page we could check. Ten had only non-English pages, and 21 had no page we could fetch (an error, a robots.txt block, or no text).
Each store got an automated category label (from its homepage title and description) and platform label (from its page markup). Both labels will be wrong for some stores.
Which pages
The homepage and one product page per store: 1,258 pages attempted, 1,119 checked. We dropped 28 pages as non-English.
How we fetched them
Rate-limited: one request per page, a 20-second timeout, at most 24 requests at a time spread across different stores (no more than 2 at once to any one store). The crawler identified itself with the user agent SSC-Research/1.0 (+https://sitespellchecker.com).
We ran a basic robots.txt check before fetching and skipped 14 pages that robots.txt disallowed for our crawler. That check is simple: it reads Allow/Disallow rules for all user agents and for SSC-Research, but it doesn’t handle crawl-delay, and it let pages through when a site’s robots.txt couldn’t be loaded. So we’re not claiming full robots.txt compliance, just that we checked and skipped what it disallowed.
What text we checked
Visible page text only. We removed scripts, styles, code, comments, URLs and email addresses. Navigation and footer text stayed in, so menus count. We also filtered out non-English sentences, lorem ipsum placeholder text, and lines that looked like code.
How we checked spelling (no AI)
Site Spell Checker’s product uses AI. This study didn’t. We wanted something simple that anyone can repeat, so we used a free, open-source English word list called en_US Hunspell (the same kind of spell check built into LibreOffice and Firefox). Every word was checked twice: once by our own code, which also knew a short list of common shopping words like “checkout” and “wishlist,” and once by Hunspell’s own tool. Correct British spellings were marked as UK spellings and not counted. Study tag: bf2026-typo.
What counts as a flagged word
A word both checks rejected that is exactly one letter off from a real word (two letters swapped, an extra letter, a missing letter, or a wrong letter), or the same word twice in a row (“the the”). Each flagged word counts once per page.
We also tracked two groups that are not counted in any number above: valid UK spellings like “colour” (1,398 flags) and unknown words with no close match in the word list, which are usually jargon, ingredients, slang or names (1,324 flags).
No customer data. This study used only public pages we fetched ourselves. It didn’t use any data from Site Spell Checker customers or their scans.
What this study isn’t
- Not a count of real typos. It counts flagged words, and most of the ones we checked weren’t typos.
- Not a ranking of stores. We don’t publish store names or domains.
- Not a grammar or style review. Spelling and doubled words only.
- Not a full-site audit. Two pages per store.
- Not representative of all online retail. English-language stores from one public popularity list, picked by automated rules.
- Not a test of Site Spell Checker’s AI. This was a basic spell check on purpose.
Download the data
Everything here is aggregated. No store names, domains or URLs.
- Aggregate by category and page type (CSV, 2.9 KB) Stores, pages, words and flags for each category, split by homepage and product page.
- Chart 1 data: flag rate by category and platform (CSV, 1.2 KB) Share of stores with at least one flag, per category and per platform, with small-sample markers.
- Chart 2 data: flags per store (CSV, 122 B) How many stores fell into each flags-per-store bin.
- Chart 3 data: flag types (CSV, 288 B) Counted and not-counted flags by type.
- The 200 flagged words we checked, by flag type (CSV, 193 B) How many we checked, how many weren’t typos, and the share, per flag type.
Column notes: in every file, likely_typos / likely_typos_total already include doubled words (they add up to 819). small_n_warning = yes marks groups with fewer than 30 stores. All counts include every flagged word, before we checked which were real typos.
Study tag: bf2026-typo (our internal study ID).
Last updated and how to cite
Last updated: November 2, 2026 · Data collected: November 2, 2026 · Study tag bf2026-typo
Changelog: November 2, 2026: first published.
How to cite
Site Spell Checker, "Pre–Black Friday 2026 Online Store Spelling Study" (study tag bf2026-typo), November 2, 2026. https://sitespellchecker.com/black-friday-typos
Recommended quote: "Site Spell Checker checked 200 flagged words, picked at random from a scan of 598 online stores before Black Friday 2026, and found 44 real typos (for example “recieve”, “jewlery”, “with with”); 78% weren’t typos, so the 51.8% of stores that drew at least one flag counts possible typos, not confirmed ones."
You’re welcome to reuse the charts with a link back to this page. Questions about the data: hi@sitespellchecker.com.
Check your own store. This study used a basic spell check on purpose, so it flags plenty of words that aren’t typos. Site Spell Checker’s scanner is a different tool, built for checking your own site page by page. Check your own store → · Which pages should you check first?