[{"data":1,"prerenderedAt":116},["ShallowReactive",2],{"content:\u002Fglossary\u002Fscunthorpe-problem":3,"ArticleBody_aqw9XDrD4PMoVYpm1AfD2U71CPTTC3ClwzgxrtbJ8I":111},{"kind":4,"path":5,"locale":6,"title":7,"htmlTitle":8,"description":9,"navTitle":7,"published":10,"updated":10,"alternates":11,"breadcrumbs":12,"indexable":20,"twin":21,"collection":22,"slug":23,"file":24,"content":25,"hub":18,"titleEm":27,"eyebrow":17,"lead":28,"cta":27,"faq":29,"faqJsonLd":42,"sources":47,"related":88,"topic":27,"jsonLdType":109,"blocks":110,"shortDefinition":28,"feed":20},"term","\u002Fglossary\u002Fscunthorpe-problem","en","Scunthorpe problem","The Scunthorpe Problem in Content Filters · Detectivision","The Scunthorpe problem is a filter blocking harmless text because a banned word hides inside it. Why it happens in every language, and the fixes.","2026-10-16T18:00:00+03:00",[],[13,16,19],{"name":14,"path":15},"Home","\u002F",{"name":17,"path":18},"Glossary","\u002Fglossary",{"name":7,"path":5},true,"\u002Fglossary\u002Fscunthorpe-problem.md","glossary","scunthorpe-problem","content\u002Fen\u002Fglossary\u002Fscunthorpe-problem.md",{"collection":26,"path":5},"glossary_en",null,"A filter blocking harmless text because a banned word appears inside it, as when AOL's sign-up filter refused the English town name Scunthorpe in 1996.",[30,33,36,39],{"q":31,"a":32},"What is the Scunthorpe problem?","It is a filter blocking or changing harmless text because a banned string of letters appears inside it. The name comes from Scunthorpe, an English town whose name contains a swear word: in a case reported in April 1996, AOL's sign-up filter would not accept it as a user's home town. It happens wherever software matches letters instead of reading words.",{"q":34,"a":35},"How do you fix the Scunthorpe problem?","You can reduce it, not remove it. Match whole words instead of parts of words, keep an allowlist of harmless words your users write, lowercase text with the rules of its language, and hold uncertain cases for a person instead of blocking them. A model that scores the whole message does not match listed strings, but it makes mistakes of its own, so measure it on your own content.",{"q":37,"a":38},"Is there a Scunthorpe problem detector?","There is no standard tool. Build a test set instead: harmless words that contain the strings on your list, the same words in capitals and typed without accents, and the misspellings your users write. Run it after every change to your filter, and add each false positive that users report. The table on this page is a place to start.",{"q":40,"a":41},"Does matching whole words solve the Scunthorpe problem?","In English it fixes cases like Scunthorpe and \"classic\". In languages whose words take endings it is not enough: swear words take endings, so lists end up matching the start of words, which catches harmless words that start the same way. In JavaScript the word-boundary pattern also treats letters such as é, ñ, ö and ü as non-letters, so a listed word can match inside a longer word or never match at all.",[43,44,45,46],{"q":31,"a":32},{"q":34,"a":35},{"q":37,"a":38},{"q":40,"a":41},[48,52,56,60,64,68,71,75,78,82,85],{"title":7,"url":49,"publisher":50,"accessed":51},"https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FScunthorpe_problem","Wikipedia","2026-10-16",{"title":53,"url":54,"publisher":55,"accessed":51},"AOL censors British town's name! (Clive Feather, The RISKS Digest, volume 18, issue 07, 25 April 1996)","https:\u002F\u002Fcatless.ncl.ac.uk\u002FRisks\u002F18\u002F07","The RISKS Digest",{"title":57,"url":58,"publisher":59,"accessed":51},"The Clbuttic Mistake: When obscenity filters go wrong (The Telegraph, 2 September 2008; Internet Archive copy)","https:\u002F\u002Fweb.archive.org\u002Fweb\u002F20200223093609\u002Fhttps:\u002F\u002Fwww.telegraph.co.uk\u002Fnews\u002Fnewstopics\u002Fhowaboutthat\u002F2667634\u002FThe-Clbuttic-Mistake-When-obscenity-filters-go-wrong.html","The Telegraph",{"title":61,"url":62,"publisher":63,"accessed":51},"SpecialCasing.txt, Unicode Character Database 18.0.0","https:\u002F\u002Fwww.unicode.org\u002FPublic\u002FUCD\u002Flatest\u002Fucd\u002FSpecialCasing.txt","Unicode",{"title":65,"url":66,"publisher":67,"accessed":51},"Word boundary assertion: \\b, \\B","https:\u002F\u002Fdeveloper.mozilla.org\u002Fen-US\u002Fdocs\u002FWeb\u002FJavaScript\u002FReference\u002FRegular_expressions\u002FWord_boundary_assertion","MDN Web Docs",{"title":69,"url":70,"publisher":67,"accessed":51},"String.prototype.toLocaleLowerCase()","https:\u002F\u002Fdeveloper.mozilla.org\u002Fen-US\u002Fdocs\u002FWeb\u002FJavaScript\u002FReference\u002FGlobal_Objects\u002FString\u002FtoLocaleLowerCase",{"title":72,"url":73,"publisher":74,"accessed":51},"Built-in types, str.lower()","https:\u002F\u002Fdocs.python.org\u002F3\u002Fbuiltins\u002Fstdtypes.html","Python Software Foundation",{"title":76,"url":77,"publisher":74,"accessed":51},"re, regular expression operations","https:\u002F\u002Fdocs.python.org\u002F3\u002Flibrary\u002Fre.html",{"title":79,"url":80,"publisher":81,"accessed":51},"Text moderation","https:\u002F\u002Fdetectivision.ai\u002Fdocs\u002Ftext","Detectivision",{"title":83,"url":84,"publisher":81,"accessed":51},"Responses","https:\u002F\u002Fdetectivision.ai\u002Fdocs\u002Fresponses",{"title":86,"url":87,"publisher":81,"accessed":51},"Service status, GET \u002Fapi\u002Fv1\u002Fstatus","https:\u002F\u002Fapi.detectivision.ai\u002Fapi\u002Fv1\u002Fstatus",[89,93,97,101,105],{"path":90,"title":91,"description":92},"\u002Fprofanity-filter-api","Profanity filter API: find swear words in ten languages without keeping a word list.","Find swear words in chat, comments and usernames in ten languages with one API call: separate flags for profanity and insults, no word list to maintain.",{"path":94,"title":95,"description":96},"\u002Fturkish-offensive-language-detection-api","Turkish offensive language","Detect insults, hate speech, racism, sexism and sexual harassment in Turkish text, and in English too, with one API call and a confidence per flag.",{"path":98,"title":99,"description":100},"\u002Ftoxicity-detection-api","Toxicity detection","Check comments and chat messages for insults, hate, harassment and self-harm in ten languages, with a flag for each kind of toxicity.",{"path":102,"title":103,"description":104},"\u002Fglossary\u002Ffalse-positive","False positive","A false positive is harmless content a moderation system flags. Why they happen, how to measure them on your own data, and how thresholds and review help.",{"path":106,"title":107,"description":108},"\u002Fglossary\u002Fcontent-moderation-api","Content moderation API","A content moderation API checks the text or images you send and says what it found and how sure it is. How requests, results, prices and decisions work.","Article",false,["Island",112],{"key":113,"result":114},"ArticleBody_aqw9XDrD4PMoVYpm1AfD2U71CPTTC3ClwzgxrtbJ8I",{"head":115},{},1792166153948]